12#ifndef WSFMESSAGEPROCESSOR_HPP
13#define WSFMESSAGEPROCESSOR_HPP
15#include "wsf_export.h"
49 void TurnOff(
double aSimTime)
override;
51 void TurnOn(
double aSimTime)
override;
53 void Update(
double aSimTime)
override;
62 Action(
bool aIsDefaultAction);
143 bool CompleteRequest(
double aSimTime)
override;
160 void ProcessDelayedMessage(
double aSimTime,
const WsfMessage& aMessage,
Action* aActionPtr);
162 void ScheduleCompletionEvent(
double aSimTime,
const WsfMessage& aMessage,
Action* aActionPtr,
double aDelayTime);
165 std::list<Process> mProcessList;
189 Action* mCurrentActionPtr;
ut::script::Data UtScriptData
Definition WsfScriptContext.hpp:47
UtStringId WsfStringId
WsfStringId – the same thing as UtStringId.
Definition WsfStringId.hpp:23
#define WSF_EXPORT
Definition WsfXIO_Export.hpp:35
Definition WsfInternalLinks.hpp:30
Definition WsfMessageProcessor.hpp:58
WsfInternalLinks mInternalLinks
Definition WsfMessageProcessor.hpp:80
bool mIgnoreMessage
Definition WsfMessageProcessor.hpp:69
friend class WsfMessageProcessor
Definition WsfMessageProcessor.hpp:60
WsfRandomVariable mDelayTime
Definition WsfMessageProcessor.hpp:70
bool ProcessInput(UtInput &aInput, WsfMessageProcessor *aProcessorPtr, const std::string &aNamespace, bool aAllowScript)
Definition WsfMessageProcessor.cpp:429
bool mIsDefaultAction
Definition WsfMessageProcessor.hpp:68
Action(bool aIsDefaultAction)
Definition WsfMessageProcessor.cpp:393
bool Initialize(double aSimTime, WsfMessageProcessor *aProcessorPtr)
Definition WsfMessageProcessor.cpp:405
WsfStringId mScriptNameId
Definition WsfMessageProcessor.hpp:72
UtScript * mScriptPtr
Definition WsfMessageProcessor.hpp:71
wsf::ExternalLinks mExternalLinks
Definition WsfMessageProcessor.hpp:79
A unit of work within a time delay queue.
Definition WsfMessageProcessor.hpp:134
bool operator<(const DelayRequest &aRhs) const
Definition WsfMessageProcessor.hpp:141
DelayRequest(WsfMessageProcessor *aProcessorPtr, const WsfMessage &aMessage, Action *aActionPtr, double aDelayTime)
Definition WsfMessageProcessor.cpp:796
WsfMessage * mMessagePtr
Definition WsfMessageProcessor.hpp:146
WsfMessageProcessor * mProcessorPtr
Definition WsfMessageProcessor.hpp:145
Action * mActionPtr
Definition WsfMessageProcessor.hpp:147
int mPriority
Definition WsfMessageProcessor.hpp:149
Definition WsfMessageProcessor.hpp:118
std::list< Selector > mSelectorList
Definition WsfMessageProcessor.hpp:126
bool ProcessInput(UtInput &aInput, WsfMessageProcessor *aProcessorPtr, const std::string &aNamespace)
Definition WsfMessageProcessor.cpp:505
bool Initialize(double aSimTime, WsfMessageProcessor *aProcessorPtr)
Definition WsfMessageProcessor.cpp:493
Process()
Definition WsfMessageProcessor.cpp:486
Action mAction
Definition WsfMessageProcessor.hpp:127
Definition WsfMessageProcessor.hpp:86
int mSenderMask
Definition WsfMessageProcessor.hpp:112
UtScript * mScriptPtr
Definition WsfMessageProcessor.hpp:104
@ cPEER
Definition WsfMessageProcessor.hpp:91
@ cSUBORDINATE
Definition WsfMessageProcessor.hpp:92
@ cCOMMANDER
Definition WsfMessageProcessor.hpp:90
@ cSELF
Definition WsfMessageProcessor.hpp:93
WsfStringId mSensorNameId
Definition WsfMessageProcessor.hpp:108
WsfStringId mSystemNameId
Definition WsfMessageProcessor.hpp:111
WsfStringId mSensorModeId
Definition WsfMessageProcessor.hpp:110
WsfStringId mMessageTypeId
Definition WsfMessageProcessor.hpp:106
WsfStringId mScriptNameId
Definition WsfMessageProcessor.hpp:105
WsfStringId mMessageSubTypeId
Definition WsfMessageProcessor.hpp:107
Selector()
Definition WsfMessageProcessor.cpp:540
WsfStringId mSensorTypeId
Definition WsfMessageProcessor.hpp:109
bool ProcessAction(double aSimTime, const WsfMessage &aMessage)
Execute custom actions (scripts) based on the message type.
Definition WsfMessageProcessor.cpp:171
WsfMessageProcessor & operator=(const WsfMessageProcessor &)=delete
bool Initialize(double aSimTime) override
Definition WsfMessageProcessor.cpp:77
WsfMessageProcessor(WsfScenario &aScenario)
Definition WsfMessageProcessor.cpp:31
bool ProcessInput(UtInput &aInput) override
Definition WsfMessageProcessor.cpp:103
A base class for messages sent among simulation communication objects, processors and sensors.
Definition WsfMessage.hpp:33
void TurnOn(double aSimTime) override
Definition WsfProcessor.cpp:183
WsfProcessor(const WsfScenario &aScenario)
Definition WsfProcessor.cpp:25
void TurnOff(double aSimTime) override
Definition WsfProcessor.cpp:169
Definition WsfRandomVariable.hpp:33
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
void Update(double aSimTime) override
Definition WsfScriptProcessor.cpp:281
WsfProcessor * Clone() const override
Definition WsfScriptProcessor.cpp:97
WsfScriptProcessor(const WsfScenario &aScenario)
Definition WsfScriptProcessor.cpp:30
bool Initialize(double aSimTime) override
Definition WsfScriptProcessor.cpp:104
bool ProcessInput(UtInput &aInput) override
Definition WsfScriptProcessor.cpp:186
void SendMessage(double aSimTime, const WsfMessage &aMessage) override
Definition WsfScriptProcessor.cpp:344
bool ProcessMessage(double aSimTime, const WsfMessage &aMessage) override
Definition WsfScriptProcessor.cpp:300
Definition WsfTimeDelayQueue.hpp:63
Definition WsfTimeDelayQueue.hpp:48
Definition WsfExternalLinks.hpp:62