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

#include <OscillatorBase.h>

Inheritance diagram for inet::OscillatorBase:
inet::IOscillator inet::StringFormat::IDirectiveResolver inet::DriftingOscillatorBase inet::IdealOscillator inet::ConstantDriftOscillator inet::RandomDriftOscillator

Public Member Functions

virtual const char * resolveDirective (char directive) const override
 
- Public Member Functions inherited from inet::IOscillator
virtual ~IOscillator ()
 
virtual simtime_t getNominalTickLength () const =0
 Returns the nominal time interval between subsequent ticks. More...
 
virtual simtime_t getComputationOrigin () const =0
 Returns the oscillator computation origin from which the ticks are measured. More...
 
virtual int64_t computeTicksForInterval (simtime_t timeInterval) const =0
 Returns the number of ticks in the specified time interval measured from the oscillator computation origin. More...
 
virtual simtime_t computeIntervalForTicks (int64_t numTicks) const =0
 Returns the smallest simulation time interval for the specified number of ticks measured from the oscillator computation origin. More...
 

Static Public Attributes

static simsignal_t driftRateChangedSignal = cComponent::registerSignal("driftRateChanged")
 
- Static Public Attributes inherited from inet::IOscillator
static simsignal_t preOscillatorStateChangedSignal = cComponent::registerSignal("preOscillatorStateChanged")
 
static simsignal_t postOscillatorStateChangedSignal = cComponent::registerSignal("postOscillatorStateChanged")
 

Protected Member Functions

virtual int numInitStages () const override
 
virtual void initialize (int stage) override
 
virtual void updateDisplayString () const
 

Protected Attributes

const char * displayStringTextFormat = nullptr
 

Member Function Documentation

◆ initialize()

void inet::OscillatorBase::initialize ( int  stage)
overrideprotectedvirtual

◆ numInitStages()

virtual int inet::OscillatorBase::numInitStages ( ) const
inlineoverrideprotectedvirtual
25 { return NUM_INIT_STAGES; }

◆ resolveDirective()

const char * inet::OscillatorBase::resolveDirective ( char  directive) const
overridevirtual

Implements inet::StringFormat::IDirectiveResolver.

Reimplemented in inet::DriftingOscillatorBase.

31 {
32  static std::string result;
33  switch (directive) {
34  case 'n':
35  result = getNominalTickLength().str() + " s";
36  break;
37  case 'o':
38  result = getComputationOrigin().str() + " s";
39  break;
40  default:
41  throw cRuntimeError("Unknown directive: %c", directive);
42  }
43  return result.c_str();
44 }

Referenced by inet::DriftingOscillatorBase::resolveDirective().

◆ updateDisplayString()

void inet::OscillatorBase::updateDisplayString ( ) const
protectedvirtual
23 {
24  if (getEnvir()->isGUI()) {
26  getDisplayString().setTagArg("t", 0, text);
27  }
28 }

Referenced by initialize(), inet::DriftingOscillatorBase::setDriftRate(), and inet::DriftingOscillatorBase::setTickOffset().

Member Data Documentation

◆ displayStringTextFormat

const char* inet::OscillatorBase::displayStringTextFormat = nullptr
protected

Referenced by initialize(), and updateDisplayString().

◆ driftRateChangedSignal

simsignal_t inet::OscillatorBase::driftRateChangedSignal = cComponent::registerSignal("driftRateChanged")
static

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::OscillatorBase::displayStringTextFormat
const char * displayStringTextFormat
Definition: OscillatorBase.h:22
inet::INITSTAGE_LOCAL
INET_API InitStage INITSTAGE_LOCAL
Initialization of local state that don't use or affect other modules includes:
NUM_INIT_STAGES
#define NUM_INIT_STAGES
Definition: InitStageRegistry.h:73
inet::OscillatorBase::updateDisplayString
virtual void updateDisplayString() const
Definition: OscillatorBase.cc:22
inet::StringFormat::formatString
const char * formatString(IDirectiveResolver *resolver) const
Definition: StringFormat.cc:17
inet::IOscillator::getComputationOrigin
virtual simtime_t getComputationOrigin() const =0
Returns the oscillator computation origin from which the ticks are measured.
inet::IOscillator::getNominalTickLength
virtual simtime_t getNominalTickLength() const =0
Returns the nominal time interval between subsequent ticks.