Defined in file: hzDatabase.h
Data class member At the app level, the important data class member properties are the host data class, the name (unique within the data class), the data type, and the population constraints that apply to member values (as described by enum hdbPopCtl). Please note the following:- - hdbMember instances are created during the initialization of data classes (hdbClass instances), and should NOT be created outside of this context. - The recommended practice is to declare global pointers to members, with names of the form g_pMbr_classname_membername or similar, and to set these to the members directly after data class initialization. This is done because the hdbObject Get and Set functions expect member pointers, rather than member names. - As data class members cannot exist without a data class, it would make sense to nest the hdbMember definition within the hdbClass definition. That it is not is a historic matter, which is unlikely to change. It is easier and neater to use 'const hdbMember' in declarations, rather than 'const hdbClass::Member' or similar. If hdbMember were a subclass of hdbClass, it would not eliminate the need for hdbObject Get and Set functions to check if the supplied member pointer was initialized to the applicable class.
Constructors/Detructors
| hdbMember* | hdbMember | (hdbMember&) | |
| hdbMember* | hdbMember | (void) | |
| NULL-TYPE | hdbMember | (void) | |
| void | ~hdbMember | (void) |
Public Methods:
| hdbBasetype | Basetype | (void) | |
| hdbClass* | Class | (void) | |
| bool | Compulsory | (void) | |
| hdbDatatype* | Datatype | (void) | |
| uint16_t | DeltaId | (void) | |
| hdsFldspec* | GetSpec | (void) | |
| hzEcode | Init | (hdbClass* pClass)hdbDatatype* pType, hzString& name, uint32_t nPosn, hdbPopCtl popCtl, | Initialize the data object class member with name and data type |
| bool | IsClass | (void) | |
| bool | Multiple | (void) | |
| bool | Optional | (void) | |
| int32_t | OsetAux | (void) | |
| int32_t | OsetStd | (void) | |
| hdbPopCtl | PopCtl | (void) | |
| uint32_t | Posn | (void) | |
| hzEcode | SetSpec | (hdsFldspec* pSpec) | Set Field Specification for the member. Relevant only to webapp forms. Not relevant to HDB operation. |
| bool | Singular | (void) | |
| uint32_t | SizeAux | (void) | |
| uint32_t | SizeCore | (void) | |
| uint32_t | SizeDatum | (void) | |
| hzEcode | _setAux | (int32_t nAux) | Set Field Specification for the member. Relevant only to webapp forms. Not relevant to HDB operation. |
| hzEcode | _setId | (uint32_t mbrId) | Set Field Specification for the member. Relevant only to webapp forms. Not relevant to HDB operation. |
| hzEcode | _setOset | (int32_t nOset) | Set Field Specification for the member. Relevant only to webapp forms. Not relevant to HDB operation. |
| hzString | strDesc | (void) | |
| hzString | strName | (void) | |
| const char* | txtDesc | (void) | |
| const char* | txtName | (void) |
Overloaded operators:
| bool | operator!= | (hdbMember& op) | |
| hdbMember& | operator= | (hdbMember&) | |
| bool | operator== | (hdbMember& op) |
Member Variables:
| hzString | m_Desc | For application specific purposes, data members may have an optional description | |
| uint16_t | m_MemberUID | Unique member delta ID. | |
| hzString | m_Name | Member name, must be unique within the data class | |
| hzString | m_dsmTabSubject | Dissemino tab section subject (not for internal db consideration) | |
| int16_t | m_nOsetAux | Offset to aux member space within hdbObject core (used only by BINARY members for binary datum repository address) | |
| int16_t | m_nOsetStd | Offset to member space within hdbObject core - calculated by hdbClass::InitDone() | |
| uint16_t | m_nPosn | Actual position within class (set on Init() on being added to class) | |
| hdbClass* | m_pClass | Data class to which this member belongs | |
| hdsFldspec* | m_pSpec | Dissemino field specification for rendering HTML (Aid to webapp forms, not used for HDB purposes) | |
| hdbDatatype* | m_pType | Data type | |
| unsigned char | m_popCtl | Population restraints | |
| unsigned char | m_sizeAux | Size of core slot | |
| unsigned char | m_sizeCore | Size of core slot | |
| unsigned char | m_sizeDatum | Size of datum in bytes, as per the data type |