Loading...
Searching...
No Matches
14#define LK_DECLARE_DELEGATE(DelegateName, ...) \
15 using DelegateName = ::LkEngine::Core::LDelegate<#DelegateName, void __VA_OPT__(,__VA_ARGS__)>
17#define LK_DECLARE_DELEGATE_RET(DelegateName, ReturnValue, ...) \
18 using DelegateName = ::LkEngine::Core::LDelegate<#DelegateName, ReturnValue __VA_OPT__(,__VA_ARGS__)>
20#define LK_DECLARE_MULTICAST_DELEGATE(DelegateName, ...) \
21 using DelegateName = ::LkEngine::Core::LMulticastDelegate<__VA_ARGS__>; \
22 using DelegateName ## _DelegateType = ::LkEngine::Core::LMulticastDelegate<__VA_ARGS__>::TDelegate
24#define LK_DECLARE_EVENT(EventName, TOwner, ...) \
25 class EventName : public ::LkEngine::Core::LMulticastDelegate<__VA_ARGS__> \
28 friend class TOwner; \
29 using ::LkEngine::Core::LMulticastDelegate::Broadcast; \
30 using ::LkEngine::Core::LMulticastDelegate::RemoveAll; \
31 using ::LkEngine::Core::LMulticastDelegate::Remove; \