34 #ifndef EMANEPHYLAYERIMPL_HEADER_ 35 #define EMANEPHYLAYERIMPL_HEADER_ 107 #define DECLARE_PHY_LAYER(X) \ 108 extern "C" EMANE::PHYLayerImplementor * create(EMANE::NEMId id, EMANE::PlatformServiceProvider *p) \ 109 {return new X(id,p);} \ 110 extern "C" void destroy(EMANE::PHYLayerImplementor * p) \ 115 #endif //EMANEPHYLAYERIMPL_HEADER_ A Packet class that allows upstream processing to strip layer headers as the packet travels up the st...
PHYLayerImplementor(NEMId id, PlatformServiceProvider *p)
Interface used to create a PHY layer plugin implementation.
std::list< const ControlMessage * > ControlMessages
Base class for NEMLayer containers. Builders construct NEMLayer objects to contain derived instances ...
void sendDownstreamPacket(const CommonPHYHeader &hdr, DownstreamPacket &pkt, const ControlMessages &msgs=DownstreamTransport::empty)
Specialized packet the allows downstream processing to add layer specific headers as the packet trave...
virtual void processUpstreamPacket(const CommonPHYHeader &hdr, UpstreamPacket &pkt, const ControlMessages &msgs=UpstreamTransport::empty)=0
static const ControlMessages empty
virtual ~PHYLayerImplementor()
static const ControlMessages empty
void(* destroyPHYFunc)(PHYLayerImplementor *)