51 template<
typename PtrType >
52 using UPtr = std::shared_ptr< PtrType >;
54 template<
typename PtrType >
55 using Ptr = std::shared_ptr< PtrType >;
60 template<
typename PtrType >
61 using OPtr = std::unique_ptr< PtrType >;
63 template<
typename PtrType,
typename... Args >
66 return std::make_shared< PtrType >( args... );
69 template<
typename PtrType,
typename... Args >
72 return std::make_unique< PtrType >( args... );
76 template<
typename PtrType,
typename... Args >
79 return std::make_unique< PtrType >( args... );
83 #define DEFINE_PTR_TYPE( type ) typedef Ptr< type > type ## Ptr;
84 #define DEFINE_UPTR_TYPE( type ) typedef UPtr< type > type ## UPtr;
85 #define DEFINE_WPTR_TYPE( type ) typedef std::weak_ptr< type > type ## WPtr;
86 #define DEFINE_OPTR_TYPE( type ) typedef OPtr< type > type ## OPtr;
89 #define CLASS_TESTER( type ) __ ## type ## __Tester
90 #define FRIEND_CLASS_TESTER( type ) friend class CLASS_TESTER( type );
Definition: ResourcePtr.h:116
uint16_t uint16
Definition: TypesDefinitions.h:29
rttr::type ActorType
Definition: TypesDefinitions.h:48
ptrdiff_t PtrOffset
Definition: TypesDefinitions.h:37
int8_t int8
Definition: TypesDefinitions.h:26
uint64_t uint64
Definition: TypesDefinitions.h:33
int64_t int64
Definition: TypesDefinitions.h:32
uint32_t uint32
Definition: TypesDefinitions.h:31
size_t Size
Definition: TypesDefinitions.h:35
uint8_t uint8
Definition: TypesDefinitions.h:27
std::shared_ptr< PtrType > Ptr
Definition: TypesDefinitions.h:55
double TimeType
Definition: TypesDefinitions.h:39
int32_t int32
Definition: TypesDefinitions.h:30
std::unique_ptr< PtrType > OPtr
Definition: TypesDefinitions.h:61
UPtr< PtrType > MakeUPtr(Args...args)
Definition: TypesDefinitions.h:70
int16_t int16
Definition: TypesDefinitions.h:28
Ptr< PtrType > MakePtr(Args &&...args)
Definition: TypesDefinitions.h:64
UPtr< PtrType > MakeOPtr(Args...args)
Definition: TypesDefinitions.h:77