2
3
4
5
6
7
8
9
10
11
12
13#ifndef GIMBAL_SIGNAL_CLOSURE_H
14#define GIMBAL_SIGNAL_CLOSURE_H
18#define GBL_SIGNAL_CLOSURE_TYPE (GBL_TYPEID(GblSignalClosure))
20#define GBL_SIGNAL_CLOSURE(self) (GBL_CAST(GblSignalClosure, self))
21#define GBL_SIGNAL_CLOSURE_CLASS(klass) (GBL_CLASS_CAST(GblSignalClosure, klass))
22#define GBL_SIGNAL_CLOSURE_GET_CLASS(self) (GBL_CLASSOF(GblSignalClosure, self))
24#define GBL_SELF_TYPE GblSignalClosure
29
30
31
32
33
34
35
39
40
41
42
43
44
45
46
47
62
63
64
65
#define GBL_CLASS_CAST(cType, klass)
#define GBL_TYPEID(instanceStruct)
#define GBL_INSTANCE_DERIVE(derivedInstance, baseInstance)
#define GBL_PRIVATE_BEGIN
#define GBL_CLASS_DERIVE_EMPTY(...)
#define GBL_PRIVATE_END
Private data structure.
#define GBL_CLASSOF(cType, self)
#define GBL_CAST(cType, self)
GblType GblSignalClosure_type(void)
Returns the GblType UUID associated with GblSignalClosure.
GblSignalClosure * GblSignalClosure_create(const char *pSignalName, void *pUserdata)
Creates a new GblSignalClosure, with the given pSignalName, capturing the given pUserdata.
uintptr_t GblQuark
Uniquely identifiable interned string type.
Closure type for invoking signals.
GBL_RESULT GblSignalClosure_setSignal(GblSignalClosure *pSelf, const char *pSignalName)
Sets the signal for the closure to invoke to the given pSignalName.
GblQuark signalName
PRIVATE: Name of the signal to forward arguments to.