12#ifndef WSFXIO_SCRIPTSERVICE_HPP
13#define WSFXIO_SCRIPTSERVICE_HPP
15#include "wsf_export.h"
19#include "UtCallbackHolder.hpp"
21#include "UtScriptData.hpp"
22#include "UtScriptDebugger.hpp"
23class UtScriptExecutor;
24struct UtScriptExecutorProgramCounter;
42 std::vector<UtScriptData>& aParams,
44 UtScriptTypes* aScriptTypes,
47 static bool CheckParams(
const std::vector<std::string>& aArgTypes,
48 std::vector<UtScriptData>& aParams,
50 UtScriptTypes* aScriptTypes,
56 using ScriptMap = std::map<UtScriptData, UtScriptData>;
65 std::vector<int>& aAddress);
77 void OnBreak(UtScriptDebugger::BreakType aBreakType);
81 void SendState(UtScriptDebugger::BreakType aBreakType,
bool aIsInitialSend =
false);
89 void UpdateWhileAtBreak();
93 void InitializeEnumerateScripts();
96 UtScriptExecutor& aContextExecutor,
97 UtScriptExecutorProgramCounter* pc,
98 std::string aExpression);
ut::script::Data UtScriptData
Definition WsfScriptContext.hpp:47
#define WSF_EXPORT
Definition WsfXIO_Export.hpp:35
The main controller for a simulation.
Definition WsfSimulation.hpp:109
Definition WsfXIO_PacketRegistry.hpp:1454
Definition WsfXIO_PacketRegistry.hpp:1689
Definition WsfXIO_PacketRegistry.hpp:1665
Requests that an application begin sending state information for a specified platform part.
Definition WsfXIO_SimPacketRegistry.hpp:86
Requests that an application send a list of valid scripts for a given platform or a global script lis...
Definition WsfXIO_PacketRegistry.hpp:1195
WsfSimulation & mSimulation
Definition WsfXIO_ScriptService.hpp:111
UtScriptEnvironment * mScriptEnvironmentPtr
Definition WsfXIO_ScriptService.hpp:113
WsfXIO_RequestScriptDataResponsePkt::VariableValue GetEntry(UtScriptData aBaseEntry, std::vector< int > &aEntryIndex)
Definition WsfXIO_ScriptService.cpp:1241
WsfXIO_RequestScriptDataResponsePkt::VariableValue GetEntryFromEnumerationScript(UtScript *aEnumScriptPtr, UtScriptData *aBaseEntry, std::vector< int > &aAddress)
Definition WsfXIO_ScriptService.cpp:1143
int mNextExpressionId
Definition WsfXIO_ScriptService.hpp:108
static bool CheckParams(UtScript *aScriptPtr, std::vector< UtScriptData > &aParams, WsfPlatform *aContextPlatformPtr, UtScriptTypes *aScriptTypes, WsfSimulation *aSimulationPtr)
Definition WsfXIO_ScriptService.cpp:306
UtScript * mDebugEnumerateGobalsScript
Definition WsfXIO_ScriptService.hpp:119
std::map< ExpressionId, ExpressionResult > mEvaluatedExpressions
Definition WsfXIO_ScriptService.hpp:115
bool mInitializedEnumerateScripts
Definition WsfXIO_ScriptService.hpp:116
UtScriptDebugger * GetDebugger()
Definition WsfXIO_ScriptService.cpp:992
std::pair< int, int > ExpressionId
Definition WsfXIO_ScriptService.hpp:94
WsfXIO_ScriptService(WsfXIO_Simulation &aXIO_Simulation)
Definition WsfXIO_ScriptService.cpp:32
std::map< std::string, UtScript * > mDebugEnumerateGlobalScripts
Definition WsfXIO_ScriptService.hpp:118
WsfXIO_RequestScriptDataResponsePkt::VariableValue PackValue(const UtScriptData &aEntry, std::vector< int > aIndex)
Definition WsfXIO_ScriptService.cpp:1343
ExpressionResult * ExpressionEval(ExpressionId aExpressionId, UtScriptExecutor &aContextExecutor, UtScriptExecutorProgramCounter *pc, std::string aExpression)
Definition WsfXIO_ScriptService.cpp:435
WsfXIO_ServiceT< WsfXIO_RequestScriptSessionPkt, WsfXIO_SimService > BaseClassType
Definition WsfXIO_ScriptService.hpp:37
std::map< UtScriptData, UtScriptData > ScriptMap
Definition WsfXIO_ScriptService.hpp:56
WsfXIO_Subscription * GetSubscription()
Definition WsfXIO_ScriptService.hpp:69
std::map< UtScriptClass *, UtScript * > mDebugEnumerateScripts
Definition WsfXIO_ScriptService.hpp:117
UtCallbackHolder mCallbacks
Definition WsfXIO_ScriptService.hpp:112
virtual void SubscriptionCancelledT(WsfXIO_Subscription *aSubscriptionPtr, RequestType &aRequest)
Definition WsfXIO_Service.hpp:99
WsfXIO_ServiceT(WsfXIO_Interface *aInterfacePtr)
Definition WsfXIO_Service.hpp:84
const SubscriptionMap GetSubscriptions() const
Definition WsfXIO_Service.hpp:61
Definition WsfXIO_Simulation.hpp:49
A WsfXIO_Subscription wraps information about a remote request for information.
Definition WsfXIO_Subscription.hpp:30
Definition WsfXIO_PacketRegistry.hpp:1513
Definition WsfXIO_ScriptService.hpp:101
UtScriptData mReturnValue
Definition WsfXIO_ScriptService.hpp:104
ExpressionId mExpressionId
Definition WsfXIO_ScriptService.hpp:102
bool mCompiled
Definition WsfXIO_ScriptService.hpp:103
UtScriptContext * mContextPtr
Definition WsfXIO_ScriptService.hpp:105