DBExtend :: DBExtend - Extent definition constructor
Usually, extent definitions are constructed internally. One may, however, create a copy from an extent definition for specific purposes.
Implementation overview
- Create definition for temporary extent
DBExtend :: DBExtend ( db_ext_ref, extnames ) - Dummy constructor
DBExtend :: DBExtend (  ) - Define extent from external simple reference definition
DBExtend :: DBExtend ( ph, dictptr, dbstrdef ) - Define extent from external extent definition
DBExtend :: DBExtend ( ph, dictptr, dbstrdef, baseext ) - Define extent from external reference definition
DBExtend :: DBExtend ( fielddef, dbstrdef, disjopt=NO, unionopt=NO, intersopt=NO, contr_opt=NO ) - Define extent from internal field definition
DBExtend :: DBExtend ( fielddef, extnames )
Implementation details
-
Create definition for temporary extent
DBExtend  :: DBExtend ( DBExtend &db_ext_ref, NString &extnames )
This is a sort of copy and rename constructor, that creates a, extent definition according to the definition passed to the constructor. The new extent definition describes a temporary extent always.
- db_ext_ref - Reference to extent definition
- extnames
- Extent name
The name contains the name of the extent, only. It does not contain a namespace scope.
Notes:retval checked for const &NString
to list
-
Dummy constructor
DBExtend  :: DBExtend (  )
This constructor creates an empty extent definition.
to list
-
Define extent from external simple reference definition
DBExtend  :: DBExtend ( PropertyHandle &ph, ::Dictionary *dictptr, DBStructDef *dbstrdef )
This constructor creates an extent from a simple external reference definition ( SDB_Reference ).
- ph - Reference to property handle
- dictptr
- Dictionary handle
An opened dictionary handle is passed.
- dbstrdef
- Structure definition
This is a pointer to an internal structure definition ( DBStructDef or smcb ).
to list
-
Define extent from external extent definition
DBExtend  :: DBExtend ( PropertyHandle &ph, ::Dictionary *dictptr, DBStructDef *dbstrdef, DBExtend *baseext )
This constructor creates an extent from an external extent definition ( SDB_Extend ). The extent definition is connected to the dictionary as dictionary resource (and thus, made globally available). This definition should not be deleted by the application. It will be deleted automatically by the dictionary. When the definition must be deleted in the application, use RemoveExtentDef () before to remove it from the dictionary.
- ph - Reference to property handle
- dictptr
- Dictionary handle
An opened dictionary handle is passed.
- dbstrdef
- Structure definition
This is a pointer to an internal structure definition ( DBStructDef or smcb ).
- baseext - Base extent
to list
-
Define extent from external reference definition
DBExtend  :: DBExtend ( DBFieldDef *fielddef, DBStructDef *dbstrdef, logical disjopt=NO, logical unionopt=NO, logical intersopt=NO, logical contr_opt=NO )
This constructor creates an extent from an external reference definition ( SDB_Reference ).
- fielddef
- Internal field definition
This is a pointer to an internal field definition ( DBFieldDef or fmcb ), which may describe attributes as well as references (collections).
- dbstrdef
- Structure definition
This is a pointer to an internal structure definition ( DBStructDef or smcb ).
- disjopt
- Distinct derived extents
Derived extents for an extent are distinct.
Default: NO
- unionopt
- Union extent
The extent is the union of its derived extents.
Default: NO
- intersopt
- Intersect extent
The extent is the intersection of its base extents.
Default: NO
- contr_opt
- Controlled extent
The extent is controlled, i.e. subset relationships are maintained.
Default: NO
to list
- fielddef
- Internal field definition
-
Define extent from internal field definition
DBExtend  :: DBExtend ( DBFieldDef *fielddef, NString &extnames )
The function provides an extent definition from an internal field definition. I ndexes set in the field definition are made available for the extent.
- fielddef
- Internal field definition
This is a pointer to an internal field definition ( DBFieldDef or fmcb ), which may describe attributes as well as references (collections).
- extnames
- Extent name
The name contains the name of the extent, only. It does not contain a namespace scope.
Notes:retval checked for const &NString
to list
- fielddef
- Internal field definition