INET Framework for OMNeT++/OMNEST
inet::AlwaysOpenGateScheduleConfigurator Class Reference

#include <AlwaysOpenGateScheduleConfigurator.h>

Inheritance diagram for inet::AlwaysOpenGateScheduleConfigurator:
inet::GateScheduleConfiguratorBase inet::NetworkConfiguratorBase

Protected Member Functions

virtual OutputcomputeGateScheduling (const Input &input) const override
 
- Protected Member Functions inherited from inet::GateScheduleConfiguratorBase
virtual void initialize (int stage) override
 
virtual void handleParameterChange (const char *name) override
 
virtual void handleMessage (cMessage *msg) override
 
virtual void clearConfiguration ()
 
virtual void computeConfiguration ()
 
virtual InputcreateGateSchedulingInput () const
 
virtual void addDevices (Input &input) const
 
virtual void addSwitches (Input &input) const
 
virtual void addPorts (Input &input) const
 
virtual void addFlows (Input &input) const
 
virtual void configureGateScheduling ()
 
virtual void configureGateScheduling (cModule *networkNode, cModule *gate, Interface *interface)
 
virtual void configureApplicationOffsets ()
 
- Protected Member Functions inherited from inet::NetworkConfiguratorBase
virtual ~NetworkConfiguratorBase ()
 
virtual int numInitStages () const override
 
virtual void extractTopology (Topology &topology)
 Extracts network topology by walking through the module hierarchy. More...
 
virtual std::vector< Node * > computeShortestNodePath (Node *source, Node *destination) const
 
virtual std::vector< Link * > computeShortestLinkPath (Node *source, Node *destination) const
 
virtual bool isBridgeNode (Node *node) const
 
virtual LinkfindLinkIn (const Node *node, const char *neighbor) const
 
virtual LinkfindLinkOut (const Node *node, const char *neighbor) const
 
virtual LinkfindLinkOut (const Node *node, const Node *neighbor) const
 
virtual LinkfindLinkOut (const Interface *interface) const
 
virtual Topology::LinkfindLinkOut (const Node *node, int gateId) const
 
virtual InterfacefindInterface (const Node *node, NetworkInterface *networkInterface) const
 

Additional Inherited Members

- Public Member Functions inherited from inet::GateScheduleConfiguratorBase
virtual ~GateScheduleConfiguratorBase ()
 
- Protected Attributes inherited from inet::GateScheduleConfiguratorBase
simtime_t gateCycleDuration
 
cValueArray * configuration = nullptr
 
InputgateSchedulingInput = nullptr
 
OutputgateSchedulingOutput = nullptr
 
- Protected Attributes inherited from inet::NetworkConfiguratorBase
Topologytopology = nullptr
 

Member Function Documentation

◆ computeGateScheduling()

AlwaysOpenGateScheduleConfigurator::Output * inet::AlwaysOpenGateScheduleConfigurator::computeGateScheduling ( const Input input) const
overrideprotectedvirtual

Implements inet::GateScheduleConfiguratorBase.

15 {
16  auto output = new Output();
17  for (auto port : input.ports) {
18  for (int gateIndex = 0; gateIndex < port->numGates; gateIndex++) {
19  Output::Schedule *schedule = new Output::Schedule();
20  schedule->port = port;
21  schedule->gateIndex = gateIndex;
22  schedule->cycleStart = 0;
23  schedule->cycleDuration = gateCycleDuration;
24  Output::Slot slot;
25  slot.start = 0;
26  slot.duration = gateCycleDuration;
27  schedule->slots.push_back(slot);
28  output->gateSchedules[port].push_back(schedule);
29  }
30  }
31  for (auto application : input.applications)
32  output->applicationStartTimes[application] = 0;
33  return output;
34 }

The documentation for this class was generated from the following files:
inet::GateScheduleConfiguratorBase::gateCycleDuration
simtime_t gateCycleDuration
Definition: GateScheduleConfiguratorBase.h:195