Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

CdbBdbSPagedVarrayP.ddl File Reference

#include "BdbUtil/Bdb.hh"
#include "CdbBdbShared/CdbBdbSLeafNodeP.hh"
#include "CdbBdbShared/CdbBdbSDirectoryNodeP.hh"
#include <iostream>

Go to the source code of this file.

Compounds

class  CdbBdbSPagedVarrayP
 Paged variable size array. More...


Defines

#define instantiate_CdbBdbSPagedVarrayP(T, TN)
 Macros for the explicit template instantiation any types of elements.

#define EXPLICIT_INSTANTIATE_CdbBdbSPagedVarrayP_1(T)
#define EXPLICIT_INSTANTIATE_CdbBdbSPagedVarrayP_2(T1, T2)
#define EXPLICIT_INSTANTIATE_CdbBdbSPagedVarrayP_3(T1, T2, T3)


Define Documentation

#define EXPLICIT_INSTANTIATE_CdbBdbSPagedVarrayP_1  
 

Value:

template class CdbBdbSNodeP         < T >; \
template class CdbBdbSLeafNodeP     < T >; \
template class CdbBdbSDirectoryNodeP< T >; \
template class CdbBdbSPagedVarrayP  < T >

Definition at line 197 of file CdbBdbSPagedVarrayP.ddl.

#define EXPLICIT_INSTANTIATE_CdbBdbSPagedVarrayP_2 T1,
T2   
 

Value:

template class CdbBdbSNodeP         < T1 , T2 >; \
template class CdbBdbSLeafNodeP     < T1 , T2 >; \
template class CdbBdbSDirectoryNodeP< T1 , T2 >; \
template class CdbBdbSPagedVarrayP  < T1 , T2 >

Definition at line 203 of file CdbBdbSPagedVarrayP.ddl.

#define EXPLICIT_INSTANTIATE_CdbBdbSPagedVarrayP_3 T1,
T2,
T3   
 

Value:

template class CdbBdbSNodeP         < T1 , T2 , T3 >; \
template class CdbBdbSLeafNodeP     < T1 , T2 , T3 >; \
template class CdbBdbSDirectoryNodeP< T1 , T2 , T3 >; \
template class CdbBdbSPagedVarrayP  < T1 , T2 , T3 >

Definition at line 209 of file CdbBdbSPagedVarrayP.ddl.

#define instantiate_CdbBdbSPagedVarrayP T,
TN   
 

Value:

template class CdbBdbSNodeP         < T >; \
template class CdbBdbSLeafNodeP     < T >; \
template class CdbBdbSDirectoryNodeP< T >; \
template class CdbBdbSPagedVarrayP  < T >; \
typedef CdbBdbSPagedVarrayP         < T > TN
Macros for the explicit template instantiation any types of elements.

The macro will provide all the necessary declarations for arbitrary type of elements (including the predefined "primitive" ones). This instantiation is required by Objectivity/DDL compilation system to put the new classes into the federation's schema.

The actual instantiation for primitive types is done in separate files.

GENERAL NOTE: Be carefull when doing explicit template instantiations in Objectivity/DDL API to avoid potential library conflicts when the same template is defined in two or more packages (libraries)!!!

As a solution put a common instance of a template into one package and use it from there.

There are two forms of macros. The first parameter (or group of thoses if a value of teh parameter is template itself) of both forms is a type of elements.

The second 'TN' parameter will also introduce new type as required by a user.

NOTE: This macro can't be used to instantiate an array of "ooBoolean" type because this type may conflicts with "ooInt8" on some platforms.

Definition at line 190 of file CdbBdbSPagedVarrayP.ddl.


Generated on Mon Dec 5 18:22:14 2005 for CDB by doxygen1.3-rc3