7#include <cx/ssdtree/ssdshared.h>
12typedef struct SSDTree SSDTree;
13typedef struct SSDTree_WeakRef SSDTree_WeakRef;
16#define _sti_SSDTree _sti_object
17#define SType_SSDTree SSDTree*
18#define STStorageType_SSDTree SSDTree*
19#define STypeArg_SSDTree(type, val) stgeneric(object, (ObjInst*)objInstCheckClass(SSDTree, val))
20#define STypeArgPtr_SSDTree(type, val) (stgeneric*)objInstCheckClassPtr(SSDTree, val)
21#define STypeCheckedArg_SSDTree(type, val) stType(type), stArg(type, val)
22#define STypeCheckedPtrArg_SSDTree(type, val) stType(type), stArgPtr(type, val)
25typedef struct SSDTreeDebug {
27 sa_SSDLockDebug readlocks;
28 sa_SSDLockDebug writelocks;
31typedef struct SSDTreeDebug {
36typedef struct SSDTree_ClassIf {
43extern SSDTree_ClassIf SSDTree_ClassIf_tmpl;
45typedef struct SSDTree {
62#define SSDTree(inst) objInstCheckClass(SSDTree, inst)
63#define SSDTreeNone ((SSDTree*)NULL)
65typedef struct SSDTree_WeakRef {
68 void* _is_SSDTree_WeakRef;
69 void* _is_ObjInst_WeakRef;
74#define SSDTree_WeakRef(inst) objWeakRefCheckClass(SSDTree, inst)
78#define ssdtreeCreate(flags) SSDTree_create(flags)
81#define ssdtreeCreateNode(self, crtype) (self)->_->createNode(SSDTree(self), crtype)
#define saDeclarePtr(name)
#define _objfactory_guaranteed
enum SSD_CREATE_TYPE_ENUM SSDCreateType
Node creation types for specifying which kind of node to create.
@ SSD_Create_None
Do not create a node.
@ SSD_Create_Count
Total number of creation types (internal use)
CX Struct System - Introspectable, serializable POD structures in C.
Mutex synchronization primitive.
CX Object System - Object-oriented programming in C.