12#ifndef WSFCOMMMEDIUMGUIDED_HPP
13#define WSFCOMMMEDIUMGUIDED_HPP
15#include "wsf_export.h"
45 bool ProcessInput(UtInput& aInput)
override;
46 double GetTransmissionTime(
double aSimTime,
Comm& aXmtr,
Layer* aLayerPtr,
Message& aMessage)
override;
47 double GetPropagationTime(
double aSimTime,
Comm& aXmtr,
Comm& aRcvr,
Message& aMessage)
override;
48 double GetPacketLossTime(
double aSimTime,
Message& aMessage)
override;
88 Guided* Clone()
const override;
89 bool ProcessInput(UtInput& aInput)
override;
91 std::unique_ptr<Mode>
CreateDefaultMode()
const override {
return ut::make_unique<ModeGuided>(); }
#define WSF_COMM_MEDIUM_DECLARE_ROLE_TYPE(TYPE, ROLE)
Definition WsfCommMediumTypeIdentifier.hpp:34
#define WSF_EXPORT
Definition WsfXIO_Export.hpp:35
Definition WsfRandomVariable.hpp:33
@ cPOSITIVE
Value must be greater than zero.
Definition WsfRandomVariable.hpp:49
@ cNON_NEGATIVE
Value must be greater than or equal to zero.
Definition WsfRandomVariable.hpp:50
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
Definition WsfComm.hpp:43
Definition WsfCommLayer.hpp:40
Definition WsfCommMessage.hpp:95
Definition WsfCommMessage.hpp:51
Definition WsfCommMediumGuided.hpp:79
Guided(WsfScenario &aScenario)
Definition WsfCommMediumGuided.cpp:191
static void RegisterFactory(Types &aTypes)
Definition WsfCommMediumGuided.cpp:199
std::unique_ptr< Mode > CreateDefaultMode() const override
Definition WsfCommMediumGuided.hpp:91
TypeIdentifier GetMediumIdentifier() const override
Definition WsfCommMediumGuided.hpp:87
~Guided() override=default
const char * GetScriptClassName() const override
Definition WsfCommMediumGuided.hpp:86
Medium(WsfScenario &aScenario)
Definition WsfCommMedium.cpp:52
Definition WsfCommMediumMessageStatus.hpp:35
WsfRandomVariable & GetPropagationSpeed()
Definition WsfCommMediumGuided.hpp:50
WsfRandomVariable & GetDelayTime()
Definition WsfCommMediumGuided.hpp:52
const char * GetScriptClassName() const override
Definition WsfCommMediumGuided.hpp:43
~ModeGuided() override=default
ModeGuided(const std::string &aName)
Definition WsfCommMediumGuided.hpp:35
ModeGuided * Clone() const override
Definition WsfCommMediumGuided.hpp:41
WsfRandomVariable & GetTransferRate()
Definition WsfCommMediumGuided.hpp:51
ModeGuided(const ModeGuided &aSrc)=default
ScriptMediumModeClass(const std::string &aClassName, UtScriptTypes *aScriptTypesPtr)
Definition WsfCommMedium.cpp:34
UT_DECLARE_SCRIPT_METHOD(GetPropagationSpeed)
UT_DECLARE_SCRIPT_METHOD(GetTransferRate)
UT_DECLARE_SCRIPT_METHOD(GetPacketLossTime)
ScriptMediumModeGuidedClass(const std::string &aClassName, UtScriptTypes *aScriptTypesPtr)
Definition WsfCommMediumGuided.cpp:159
~ScriptMediumModeGuidedClass() override=default
Definition WsfCommMediumTypes.hpp:40
Definition WsfCommMedium.cpp:31
TypeIdentifier
Definition WsfCommMediumTypeIdentifier.hpp:50
@ cGUIDED
Definition WsfCommMediumTypeIdentifier.hpp:52
TransmissionResult
Definition WsfCommMedium.hpp:48
Definition WsfComm.cpp:34
Function definitions for those who need run-time access to the version.
Definition WsfComm.cpp:32