Defined in header file: hzDatabase.h
The hdbIniStat enum lists the possible initialization states of hdbClass (data class), and hdbObjRepos (data object repository) - for the purpose of imposing initialization sequences on these classes. Data classes are constructed with an initial state of HDB_CLASS_INIT_NONE. The sequence begins with a call to hdbClass::InitStart(), which takes the initialization state to HDB_CLASS_INIT_PROG. Then for each class member there is a call to InitMember(). This expects an initialization state of HDB_CLASS_INIT_PROG otherwise execution terminates. InitMember() does not alter the initialization state. Finally there is a call to InitDone(). This also expects an initialization state of HDB_CLASS_INIT_PROG otherwise it will terminate execution. InitDone() sets the initialization state of the hdbClass instance to HDB_CLASS_INIT_DONE which is the end of the process. Repositories are also constructed with an initial state of HDB_CLASS_INIT_NONE. The sequence begins with a call to hdbObjRepos::InitStart(), which expects a predefined data class (fully initialized), so the class members are all known. Then optionally, InitMbrIndex() and InitMbrStore() can be called to add an index or to define how a member is stored. As with data classes, InitDone() completes the initialization sequence. The repository can then be opened, operated upon and closed.
Enum definition:
enum hdbIniStat
{
| HDB_CLASS_INIT_NONE | No initialization has begun | ||
| HDB_CLASS_INIT_PROG | The hdbClass member function InitStart() has been called and so the class definition is in progress, members can be added. | ||
| HDB_CLASS_INIT_DONE | The hdbClass member function InitDone() has been called and so the class definition is complete. No new members can be added. | ||
| HDB_REPOS_INIT_PROG | The repository member function InitStart() has been called so initialization steps relating to members can be effected. | ||
| HDB_REPOS_INIT_DONE | The repository member function InitDone() has been called. No further initialization is permitted. | ||
| HDB_REPOS_OPEN | The repository is open to transactions. If the repository is closed the state reverts to HDB_REPOS_INIT_DONE. |
} ;