EMANE  1.0.1
EMANE::Application::TransportAdapter Class Referenceabstract

Transport Adapter interface. A Transport Adapter combines with a Transport to connect with its respective NEM stack. A TransportAdapter implementation passes traffic between the associated Transport and the Tranport's NEM. More...

#include <transportadapter.h>

Inheritance diagram for EMANE::Application::TransportAdapter:
EMANE::Component EMANE::DownstreamTransport EMANE::Buildable EMANE::Application::TransportAdapterImpl

Public Member Functions

virtual ~TransportAdapter ()
 
virtual void setTransport (std::unique_ptr< NEMLayer > &pTransport)=0
 
NEMId getNEMId () const
 
virtual void initialize (Registrar &registrar)=0
 
virtual void configure (const ConfigurationUpdate &update)=0
 
virtual void start ()=0
 
virtual void postStart ()
 
virtual void stop ()=0
 
virtual void destroy ()=0 throw ()
 
virtual void processDownstreamPacket (DownstreamPacket &pkt, const ControlMessages &msgs=empty)=0
 
virtual void processDownstreamControl (const ControlMessages &msgs)=0
 
virtual void setUpstreamTransport (UpstreamTransport *pUpstreamTransport)
 
void sendUpstreamPacket (UpstreamPacket &pkt, const ControlMessages &msgs=empty)
 
void sendUpstreamControl (const ControlMessages &msgs)
 
BuildId getBuildId () const
 
void setBuildId (BuildId bid)
 

Static Public Attributes

static const ControlMessages empty
 

Protected Member Functions

 TransportAdapter (NEMId id)
 

Protected Attributes

const NEMId id_
 

Detailed Description

Transport Adapter interface. A Transport Adapter combines with a Transport to connect with its respective NEM stack. A TransportAdapter implementation passes traffic between the associated Transport and the Tranport's NEM.

Definition at line 57 of file transportadapter.h.

Constructor & Destructor Documentation

◆ ~TransportAdapter()

virtual EMANE::Application::TransportAdapter::~TransportAdapter ( )
inlinevirtual

Destroys an instance

Definition at line 65 of file transportadapter.h.

◆ TransportAdapter()

EMANE::Application::TransportAdapter::TransportAdapter ( NEMId  id)
inlineprotected

Definition at line 83 of file transportadapter.h.

Member Function Documentation

◆ configure()

◆ destroy()

◆ getBuildId()

EMANE::BuildId EMANE::Buildable::getBuildId ( ) const
inlineinherited

Gets the application wide unique BuildId of this object.

Returns
the BuildId

Definition at line 34 of file buildable.inl.

◆ getNEMId()

NEMId EMANE::Application::TransportAdapter::getNEMId ( ) const
inline

Gets the NEM Id

Returns
NEM Id

Definition at line 80 of file transportadapter.h.

◆ initialize()

◆ postStart()

◆ processDownstreamControl()

◆ processDownstreamPacket()

◆ sendUpstreamControl()

void EMANE::DownstreamTransport::sendUpstreamControl ( const ControlMessages msgs)
inlineinherited

Send upstream control message

Parameters
msgsReference to the ControlMessages

Definition at line 44 of file downstreamtransport.inl.

◆ sendUpstreamPacket()

void EMANE::DownstreamTransport::sendUpstreamPacket ( UpstreamPacket pkt,
const ControlMessages msgs = empty 
)
inlineinherited

Send upstream packet

Parameters
pktReference to the UpstreamPacket to process
msgsoptional reference to the ControlMessages

Definition at line 37 of file downstreamtransport.inl.

◆ setBuildId()

void EMANE::Buildable::setBuildId ( BuildId  bid)
inlineinherited

Sets the application wide unique BuildId of this object. Builders assign a BuildId to objects at instantiation.

Parameters
bidthe BuildId
Note
: This method is for internal framework use only.

Definition at line 40 of file buildable.inl.

◆ setTransport()

virtual void EMANE::Application::TransportAdapter::setTransport ( std::unique_ptr< NEMLayer > &  pTransport)
pure virtual

Set the Transport

Parameters
pTransportpointer to the Transport instance to be

Implemented in EMANE::Application::TransportAdapterImpl.

◆ setUpstreamTransport()

virtual void EMANE::DownstreamTransport::setUpstreamTransport ( UpstreamTransport pUpstreamTransport)
inlinevirtualinherited

Set the upstream transport.

Parameters
pUpstreamTransportPointer to the upstream transport of this downstream transport.

Reimplemented in EMANE::NEMStatefulLayer, EMANE::MACLayer, EMANE::ShimLayer, EMANE::PHYLayer, and EMANE::TransportLayer.

Definition at line 79 of file downstreamtransport.h.

◆ start()

◆ stop()

Member Data Documentation

◆ empty

const EMANE::ControlMessages EMANE::DownstreamTransport::empty
staticinherited

Definition at line 102 of file downstreamtransport.h.

◆ id_

const NEMId EMANE::Application::TransportAdapter::id_
protected

Definition at line 86 of file transportadapter.h.


The documentation for this class was generated from the following file: