Extensions.h File Reference

Go to the source code of this file.

Classes

class  BON::ExtensionManager
class  BON::Extension< TBON, TUserI >
class  BON::Extension2< TBON1, TBON2, TUserI >
class  BON::Extension3< TBON1, TBON2, TBON3, TUserI >
class  BON::Extension4< TBON1, TBON2, TBON3, TBON4, TUserI >
class  BON::Extension5< TBON1, TBON2, TBON3, TBON4, TBON5, TUserI >
class  BON::Extension6< TBON1, TBON2, TBON3, TBON4, TBON5, TBON6, TUserI >
class  BON::ExtensionA< TBON, TUserI >
class  BON::ExtensionA2< TBON1, TBON2, TUserI >
class  BON::ExtensionA3< TBON1, TBON2, TBON3, TUserI >
class  BON::ExtensionA4< TBON1, TBON2, TBON3, TBON4, TUserI >
class  BON::ExtensionA5< TBON1, TBON2, TBON3, TBON4, TBON5, TUserI >
class  BON::ExtensionA6< TBON1, TBON2, TBON3, TBON4, TBON5, TBON6, TUserI >

Namespaces

namespace  BON

Defines

#define DECLARE_BONEXTENSION(TBON, TUserI, TUser)
#define DECLARE_BONEXTENSION2(TBON1, TBON2, TUserI, TUser)
#define DECLARE_BONEXTENSION3(TBON1, TBON2, TBON3, TUserI, TUser)
#define DECLARE_BONEXTENSION4(TBON1, TBON2, TBON3, TBON4, TUserI, TUser)
#define DECLARE_BONEXTENSION5(TBON1, TBON2, TBON3, TBON4, TBON5, TUserI, TUser)
#define DECLARE_BONEXTENSION6(TBON1, TBON2, TBON3, TBON4, TBON5, TBON6, TUserI, TUser)
#define DECLARE_ABSTRACT_BONEXTENSION(TBON, TUserI, TUser)
#define DECLARE_ABSTRACT_BONEXTENSION2(TBON1, TBON2, TUserI, TUser)
#define DECLARE_ABSTRACT_BONEXTENSION3(TBON1, TBON2, TBON3, TUserI, TUser)
#define DECLARE_ABSTRACT_BONEXTENSION4(TBON1, TBON2, TBON3, TBON4, TUserI, TUser)
#define DECLARE_ABSTRACT_BONEXTENSION5(TBON1, TBON2, TBON3, TBON4, TBON5, TUserI, TUser)
#define DECLARE_ABSTRACT_BONEXTENSION6(TBON1, TBON2, TBON3, TBON4, TBON5, TBON6, TUserI, TUser)
#define IMPLEMENT_BONEXTENSIONBASE(TUser, SKinds)
#define IMPLEMENT_BONEXTENSION(TUser, SKinds)   IMPLEMENT_BONEXTENSIONBASE( TUser, SKinds )
#define IMPLEMENT_ABSTRACT_BONEXTENSION(TUser)   IMPLEMENT_BONEXTENSIONBASE( TUser, "" )

Typedefs

typedef std::pair
< ExtensionType, int > 
BON::ExtensionInfo

Enumerations

enum  BON::ExtensionType { BON::EXT_None = 0, BON::EXT_MetaKind = 1, BON::EXT_Kind = 2, BON::EXT_Role = 3 }

Functions

void BON::splitKinds (const std::string &strKinds, std::vector< std::string > &vecKinds)
ObjectImpl * BON::castObjectImpl (ObjectImpl *pObject, const std::string &strBEType, ObjectType eType, const std::vector< std::string > &vecKinds, const std::vector< std::string > &vecDerivedKinds)
ExtensionType BON::castImpl (ObjectType eOType, const std::string &strKind, const std::string &strRole, const std::string &strBEType, ObjectType eType, const std::vector< std::string > &vecKinds)
void BON::mergeTypes (const std::string &strType1, ObjectType eType1, const std::string &strType2, ObjectType eType2, std::string &strType, ObjectType &eType)

Define Documentation

#define DECLARE_ABSTRACT_BONEXTENSION ( TBON,
TUserI,
TUser   ) 
Value:
class TUserI;                                                                                                                                                                                                   \
                typedef BON::ExtensionA<TBON,TUserI> TUser;

Definition at line 79 of file Extensions.h.

