Macros
staticMemberFunctionSelectionTables.H File Reference

Macros to enable the easy declaration of member function selection tables. More...

Include dependency graph for staticMemberFunctionSelectionTables.H:

Go to the source code of this file.

Macros

#define declareStaticMemberFunctionSelectionTable(returnType, baseType, memberFunction, argNames, argList, parList)
 
#define defineStaticMemberFunctionSelectionTableConstructDestruct(baseType, memberFunction, argNames)
 
#define defineStaticMemberFunctionSelectionTablePtr(baseType, memberFunction, argNames)
 
#define defineStaticMemberFunctionSelectionTable(baseType, memberFunction, argNames)
 

Detailed Description

Macros to enable the easy declaration of member function selection tables.

Original source file staticMemberFunctionSelectionTables.H

Definition in file staticMemberFunctionSelectionTables.H.

Macro Definition Documentation

#define declareStaticMemberFunctionSelectionTable (   returnType,
  baseType,
  memberFunction,
  argNames,
  argList,
  parList 
)

Definition at line 39 of file staticMemberFunctionSelectionTables.H.

#define defineStaticMemberFunctionSelectionTableConstructDestruct (   baseType,
  memberFunction,
  argNames 
)
Value:
\
/* Table constructor called from the table add function constructor */ \
void baseType::construct##memberFunction##argNames##MemberFunctionTables()\
{ \
static bool constructed = false; \
if (!constructed) \
{ \
constructed = true; \
baseType::memberFunction##argNames##MemberFunctionTablePtr_ \
= new baseType::memberFunction##argNames##MemberFunctionTable;\
} \
}; \
\
/* Table destructor called from the table add function destructor */ \
void baseType::destroy##memberFunction##argNames##MemberFunctionTables() \
{ \
if (baseType::memberFunction##argNames##MemberFunctionTablePtr_) \
{ \
delete baseType::memberFunction##argNames##MemberFunctionTablePtr_;\
baseType::memberFunction##argNames##MemberFunctionTablePtr_ = NULL;\
} \
}

Definition at line 89 of file staticMemberFunctionSelectionTables.H.

#define defineStaticMemberFunctionSelectionTablePtr (   baseType,
  memberFunction,
  argNames 
)
Value:
\
/* Define the memberFunction table */ \
baseType::memberFunction##argNames##MemberFunctionTable* \
baseType::memberFunction##argNames##MemberFunctionTablePtr_ = NULL

Definition at line 117 of file staticMemberFunctionSelectionTables.H.

#define defineStaticMemberFunctionSelectionTable (   baseType,
  memberFunction,
  argNames 
)
Value:
\
defineStaticMemberFunctionSelectionTablePtr \
(baseType,memberFunction,argNames); \
defineStaticMemberFunctionSelectionTableConstructDestruct \
(baseType,memberFunction,argNames) \

Definition at line 130 of file staticMemberFunctionSelectionTables.H.