ZFFramework
 
Loading...
Searching...
No Matches
ZFCallbackWeakRef.h
Go to the documentation of this file.
1
5
6#ifndef _ZFI_ZFCallbackWeakRef_h_
7#define _ZFI_ZFCallbackWeakRef_h_
8
9#include "ZFObjectCore.h"
10
12
16zfclass ZFLIB_ZFCore ZFCallbackWeakRef : zfextend ZFObject {
17 ZFOBJECT_DECLARE_WITH_CUSTOM_CTOR(ZFCallbackWeakRef, ZFObject)
18
19public:
23 void set(ZF_IN const ZFCallback &v);
25 void set(ZF_IN const zfnullT &v);
26
27private:
28 _ZFP_ZFCallbackPrivate *d;
29 ZFListener c;
30protected:
31 ZFCallbackWeakRef(void) : d(zfnull), c() {}
32protected:
34 virtual void objectOnInit(void) {
36 }
37
38 virtual void objectOnInit(ZF_IN const ZFCallback &v) {
39 this->objectOnInit();
40 this->set(v);
41 }
43 virtual void objectOnDeallocPrepare(void);
44};
45
47#endif // #ifndef _ZFI_ZFCallbackWeakRef_h_
48
#define ZFLIB_ZFCore
used to export symbols
Definition ZFCoreEnvDef.h:30
#define zfextend
dummy macro shows class inherit from another
Definition ZFCoreTypeDef_ClassType.h:53
#define zfoverride
dummy macro shows that method override parent's method
Definition ZFCoreTypeDef_ClassType.h:58
#define ZF_IN
dummy macro that shows the param used as required input
Definition ZFCoreTypeDef_ClassType.h:184
#define zfnullT
type for zfnull, can be used for function overload
Definition ZFCoreTypeDef_CoreType.h:85
#define zfnull
same as NULL, defined for future use
Definition ZFCoreTypeDef_CoreType.h:88
#define ZF_NAMESPACE_GLOBAL_BEGIN
begin namespace ZFFramework
Definition ZFNamespace.h:97
#define ZF_NAMESPACE_GLOBAL_END
end namespace ZFFramework
Definition ZFNamespace.h:98
#define zfclass
same as class, shows that this class is a ZFObject type
Definition ZFObjectClassTypeFwd.h:38
base class of all objects
#define ZFOBJECT_DECLARE_WITH_CUSTOM_CTOR(ChildClass, SuperClass,...)
declare object which allow custom constructor
Definition ZFObjectDeclare.h:142
callback used by ZFFramework
Definition ZFCallback.h:98
virtual void objectOnDeallocPrepare(void)
called before objectOnDealloc, safe to call virtual functions here
virtual void objectOnInit(const ZFCallback &v)
init with callback
Definition ZFCallbackWeakRef.h:38
virtual void objectOnInit(void)
override this to init your object
Definition ZFCallbackWeakRef.h:34
void set(const ZFCallback &v)
set the callback
ZFCallback get(void)
get the callback
void set(const zft_zfnullT &v)
set to null
listener as ZFCallback, mostly used by ZFObject::observerNotify
Definition ZFObjectObserver.h:30
virtual void objectOnInit(void)
override this to init your object