INET Framework for OMNeT++/OMNEST
inet::visualizer::NetworkConnectionVisualizerBase Class Referenceabstract

#include <NetworkConnectionVisualizerBase.h>

Inheritance diagram for inet::visualizer::NetworkConnectionVisualizerBase:
inet::visualizer::VisualizerBase inet::visualizer::NetworkConnectionCanvasVisualizer inet::visualizer::NetworkConnectionOsgVisualizer

Protected Member Functions

virtual void initialize (int stage) override
 
virtual void handleParameterChange (const char *name) override
 
virtual void createNetworkConnectionVisualization (cModule *startNetworkNode, cModule *endNetworkNode)=0
 
- Protected Member Functions inherited from inet::visualizer::VisualizerBase
virtual int numInitStages () const override
 
virtual Coord getPosition (const cModule *networkNode) const
 
virtual Coord getContactPosition (const cModule *networkNode, const Coord &fromPosition, const char *contactMode, double contactSpacing) const
 
virtual Quaternion getOrientation (const cModule *networkNode) const
 
virtual void mapChunks (const Ptr< const Chunk > &chunk, const std::function< void(const Ptr< const Chunk > &, int)> &thunk) const
 

Protected Attributes

NetworkNodeFilter nodeFilter
 
cFigure::Color lineColor
 
cFigure::LineStyle lineStyle = cFigure::LINE_SOLID
 
double lineWidth = NaN
 
- Protected Attributes inherited from inet::visualizer::VisualizerBase
cModule * visualizationTargetModule = nullptr
 
cModule * visualizationSubjectModule = nullptr
 
const char * tags = nullptr
 

Member Function Documentation

◆ createNetworkConnectionVisualization()

virtual void inet::visualizer::NetworkConnectionVisualizerBase::createNetworkConnectionVisualization ( cModule *  startNetworkNode,
cModule *  endNetworkNode 
)
protectedpure virtual

◆ handleParameterChange()

void inet::visualizer::NetworkConnectionVisualizerBase::handleParameterChange ( const char *  name)
overrideprotectedvirtual
42 {
43  if (!hasGUI()) return;
44  if (name != nullptr) {
45  if (!strcmp(name, "nodeFilter"))
46  nodeFilter.setPattern(par("nodeFilter"));
47  // TODO
48  }
49 }

◆ initialize()

void inet::visualizer::NetworkConnectionVisualizerBase::initialize ( int  stage)
overrideprotectedvirtual

Reimplemented from inet::visualizer::VisualizerBase.

Reimplemented in inet::visualizer::NetworkConnectionCanvasVisualizer, and inet::visualizer::NetworkConnectionOsgVisualizer.

17 {
19  if (!hasGUI()) return;
20  if (stage == INITSTAGE_LOCAL) {
21  nodeFilter.setPattern(par("nodeFilter"));
22  lineColor = cFigure::Color(par("lineColor"));
23  lineStyle = cFigure::parseLineStyle(par("lineStyle"));
24  lineWidth = par("lineWidth");
25  }
26  else if (stage == INITSTAGE_LAST) {
27  for (cModule::SubmoduleIterator it(visualizationSubjectModule); !it.end(); it++) {
28  auto networkNode = *it;
29  if (isNetworkNode(networkNode) && nodeFilter.matches(networkNode)) {
30  for (cModule::GateIterator gt(networkNode); !gt.end(); gt++) {
31  auto gate = *gt;
32  auto startNetworkNode = getContainingNode(gate->getPathStartGate()->getOwnerModule());
33  auto endNetworkNode = getContainingNode(gate->getPathEndGate()->getOwnerModule());
34  createNetworkConnectionVisualization(startNetworkNode, endNetworkNode);
35  }
36  }
37  }
38  }
39 }

Referenced by inet::visualizer::NetworkConnectionOsgVisualizer::initialize(), and inet::visualizer::NetworkConnectionCanvasVisualizer::initialize().

Member Data Documentation

◆ lineColor

◆ lineStyle

cFigure::LineStyle inet::visualizer::NetworkConnectionVisualizerBase::lineStyle = cFigure::LINE_SOLID
protected

◆ lineWidth

◆ nodeFilter

NetworkNodeFilter inet::visualizer::NetworkConnectionVisualizerBase::nodeFilter
protected

The documentation for this class was generated from the following files:
inet::INITSTAGE_LAST
INET_API InitStage INITSTAGE_LAST
Operations that no other initializations can depend on, e.g.
inet::visualizer::NetworkConnectionVisualizerBase::lineWidth
double lineWidth
Definition: NetworkConnectionVisualizerBase.h:24
inet::visualizer::NetworkConnectionVisualizerBase::createNetworkConnectionVisualization
virtual void createNetworkConnectionVisualization(cModule *startNetworkNode, cModule *endNetworkNode)=0
inet::getContainingNode
cModule * getContainingNode(const cModule *from)
Find the node containing the given module.
Definition: ModuleAccess.cc:40
inet::visualizer::NetworkNodeFilter::matches
bool matches(const cModule *module) const
Definition: NetworkNodeFilter.cc:19
inet::visualizer::NetworkConnectionVisualizerBase::nodeFilter
NetworkNodeFilter nodeFilter
Definition: NetworkConnectionVisualizerBase.h:21
inet::visualizer::NetworkNodeFilter::setPattern
void setPattern(const char *pattern)
Definition: NetworkNodeFilter.cc:14
inet::INITSTAGE_LOCAL
INET_API InitStage INITSTAGE_LOCAL
Initialization of local state that don't use or affect other modules includes:
inet::visualizer::NetworkConnectionVisualizerBase::lineColor
cFigure::Color lineColor
Definition: NetworkConnectionVisualizerBase.h:22
inet::isNetworkNode
bool isNetworkNode(const cModule *mod)
Returns true if the given module is a network node, i.e.
Definition: ModuleAccess.cc:18
inet::visualizer::NetworkConnectionVisualizerBase::lineStyle
cFigure::LineStyle lineStyle
Definition: NetworkConnectionVisualizerBase.h:23
inet::DiffservUtil::Color
Color
Definition: DiffservUtil.h:17
inet::visualizer::VisualizerBase::visualizationSubjectModule
cModule * visualizationSubjectModule
Definition: VisualizerBase.h:26
inet::visualizer::VisualizerBase::initialize
virtual void initialize(int stage) override
Definition: VisualizerBase.cc:23