Go to the documentation of this file. 12 #ifndef FUNCTIONBIND_H 13 #define FUNCTIONBIND_H 16 #define DELEGATE(CLASS,FUNC,OUTPUT,...) OUTPUT (CLASS::*FUNC) (__VA_ARGS__) 17 #define DELEGATEV(CLASS,FUNC,OUTPUT) DELEGATE(CLASS,FUNC,OUTPUT,) 21 #define Init_t(FUNC) DELEGATEV(RawDAQData, FUNC, void ) 22 #define Sizeofdata_t(FUNC) DELEGATEV(RawDAQData, FUNC, uint32_t) const 23 #define Print_t(FUNC) DELEGATE(RawDAQData, FUNC, void , std::ostream&) const 24 #define ReadData_t(FUNC) DELEGATE(RawDAQData, FUNC, void* , const void* ) 25 #define SetBufferSource_t(FUNC) DELEGATE(RawDAQData, FUNC, bool , const void* ) 26 #define ResetBufferSource_t(FUNC) DELEGATEV(RawDAQData, FUNC, bool ) 29 #define init_t Init_t() 30 #define sizeofdata_t Sizeofdata_t() 31 #define print_t Print_t() 32 #define readData_t ReadData_t() 33 #define setBufferSource_t SetBufferSource_t() 34 #define resetBufferSource_t ResetBufferSource_t() 37 #define EXECUTE_GENERAL_FUNCTION(FULLFUNCTIONNAME) (this->*FULLFUNCTIONNAME) 40 #define DEEPCOPY_FUNCTION(FUNC) _function_##FUNC(copyin._function_##FUNC) 41 #define DEEPCOPY_GET(FUNC) DEEPCOPY_FUNCTION(get##FUNC) 42 #define DEEPCOPY_IS(FUNC) DEEPCOPY_FUNCTION(is##FUNC) 43 #define DEEPCOPY_SET(FUNC) DEEPCOPY_FUNCTION(set##FUNC) 44 #define DEEPCOPY_GET_AND_SET(FUNC)\ 47 #define DEEPCOPY_IS_AND_SET(FUNC)\ 52 #define ZEROOUT_FUNCTION(FUNC) _function_##FUNC(NULL) 53 #define ZEROOUT_GET(FUNC) ZEROOUT_FUNCTION(get##FUNC) 54 #define ZEROOUT_IS(FUNC) ZEROOUT_FUNCTION(is##FUNC) 55 #define ZEROOUT_SET(FUNC) ZEROOUT_FUNCTION(set##FUNC) 56 #define ZEROOUT_GET_AND_SET(FUNC)\ 59 #define ZEROOUT_IS_AND_SET(FUNC)\