|
WSF
|
#include <WsfJTIDS_SlotGroup.hpp>
Classes | |
| class | QueueEntry |
| class | TransmitHeartbeatEvent |
Public Member Functions | |
| WsfJTIDS_SlotGroup (wsf::comm::SlotGroupLayerJTIDS *aLayerPtr, const std::string &aGroupName, const std::string &aSourceGroupName) | |
| Construct a slot group. | |
| WsfJTIDS_SlotGroup (const WsfJTIDS_SlotGroup &aSrc, wsf::comm::SlotGroupLayerJTIDS *aLayerPtr) | |
| Copy constructor. | |
| virtual | ~WsfJTIDS_SlotGroup () |
| void | AddToNetwork () |
| Add the slot group to the corresponding network. | |
| double | BeginTransmitEvent (double aSimTime) |
Static Public Member Functions | |
| static void | ClearNetGroups () |
Callback lists. | |
| UtCallbackListN< void(double, const WsfMessage *, int, WsfJTIDS_SlotGroup *)> | MessageSent |
| WsfStringId | GetNameId () const |
| Return the name ID of the slot group. | |
| int | GetNetwork () const |
| Return the JTIDS network number. | |
| int | GetTSEC () const |
| Return the JTIDS TSEC value. | |
| int | GetMSEC () const |
| Return the JTIDS MSEC value. | |
| int | GetNPG () const |
| Return the Network Participation Group. | |
| int | GetSlotsPerFrame () const |
| Returns the number of slots per frame. | |
| int | GetTransmitSlotsPerFrame () const |
| Returns the number of slots allocated for transmitting. | |
| double | GetNextTransmitTime (double aSimTime) |
| bool | DebugEnabled () const |
| wsf::comm::Comm * | GetTerminal () const |
| WsfSimulation * | GetSimulation () const |
| bool | Initialize (double aSimTime) |
| Standard Initialize() method. | |
| bool | ProcessInput (UtInput &aInput) |
| Standard ProcessInput() method. | |
| void | PurgeQueuedMessages () |
| Purge all queued messages in the slot group. | |
| void | RemoveFromNetwork () |
| Remove the slot group from the network. | |
| bool | SendMessage (double aSimTime, const WsfMessage &aMessage, WsfPlatform *aRecipientPtr, bool aSource=true) |
| See WsfComm::SendMessage. | |
| void | StartupTransmitEvents (double aSimTime) |
| double | TransmitCompleteEvent (double aSimTime) |
| void | TransmitEventsStopped () |
A 'slot group' represents a collection of associated Time Slot Blocks (TSBs)
JTIDS network design is accomplished by creating groups of TSBs called 'slot groups'. A slot group is a basically a subdivision of Network Participation Group (NPG) that represents the slots used to perform a function (transmit, receive, relay) within an NPG.
| WsfJTIDS_SlotGroup::WsfJTIDS_SlotGroup | ( | wsf::comm::SlotGroupLayerJTIDS * | aLayerPtr, |
| const std::string & | aGroupName, | ||
| const std::string & | aSourceGroupName ) |
| WsfJTIDS_SlotGroup::WsfJTIDS_SlotGroup | ( | const WsfJTIDS_SlotGroup & | aSrc, |
| wsf::comm::SlotGroupLayerJTIDS * | aLayerPtr ) |
Copy constructor.
References WsfJTIDS_SlotGroup().
|
virtual |
References PurgeQueuedMessages(), and RemoveFromNetwork().
| void WsfJTIDS_SlotGroup::AddToNetwork | ( | ) |
Add the slot group to the corresponding network.
References DebugEnabled().
Referenced by Initialize().
| double WsfJTIDS_SlotGroup::BeginTransmitEvent | ( | double | aSimTime | ) |
Internal method called from WsfJTIDS_SlotGroup::CommEvent::Execute().
This is called to begin the transmission of the top message in the queue.
References WsfSimulation::AddEvent(), DebugEnabled(), WsfPlatformPart::GetPlatform(), GetSimulation(), GetTerminal(), WsfObserver::MessageTransmitted(), WsfJTIDS_SlotGroup::QueueEntry::mMessagePtr, WsfJTIDS_SlotGroup::QueueEntry::mTransmitCompleteTime, platformPtr, and wsf::comm::Message::SourceMessage().
|
static |
| bool WsfJTIDS_SlotGroup::DebugEnabled | ( | ) | const |
Referenced by AddToNetwork(), BeginTransmitEvent(), RemoveFromNetwork(), TransmitCompleteEvent(), and TransmitEventsStopped().
|
inline |
Return the JTIDS MSEC value.
Referenced by WsfL16::SlotParameters::Set().
|
inline |
Return the name ID of the slot group.
|
inline |
Return the JTIDS network number.
Referenced by WsfL16::SlotParameters::Set().
| double WsfJTIDS_SlotGroup::GetNextTransmitTime | ( | double | aSimTime | ) |
|
inline |
Return the Network Participation Group.
Referenced by WsfL16::SlotParameters::Set().
| WsfSimulation * WsfJTIDS_SlotGroup::GetSimulation | ( | ) | const |
|
inline |
Returns the number of slots per frame.
Referenced by Initialize().
| wsf::comm::Comm * WsfJTIDS_SlotGroup::GetTerminal | ( | ) | const |
Referenced by BeginTransmitEvent(), TransmitCompleteEvent(), and TransmitEventsStopped().
|
inline |
Returns the number of slots allocated for transmitting.
|
inline |
Return the JTIDS TSEC value.
Referenced by WsfL16::SlotParameters::Set().
| bool WsfJTIDS_SlotGroup::Initialize | ( | double | aSimTime | ) |
Standard Initialize() method.
References AddToNetwork(), WsfSimulation::GetRandom(), GetSimulation(), GetSlotsPerFrame(), ok, RemoveFromNetwork(), sort(), and WsfJTIDS_SlotGroup().
| bool WsfJTIDS_SlotGroup::ProcessInput | ( | UtInput & | aInput | ) |
Standard ProcessInput() method.
| void WsfJTIDS_SlotGroup::PurgeQueuedMessages | ( | ) |
Purge all queued messages in the slot group.
Referenced by ~WsfJTIDS_SlotGroup().
| void WsfJTIDS_SlotGroup::RemoveFromNetwork | ( | ) |
Remove the slot group from the network.
References DebugEnabled().
Referenced by Initialize(), and ~WsfJTIDS_SlotGroup().
| bool WsfJTIDS_SlotGroup::SendMessage | ( | double | aSimTime, |
| const WsfMessage & | aMessage, | ||
| WsfPlatform * | aRecipientPtr, | ||
| bool | aSource = true ) |
See WsfComm::SendMessage.
References WsfPlatform::GetIndex(), WsfJTIDS_SlotGroup::QueueEntry::mTimeSlotsNeeded, and ok.
| void WsfJTIDS_SlotGroup::StartupTransmitEvents | ( | double | aSimTime | ) |
References GetSimulation().
| double WsfJTIDS_SlotGroup::TransmitCompleteEvent | ( | double | aSimTime | ) |
Internal method called from WsfJTIDS_Terminal::CommEvent::Execute().
This is called to completed the transmission of the top message in the queue.
References DebugEnabled(), GetSimulation(), GetTerminal(), WsfJTIDS_SlotGroup::QueueEntry::mBeginTransmitTime, MessageSent, WsfObserver::MessageTransmitEnded(), WsfJTIDS_SlotGroup::QueueEntry::mMessagePtr, WsfJTIDS_SlotGroup::QueueEntry::mTimeSlotsNeeded, WsfJTIDS_SlotGroup::QueueEntry::mTransmitCompleteTime, WsfJTIDS_SlotGroup::QueueEntry::mTransmitSlotIndex, and wsf::comm::Message::SourceMessage().
| void WsfJTIDS_SlotGroup::TransmitEventsStopped | ( | ) |
| UtCallbackListN<void(double, const WsfMessage*, int, WsfJTIDS_SlotGroup*)> WsfJTIDS_SlotGroup::MessageSent |
Referenced by TransmitCompleteEvent().