replicode
Classes | Macros
application.h File Reference
#include "module_register.h"
#include "class_register.h"
#include "module_node.h"
#include "module.h"
#include "classes.h"
Include dependency graph for application.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Module< U >
 

Macros

#define MBRANE_MESSAGE_CLASSES   "mBrane_message_classes.h"
 
#define MBRANE_MESSAGE_CLASS(C)   static const uint16_t C##_CID=(uint16_t)__COUNTER__;static const uint64_t C##_metaData=ClassRegister::Load<C>(C##_CID);
 
#define MBRANE_STREAM_DATA_CLASS(C)   static const uint16_t C##_CID=(uint16_t)__COUNTER__;static const uint64_t C##_metaData=ClassRegister::Load<C>(C##_CID);
 
#define CLASS_ID(C)   C##_CID
 
#define MBRANE_MESSAGE_CLASS(C)   case CLASS_ID(C): ((U *)this)->react((C *)p); return;
 
#define MBRANE_STREAM_DATA_CLASS(C)
 
#define MBRANE_MESSAGE_CLASS(C)
 
#define MBRANE_STREAM_DATA_CLASS(C)   case CLASS_ID(C): ((U *)this)->react(sid,(C *)p); return;
 
#define MBRANE_MESSAGE_CLASS(C)   case CLASS_ID(C): return ((U *)this)->decide((C *)p);
 
#define MBRANE_STREAM_DATA_CLASS(C)   case CLASS_ID(C): return ((U *)this)->decide((C *)p);
 
#define LOAD_MODULE(C)   static uint16_t cid_##C=C::CID();
 
#define MBRANE_MESSAGE_CLASS(C)   static const uint64_t C##_force_init=C::_MetaData;
 
#define MBRANE_MESSAGE_CLASS(C)   static const uint16_t C##_name=ClassRegister::Load(#C);
 
#define MBRANE_STREAM_DATA_CLASS(C)   static const uint16_t C##_name=ClassRegister::Load(#C);
 
#define MODULE_CLASS_BEGIN(C, S)
 
#define MODULE_CLASS_END(C)
 

Macro Definition Documentation

#define CLASS_ID (   C)    C##_CID
#define LOAD_MODULE (   C)    static uint16_t cid_##C=C::CID();
#define MBRANE_MESSAGE_CLASS (   C)    static const uint16_t C##_CID=(uint16_t)__COUNTER__;static const uint64_t C##_metaData=ClassRegister::Load<C>(C##_CID);
#define MBRANE_MESSAGE_CLASS (   C)    case CLASS_ID(C): ((U *)this)->react((C *)p); return;
#define MBRANE_MESSAGE_CLASS (   C)
#define MBRANE_MESSAGE_CLASS (   C)    case CLASS_ID(C): return ((U *)this)->decide((C *)p);
#define MBRANE_MESSAGE_CLASS (   C)    static const uint64_t C##_force_init=C::_MetaData;
#define MBRANE_MESSAGE_CLASS (   C)    static const uint16_t C##_name=ClassRegister::Load(#C);
#define MBRANE_MESSAGE_CLASSES   "mBrane_message_classes.h"
#define MBRANE_STREAM_DATA_CLASS (   C)    static const uint16_t C##_CID=(uint16_t)__COUNTER__;static const uint64_t C##_metaData=ClassRegister::Load<C>(C##_CID);
#define MBRANE_STREAM_DATA_CLASS (   C)
#define MBRANE_STREAM_DATA_CLASS (   C)    case CLASS_ID(C): ((U *)this)->react(sid,(C *)p); return;
#define MBRANE_STREAM_DATA_CLASS (   C)    case CLASS_ID(C): return ((U *)this)->decide((C *)p);
#define MBRANE_STREAM_DATA_CLASS (   C)    static const uint16_t C##_name=ClassRegister::Load(#C);
#define MODULE_CLASS_BEGIN (   C,
  S 
)
Value:
class C: \
public S{ \
public: \
static const char *ClassName; \
C():S(){} \
~C(){} \
Decision decide(KillModule *p){ \
return WAIT; \
} \
void react(KillModule *p){ \
delete this; \
}
void react(T *p)
Definition: Perf_modules.h:106
Definition: control_messages.h:229
Decision decide(T *p)
Definition: Perf_modules.h:102
#define MODULE_CLASS_END (   C)
Value:
}; \
const char *C::ClassName=#C; \
extern "C"{ \
mBrane::sdk::module::_Module * cdecl New##C(){ return new C(); } \
const uint16_t C##_CID(){ return C::CID(); } \
}