Macros

The macros such as DECLARE_MULTICAST_DELEGATE_XXX and DECLARE_EVENT. DECLARE_EVENT is considered as deprecated. All what DECLARE_MULTICAST_DELEGATE_XXX really do is creating a typedef with your delegate name and params (typedef TMulticastDelegate<ReturnType(Params)> MulticastDelegateName;). Note that ReturnType is always void.

Example:

// delegate declaration with macro
DECLARE_MULTICAST_DELEGATE_OneParam(FPTAOnEquipmentSlotAddedSignature, UPTAEquipmentSlot* /* NewSlot */)
 
// the real generated code
typedef TMulticastDelegate<void(UPTAEquipmentSlot*)> FPTAOnEquipmentSlotAddedSignature;
 

TMulticastDelegate

The default UserPolicy is FDefaultDelegateUserPolicy.