#define DECLARE_ABSTRACT_BONEXTENSION2 ( TBON1,
TBON2,
TUserI,
TUser   ) 
Value:
class TUserI;                                                                                                                                                                                                   \
                typedef BON::ExtensionA2<TBON1,TBON2,TUserI> TUser;

Definition at line 83 of file Extensions.h.

#define DECLARE_ABSTRACT_BONEXTENSION3 ( TBON1,
TBON2,
TBON3,
TUserI,
TUser   ) 
Value:
class TUserI;                                                                                                                                                                                                   \
                typedef BON::ExtensionA3<TBON1,TBON2,TBON3,TUserI> TUser;

Definition at line 87 of file Extensions.h.

#define DECLARE_ABSTRACT_BONEXTENSION4 ( TBON1,
TBON2,
TBON3,
TBON4,
TUserI,
TUser   ) 
Value:
class TUserI;                                                                                                                                                                                                   \
                typedef BON::ExtensionA4<TBON1,TBON2,TBON3,TBON4,TUserI> TUser;

Definition at line 91 of file Extensions.h.

#define DECLARE_ABSTRACT_BONEXTENSION5 ( TBON1,
TBON2,
TBON3,
TBON4,
TBON5,
TUserI,
TUser   ) 
Value:

Definition at line 95 of file Extensions.h.

#define DECLARE_ABSTRACT_BONEXTENSION6 ( TBON1,
TBON2,
TBON3,
TBON4,
TBON5,
TBON6,
TUserI,
TUser   ) 
Value:

Definition at line 99 of file Extensions.h.

#define DECLARE_BONEXTENSION ( TBON,
TUserI,
TUser   ) 
Value:
class TUserI;                                                                                                                                                                                                   \
                typedef BON::Extension<TBON,TUserI> TUser;

Definition at line 55 of file Extensions.h.

#define DECLARE_BONEXTENSION2 ( TBON1,
TBON2,
TUserI,
TUser   ) 
Value:
class TUserI;                                                                                                                                                                                                   \
                typedef BON::Extension2<TBON1,TBON2,TUserI> TUser;

Definition at line 59 of file Extensions.h.

#define DECLARE_BONEXTENSION3 ( TBON1,
TBON2,
TBON3,
TUserI,
TUser   ) 
Value:
class TUserI;                                                                                                                                                                                                   \
                typedef BON::Extension3<TBON1,TBON2,TBON3,TUserI> TUser;

Definition at line 63 of file Extensions.h.

#define DECLARE_BONEXTENSION4 ( TBON1,
TBON2,
TBON3,
TBON4,
TUserI,
TUser   ) 
Value:

Definition at line 67 of file Extensions.h.

#define DECLARE_BONEXTENSION5 ( TBON1,
TBON2,
TBON3,
TBON4,
TBON5,
TUserI,
TUser   ) 
Value:

Definition at line 71 of file Extensions.h.

#define DECLARE_BONEXTENSION6 ( TBON1,
TBON2,
TBON3,
TBON4,
TBON5,
TBON6,
TUserI,
TUser   ) 
Value:

Definition at line 75 of file Extensions.h.

#define IMPLEMENT_ABSTRACT_BONEXTENSION ( TUser   )     IMPLEMENT_BONEXTENSIONBASE( TUser, "" )

Definition at line 114 of file Extensions.h.

#define IMPLEMENT_BONEXTENSION ( TUser,
SKinds   )     IMPLEMENT_BONEXTENSIONBASE( TUser, SKinds )

Definition at line 111 of file Extensions.h.

#define IMPLEMENT_BONEXTENSIONBASE ( TUser,
SKinds   ) 
Value:
int TUser::inheritance_level = 0;                                                                                                                                                                                                                       \
                std::string TUser::string_type;                                                                                                                                                                                                                         \
                BON::ObjectType TUser::type = BON::OT_Null;                                                                                                                                                                                                                             \
                std::vector<std::string> TUser::vecKinds = TUser::setKinds( SKinds );                                                                                                                                   \
                std::vector<std::string> TUser::vecDerivedKinds;                                                                                                                                                                                \
                const BON::ExtensionManager TUser::extensionFactory = BON::ExtensionManager( TUser::vecKinds, TUser::castImpl, TUser::createImpl );

Definition at line 103 of file Extensions.h.

Generated on Thu May 30 15:42:56 2013 for GME by  doxygen 1.6.3