Definition at line 38 of file gimbal_type.hpp.
◆ Type()
◆ getName()
const char * gimbal::Type::getName |
( |
void |
| ) |
const |
|
inline |
Definition at line 157 of file gimbal_type.hpp.
const char * GblType_name(GblType self)
Returns the type name string associated with the given GblType.
◆ getParentType()
Type gimbal::Type::getParentType |
( |
void |
| ) |
const |
|
inline |
Definition at line 158 of file gimbal_type.hpp.
GblType GblType_parent(GblType self)
Returns the given type's parent's GblType or GBL_INVALID_TYPE if it's a root type.
◆ getFundamentalType()
Type gimbal::Type::getFundamentalType |
( |
void |
| ) |
const |
|
inline |
Definition at line 160 of file gimbal_type.hpp.
GblType GblType_root(GblType self)
Returns the root parent GblType of the given GblType.
◆ getInfo()
const TypeInfo * gimbal::Type::getInfo |
( |
void |
| ) |
const |
|
inline |
Definition at line 161 of file gimbal_type.hpp.
161{
return static_cast<const TypeInfo*
>(
GblType_info(*
this)); }
const GblTypeInfo * GblType_info(GblType self)
Returns the GblTypeInfo struct for the given type, containing its meta information.
◆ getDepth()
UInt gimbal::Type::getDepth |
( |
void |
| ) |
const |
|
inline |
Definition at line 159 of file gimbal_type.hpp.
size_t GblType_depth(GblType self)
Returns the depth of the given GblType, where a depth of 0 means it's a root type.
◆ isValid()
bool gimbal::Type::isValid |
( |
void |
| ) |
const |
|
inline |
Definition at line 164 of file gimbal_type.hpp.
#define GBL_INVALID_TYPE
GblType UUID of the invalid type.
◆ isClassed()
bool gimbal::Type::isClassed |
( |
void |
| ) |
const |
|
inline |
Definition at line 166 of file gimbal_type.hpp.
#define GBL_TYPE_CLASSED_CHECK(type)
Convenience macro checking a GblType's GBL_TYPE_ROOT_FLAG_CLASSED flag.
◆ isInstantiable()
bool gimbal::Type::isInstantiable |
( |
void |
| ) |
const |
|
inline |
Definition at line 167 of file gimbal_type.hpp.
#define GBL_TYPE_INSTANTIABLE_CHECK(type)
Convenience macro checking a GblType's GBL_TYPE_ROOT_FLAG_INSTANTIABLE flag.
◆ isDerivable()
bool gimbal::Type::isDerivable |
( |
void |
| ) |
const |
|
inline |
Definition at line 168 of file gimbal_type.hpp.
#define GBL_TYPE_DERIVABLE_CHECK(type)
Convenience macro checking a GblType's GBL_TYPE_ROOT_FLAG_DERIVABLE flag.
◆ isDeepDerivable()
bool gimbal::Type::isDeepDerivable |
( |
void |
| ) |
const |
|
inline |
Definition at line 169 of file gimbal_type.hpp.
#define GBL_TYPE_DEEP_DERIVABLE_CHECK(type)
Convenience macro checking a GblType's GBL_TYPE_ROOT_FLAG_DEEP_DERIVABLE flag.
◆ isAbstract()
bool gimbal::Type::isAbstract |
( |
void |
| ) |
const |
|
inline |
Definition at line 170 of file gimbal_type.hpp.
#define GBL_TYPE_ABSTRACT_CHECK(type)
Convenience macro checking a GblType's GBL_TYPE_ABSTRACT flag.
◆ isFinal()
bool gimbal::Type::isFinal |
( |
void |
| ) |
const |
|
inline |
Definition at line 171 of file gimbal_type.hpp.
#define GBL_TYPE_FINAL_CHECK(type)
Convenience macro checking a GblType's GBL_TYPE_FINAL flag ///<.
◆ isInterfaced()
bool gimbal::Type::isInterfaced |
( |
void |
| ) |
const |
|
inline |
Definition at line 172 of file gimbal_type.hpp.
#define GBL_TYPE_INTERFACED_CHECK(type)
Convenience macro checking a GblType's GBL_TYPE_ROOT_FLAG_INTERFACED flag.
◆ isA()
bool gimbal::Type::isA |
( |
Type |
base | ) |
const |
|
inline |
Definition at line 162 of file gimbal_type.hpp.
GblBool GblType_check(GblType self, GblType other)
Returns GBL_TRUE if the given type can be safely cast to the other type.
◆ getClassRefCount()
RefCount gimbal::Type::getClassRefCount |
( |
void |
| ) |
const |
|
inline |
Definition at line 163 of file gimbal_type.hpp.
GblRefCount GblType_classRefCount(GblType self)
Returns the reference counter for the given GblType's internally-managed default GblClass.
◆ instanceCreate() [1/2]
void * gimbal::Type::instanceCreate |
( |
void |
| ) |
const |
|
inline |
Definition at line 175 of file gimbal_type.hpp.
175{ return Type::instanceCreate(*this); }
◆ instanceConstruct() [1/2]
void gimbal::Type::instanceConstruct |
( |
void * |
pInstance | ) |
const |
|
inline |
Definition at line 176 of file gimbal_type.hpp.
176{ return Type::instanceConstruct(*this, pInstance); }
◆ instanceDestruct() [1/2]
void gimbal::Type::instanceDestruct |
( |
void * |
pInstance | ) |
const |
|
inline |
Definition at line 177 of file gimbal_type.hpp.
177{ Type::instanceDestruct(*this, pInstance); }
◆ instanceDestroy() [1/2]
void gimbal::Type::instanceDestroy |
( |
void * |
pInstance | ) |
const |
|
inline |
Definition at line 178 of file gimbal_type.hpp.
178{ Type::instanceDestroy(*this, pInstance); }
◆ classReference() [1/2]
void * gimbal::Type::classReference |
( |
void |
| ) |
const |
|
inline |
Definition at line 180 of file gimbal_type.hpp.
180{ return Type::classReference(*this); }
◆ classUnreference() [1/2]
void gimbal::Type::classUnreference |
( |
void * |
pClass | ) |
const |
|
inline |
Definition at line 181 of file gimbal_type.hpp.
181{ return Type::classUnreference(*this, pClass); }
◆ init()
Result gimbal::Type::init |
( |
Context * |
pCtx = nullptr , |
|
|
Size |
typeBuiltinInitialCount = 0 , |
|
|
Size |
typeTotalInitialCount = 0 |
|
) |
| |
|
inlinestatic |
Definition at line 183 of file gimbal_type.hpp.
183 {
184 return GblType_init(pCtx, initialBuiltinCount, initialTotalCount);
185}
◆ registerStatic()
Definition at line 187 of file gimbal_type.hpp.
191{
192 return GblType_registerStatic(parentType,
193 pName,
194 &typeInfo,
195 flags);
196}
◆ unregister()
void gimbal::Type::unregister |
( |
Type |
type | ) |
|
|
inlinestatic |
Definition at line 198 of file gimbal_type.hpp.
198 {
200}
GBL_RESULT GblType_unregister(GblType type)
Unregisters a type from the type system. Typically not done, better not be used.
◆ count()
Size gimbal::Type::count |
( |
void |
| ) |
|
|
inlinestatic |
Definition at line 205 of file gimbal_type.hpp.
205 {
206 return GblType_registeredCount();
207}
◆ fromName()
Type gimbal::Type::fromName |
( |
const char * |
pName | ) |
|
|
inlinestatic |
Definition at line 202 of file gimbal_type.hpp.
202 {
203 return GblType_fromName(pName);
204}
◆ instanceCreate() [2/2]
void * gimbal::Type::instanceCreate |
( |
Type |
type | ) |
|
|
inlinestatic |
Definition at line 209 of file gimbal_type.hpp.
GblInstance * GblInstance_create(GblType type, size_t publicSize, GblClass *pClass)
Creates and returns an instance, optionally with an extended size and/or non-default class.
◆ instanceConstruct() [2/2]
void gimbal::Type::instanceConstruct |
( |
Type |
type, |
|
|
void * |
pInstance |
|
) |
| |
|
inlinestatic |
Definition at line 210 of file gimbal_type.hpp.
GBL_RESULT GblInstance_construct(GblInstance *pSelf, GblType type, GblClass *pClass)
Constructs an instance, optionally with a non-default class, returning a result code.
Base struct for all instantiable meta types.
◆ instanceDestruct() [2/2]
void gimbal::Type::instanceDestruct |
( |
Type |
type, |
|
|
void * |
pInstance |
|
) |
| |
|
inlinestatic |
Definition at line 211 of file gimbal_type.hpp.
GblRefCount GblInstance_destruct(GblInstance *pSelf)
Destructs but doesn't deallocate an instance. It must have been created with GblInstance_construct().
◆ instanceDestroy() [2/2]
void gimbal::Type::instanceDestroy |
( |
Type |
type, |
|
|
void * |
pInstance |
|
) |
| |
|
inlinestatic |
Definition at line 212 of file gimbal_type.hpp.
GblRefCount GblInstance_destroy(GblInstance *pSelf)
Destructs and deallocates an instance. It must have been created with GblInstance_create().
◆ classReference() [2/2]
void * gimbal::Type::classReference |
( |
Type |
type | ) |
|
|
inlinestatic |
Definition at line 214 of file gimbal_type.hpp.
GblClass * GblClass_refDefault(GblType type)
Returns a reference to the default class for type, instantiating it if necessary.
◆ classUnreference() [2/2]
void gimbal::Type::classUnreference |
( |
Type |
type, |
|
|
void * |
pClass |
|
) |
| |
|
inlinestatic |
Definition at line 215 of file gimbal_type.hpp.
GblRefCount GblClass_unrefDefault(GblClass *pSelf)
Releases a reference to the default version of the given class, possibly freeing it.
Base struct for all type classes.
The documentation for this class was generated from the following file: