libbio
Loading...
Searching...
No Matches
Macros
Macros.h File Reference
#include "ConstructorMacros.h"
#include "ExcitationMacros.h"
#include "bio/chemical/common/BondTypes.h"
#include "bio/physical/macro/Macros.h"
Include dependency graph for chemical/macro/Macros.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define BIO_GET_REQUIRED_CLASS_METHODS_FOR_chemical()
 
#define BIO_GET_OPTIONAL_CLASS_METHODS_FOR_chemical()
 
#define BIO_CHEMICAL_BOND_TYPE_FUNCTION_BODY(functionName)
 
#define BIO_DIFFUSION_TIME_FUNCTION_BODY(functionName)
 
#define BIO_DIFFUSION_EFFORT_FUNCTION_BODY(functionName)
 

Macro Definition Documentation

◆ BIO_CHEMICAL_BOND_TYPE_FUNCTION_BODY

#define BIO_CHEMICAL_BOND_TYPE_FUNCTION_BODY (   functionName)
Value:
functionName, \
::bio::BondTypePerspective::Instance(), \
#define BIO_ID_FUNCTION_BODY(functionName, perspective, dimension)
Definition IdAndPerspectiveMacros.h:71
Definition Pointer.h:115

To make defining BondTypes easier, use this macro to define the function body of your BondType Function(). This will assign a value to a string that is identical to your FunctionName e.g. SafelyAccess<BondTypePerspective>()->GetNameFromId(Value()) would give "Value".

◆ BIO_DIFFUSION_EFFORT_FUNCTION_BODY

#define BIO_DIFFUSION_EFFORT_FUNCTION_BODY (   functionName)
Value:
functionName, \
::bio::DiffusionEffortPerspective::Instance(), \

Make defining DiffusionEfforts easier.

◆ BIO_DIFFUSION_TIME_FUNCTION_BODY

#define BIO_DIFFUSION_TIME_FUNCTION_BODY (   functionName)
Value:
functionName, \
::bio::DiffusionTimePerspective::Instance(), \

Make defining DiffusionTimes easier.

◆ BIO_GET_OPTIONAL_CLASS_METHODS_FOR_chemical

#define BIO_GET_OPTIONAL_CLASS_METHODS_FOR_chemical ( )
Value:
( \
virtual ::bio::Code Attenuate( \
Attenuate(other) \
), \
( \
virtual ::bio::Code Disattenuate( \
Disattenuate(other) \
)
#define BIO_GET_OPTIONAL_CLASS_METHODS_FOR_physical()
Definition physical/macro/Macros.h:65

Get all virtual methods defined by chemical::Class.

Returns
function signatures for use in BIO_DISAMBIGUATE_ALL_CLASS_METHODS

◆ BIO_GET_REQUIRED_CLASS_METHODS_FOR_chemical

#define BIO_GET_REQUIRED_CLASS_METHODS_FOR_chemical ( )
Value:
( \
virtual bool RegisterProperties(const ::bio::Properties& properties), \
RegisterProperties(properties) \
), \
( \
virtual ::bio::Properties GetProperties() const, \
GetProperties() \
), \
( \
template< typename AS > operator AS(), \
template As< AS >() \
), \
( \
virtual ::bio::Pointer< const ::bio::log::Writer > AsLogWriter() const,\
AsLogWriter() \
), \
( \
BIO_SINGLE_ARG(virtual void Log( \
::bio::LogLevel level, \
const char *format, \
va_list args \
) const), \
Log(level, format, args) \
)
#define BIO_SINGLE_ARG(...)
Definition common/macro/Macros.h:68
#define BIO_GET_REQUIRED_CLASS_METHODS_FOR_physical()
Definition physical/macro/Macros.h:35

Get all virtual methods defined by chemical::Class.

Returns
function signatures for use in BIO_DISAMBIGUATE_ALL_CLASS_METHODS