WSF
WsfConnector.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI
3//
4// The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
5//
6// Copyright 2003-2015 The Boeing Company. All rights reserved.
7//
8// The use, dissemination or disclosure of data in this file is subject to
9// limitation or restriction. See accompanying README and LICENSE for details.
10// ****************************************************************************
11#ifndef WSFCONNECTOR_HPP
12#define WSFCONNECTOR_HPP
13
14#include <QObject>
15
16#include "ScriptDebugger.hpp"
17#include "UtCallbackHolder.hpp"
18#include "UtMemory.hpp"
19#include "ViExport.hpp"
21
23
24namespace wizard
25{
26class VI_EXPORT WsfConnector : public QObject
27{
28 Q_OBJECT
29
30public:
32 WsfConnector(const WsfConnector&) = delete;
36 ~WsfConnector() override = default;
37 bool Initialize();
38
40 void Update();
41
47 void UpdateTimeInfo(double aSimTime, double aEndTime, int32_t aCurrentRunNumber = -1, int32_t aFinalRunNumber = -1);
48
49 WsfXIO_Interface* Xio() { return mInterfacePtr.get(); }
50 WsfXIO_Connection* Connection() { return mConnectionPtr; }
51 ScriptDebugger* Debugger() { return mDebuggerPtr; }
52 int XioRecvPort() { return mXIO_RecvPort; }
53
54 double mSimTime;
55 double mEndTime;
58
59 void Pause();
60 void ResumeRealtime();
61 void ResumeConstructive();
62 void Stop();
63 void DebugSessionActive(ScriptDebugger* aDebugger, bool aIsActive);
64
65signals:
69
70private:
71 void DeferredResume();
72 void HandleDisconnect(WsfXIO_Connection* aC);
73 void HandleConnection(WsfXIO_Connection* aConnectionPtr);
74
75 UtCallbackHolder mCallbacks;
76 std::unique_ptr<WsfXIO_Interface> mInterfacePtr;
77 WsfXIO_Connection* mConnectionPtr;
78 ScriptDebugger* mDebuggerPtr;
79 bool mDebugEnabled;
80 int mXIO_RecvPort;
81};
82} // namespace wizard
83#endif
#define VI_EXPORT
Definition ViExport.hpp:38
aObjectPtr Update(simTime)
Definition WsfXIO_Connection.hpp:37
Definition WsfXIO_Interface.hpp:54
Definition ScriptDebugger.hpp:25
WsfConnector & operator=(const WsfConnector &)=delete
void Stop()
Definition WsfConnector.cpp:185
WsfConnector & operator=(WsfConnector &&)=default
void Pause()
Definition WsfConnector.cpp:175
WsfConnector()
Definition WsfConnector.cpp:56
ScriptDebugger * Debugger()
Definition WsfConnector.hpp:51
void ResumeRealtime()
Definition WsfConnector.cpp:155
double mEndTime
Definition WsfConnector.hpp:55
int XioRecvPort()
Definition WsfConnector.hpp:52
void UpdateTimeInfo(double aSimTime, double aEndTime, int32_t aCurrentRunNumber=-1, int32_t aFinalRunNumber=-1)
Definition WsfConnector.cpp:127
WsfXIO_Interface * Xio()
Definition WsfConnector.hpp:49
void DebugSessionActive(ScriptDebugger *aDebugger, bool aIsActive)
Definition WsfConnector.cpp:220
void ResumeConstructive()
Definition WsfConnector.cpp:140
WsfConnector(WsfConnector &&)=default
~WsfConnector() override=default
double mSimTime
Definition WsfConnector.hpp:54
WsfXIO_Connection * Connection()
Definition WsfConnector.hpp:50
int32_t mFinalRunNumber
Definition WsfConnector.hpp:57
WsfConnector(const WsfConnector &)=delete
int32_t mCurrentRunNumber
Definition WsfConnector.hpp:56
Definition Runner.hpp:22
Copyrights Multiple, All Rights Reserved