|
WSF
|
A base class defining the interface for the implementation classes. (Implementor). More...
#include <WsfCommLayer.hpp>

Public Member Functions | |
| virtual | ~LayerImp ()=default |
Upper/Lower layer methods, pushed down to this object for retrieval directly from | |
the implementation from the layer. | |
| void | SetUpperLayer (Layer *aLayerPtr) |
| Layer * | GetUpperLayer () const |
| void | SetLowerLayer (Layer *aLayerPtr) |
| Layer * | GetLowerLayer () const |
| bool | DebugEnabled () const |
| Determine if debugging is enabled. | |
| void | SetDebugEnabled (bool aDebugEnabled) |
Common infrastructure methods. | |
| virtual LayerImp * | Clone () const =0 |
| virtual bool | Initialize (double aSimTime)=0 |
| virtual bool | Initialize2 (double aSimTime) |
| virtual bool | ProcessInput (UtInput &aInput)=0 |
| virtual bool | Receive (double aSimTime, Comm *aXmtrPtr, Message &aMessage, bool &aNotifyNextLayer)=0 |
| virtual bool | Send (double aSimTime, size_t aLayerIndex, Message &aMessage, bool &aNotifyNextLayer)=0 |
| virtual bool | ProcessLayerMessage (double aSimTime, layer::Message aLayerMessage, Message *aCommMessagePtr)=0 |
Methods to access the owning communication device. | |
| Comm * | Parent () const |
| void | SetParent (Comm *aParentCommPtr) |
Indexing methods, pushed down to this object for retrieval directly from | |
the implementation from the layer. | |
| void | SetIndex (size_t aIndex) |
| size_t | GetIndex () const |
A base class defining the interface for the implementation classes. (Implementor).
|
virtualdefault |
|
pure virtual |
Implemented in wsf::comm::ApplicationLayer, wsf::comm::DatalinkLayer, wsf::comm::NetworkLayer, wsf::comm::PhysicalLayer, wsf::comm::PhysicalLayerJTIDS, wsf::comm::PhysicalLayerLaser, wsf::comm::PresentationLayer, wsf::comm::SessionLayer, wsf::comm::SlotGroupLayerJTIDS, and wsf::comm::TransportLayer.
|
inline |
Determine if debugging is enabled.
Referenced by wsf::comm::DatalinkLayer::AddToQueue(), wsf::comm::DatalinkLayer::PurgeQueue(), wsf::comm::SlotGroupLayerJTIDS::Receive(), wsf::comm::PhysicalLayer::Send(), wsf::comm::SlotGroupLayerJTIDS::Send(), wsf::comm::DatalinkLayer::TransmitComplete(), and wsf::comm::DatalinkLayer::TransmitFailed().
|
inline |
Referenced by wsf::comm::DatalinkLayer::AddToQueue(), wsf::comm::medium::Unguided::EndPropagation(), wsf::comm::medium::Guided::EndTransmission(), wsf::comm::medium::Unguided::EndTransmission(), wsf::comm::NetworkLayer::ProcessLayerMessage(), wsf::comm::PhysicalLayer::ProcessLayerMessage(), wsf::comm::DatalinkLayer::PurgeQueue(), wsf::comm::DatalinkLayer::ReadyToTransmit(), wsf::comm::ApplicationLayer::Receive(), wsf::comm::DatalinkLayer::Receive(), wsf::comm::NetworkLayer::Receive(), wsf::comm::PhysicalLayer::Receive(), wsf::comm::PresentationLayer::Receive(), wsf::comm::SessionLayer::Receive(), wsf::comm::TransportLayer::Receive(), wsf::comm::ApplicationLayer::Send(), wsf::comm::DatalinkLayer::Send(), wsf::comm::NetworkLayer::Send(), wsf::comm::PhysicalLayer::Send(), wsf::comm::PresentationLayer::Send(), wsf::comm::SessionLayer::Send(), wsf::comm::TransportLayer::Send(), wsf::comm::DatalinkLayer::TransmitComplete(), and wsf::comm::DatalinkLayer::TransmitFailed().
|
inline |
|
inline |
|
pure virtual |
Implemented in wsf::comm::ApplicationLayer, wsf::comm::DatalinkLayer, wsf::comm::NetworkLayer, wsf::comm::PhysicalLayer, wsf::comm::PhysicalLayerJTIDS, wsf::comm::PhysicalLayerLaser, wsf::comm::PresentationLayer, wsf::comm::SessionLayer, wsf::comm::SlotGroupLayerJTIDS, and wsf::comm::TransportLayer.
Referenced by wsf::comm::Layer::Initialize().
|
inlinevirtual |
Reimplemented in wsf::comm::NetworkLayer.
Referenced by wsf::comm::Layer::Initialize2().
| Comm * wsf::comm::LayerImp::Parent | ( | ) | const |
Referenced by wsf::comm::DatalinkLayer::AddToQueue(), wsf::comm::PhysicalLayer::CanReceiveFrom(), wsf::comm::PhysicalLayerLaser::Initialize(), wsf::comm::SlotGroupLayerJTIDS::Initialize(), ProcessLayerMessage(), wsf::comm::NetworkLayer::ProcessLayerMessage(), wsf::comm::PhysicalLayer::ProcessLayerMessage(), wsf::comm::DatalinkLayer::PurgeQueue(), wsf::comm::DatalinkLayer::ReadyToTransmit(), wsf::comm::ApplicationLayer::Receive(), wsf::comm::DatalinkLayer::Receive(), wsf::comm::NetworkLayer::Receive(), wsf::comm::PhysicalLayer::Receive(), wsf::comm::PresentationLayer::Receive(), wsf::comm::SessionLayer::Receive(), wsf::comm::SlotGroupLayerJTIDS::Receive(), wsf::comm::TransportLayer::Receive(), wsf::comm::ApplicationLayer::Send(), wsf::comm::DatalinkLayer::Send(), wsf::comm::NetworkLayer::Send(), wsf::comm::PhysicalLayer::Send(), wsf::comm::PresentationLayer::Send(), wsf::comm::SessionLayer::Send(), wsf::comm::SlotGroupLayerJTIDS::Send(), wsf::comm::TransportLayer::Send(), wsf::comm::DatalinkLayer::TransmitComplete(), and wsf::comm::DatalinkLayer::TransmitFailed().
|
pure virtual |
Implemented in wsf::comm::ApplicationLayer, wsf::comm::DatalinkLayer, wsf::comm::NetworkLayer, wsf::comm::PhysicalLayer, wsf::comm::PhysicalLayerJTIDS, wsf::comm::PresentationLayer, wsf::comm::SessionLayer, wsf::comm::SlotGroupLayerJTIDS, and wsf::comm::TransportLayer.
Referenced by wsf::comm::Layer::ProcessInput().
|
pure virtual |
Process a layer event.
| aSimTime | [input] The current simulation time. |
| aLayerMessage | [input] The layer message. |
| aCommMessagePtr | [input] The message being processed. |
Implemented in wsf::comm::ApplicationLayer, wsf::comm::DatalinkLayer, wsf::comm::NetworkLayer, wsf::comm::PhysicalLayer, wsf::comm::PhysicalLayerJTIDS, wsf::comm::PresentationLayer, wsf::comm::SessionLayer, wsf::comm::SlotGroupLayerJTIDS, and wsf::comm::TransportLayer.
References Parent(), and SetParent().
Referenced by wsf::comm::Layer::ProcessLayerMessage().
|
pure virtual |
Receive the message in this layer.
| aSimTime | [input] The current simulation time. |
| aXmtrPtr | [input] The comm device that sent the message. |
| aMessage | [input] The communication message being received. |
| aNotifyNextLayer | [output] True if the next layer above this one should immediately process this message. |
Implemented in wsf::comm::ApplicationLayer, wsf::comm::DatalinkLayer, wsf::comm::NetworkLayer, wsf::comm::PhysicalLayer, wsf::comm::PhysicalLayerJTIDS, wsf::comm::PresentationLayer, wsf::comm::SessionLayer, wsf::comm::SlotGroupLayerJTIDS, and wsf::comm::TransportLayer.
Referenced by wsf::comm::Layer::Receive().
|
pure virtual |
Send the message to this layer.
| aSimTime | [input] The current simulation time. |
| aLayerIndex | [input] The index in the protocol stack for this layer. |
| aMessage | [input] The communication message being received. |
| aNotifyNextLayer | [output] True if the next layer below this one should immediately process this message. |
Implemented in wsf::comm::ApplicationLayer, wsf::comm::DatalinkLayer, wsf::comm::NetworkLayer, wsf::comm::PhysicalLayer, wsf::comm::PhysicalLayerJTIDS, wsf::comm::PresentationLayer, wsf::comm::SessionLayer, wsf::comm::SlotGroupLayerJTIDS, and wsf::comm::TransportLayer.
Referenced by wsf::comm::Layer::Send().
|
inline |
Set the debug state.
| aDebugEnabled | New debug state |
Referenced by wsf::comm::Layer::SetDebugEnabled().
|
inline |
Referenced by wsf::comm::Layer::SetIndex().
|
inline |
| void wsf::comm::LayerImp::SetParent | ( | Comm * | aParentCommPtr | ) |
Referenced by wsf::comm::Layer::Layer(), ProcessLayerMessage(), and wsf::comm::Layer::SetParent().
|
inline |