23 #ifndef MCR_EXTRAS_REFERENCES_ITRIGGER_BUILDER_H_ 24 #define MCR_EXTRAS_REFERENCES_ITRIGGER_BUILDER_H_ 71 virtual void registerType(
const char *name,
72 const char *
const*addNames =
nullptr,
size_t addNamesCount = 0);
73 virtual void unregisterType();
82 return _itrigPt ? &_itrigPt->interface : NULL;
91 virtual inline size_t id()
95 virtual void setId(
size_t val);
97 virtual const char *name();
98 virtual void setName(
const char *name);
102 return _itrigPt ? _itrigPt->interface.data_size : 0;
104 virtual inline void setDataSize(
size_t newSize)
107 _itrigPt->interface.data_size = newSize;
112 return _itrigPt ? _itrigPt->interface.init :
nullptr;
117 _itrigPt->interface.init = val;
122 return _itrigPt ? _itrigPt->interface.deinit :
nullptr;
127 _itrigPt->interface.deinit = val;
132 return _itrigPt ? _itrigPt->interface.compare :
nullptr;
137 _itrigPt->interface.compare = val;
142 return _itrigPt ? _itrigPt->interface.copy :
nullptr;
147 _itrigPt->interface.copy = val;
151 virtual inline mcr_Trigger_receive_fnc receive()
const 153 return _itrigPt ? _itrigPt->receive :
nullptr;
155 virtual inline void setReceive(mcr_Trigger_receive_fnc fnc)
158 _itrigPt->receive = fnc;
int(* mcr_compare_fnc)(const void *lhsPt, const void *rhsPt)
virtual mcr_ITrigger * itrigger() const
MCR_API size_t mcr_ITrigger_id(struct mcr_ITrigger *itrigPt)
int(* mcr_data_fnc)(void *dataPt)
int(* mcr_copy_fnc)(void *destinationPt, const void *sourcePt)
C++ wrappers and extensions of C types.
Libmacro, by Jonathan Pelletier, New Paradigm Software. Alpha version.
virtual size_t dataSize() const