4 #include <HDA_RecordBuffer.h>
5 #include <sim/core/SurveyPlayback.h>
10 namespace helios {
namespace analytics{
19 class HDA_SimStepRecorder{
35 std::shared_ptr<HDA_RecordBuffer<double>> platformPositionX;
39 std::shared_ptr<HDA_RecordBuffer<double>> platformPositionY;
43 std::shared_ptr<HDA_RecordBuffer<double>> platformPositionZ;
47 std::shared_ptr<HDA_RecordBuffer<double>> platformRoll;
51 std::shared_ptr<HDA_RecordBuffer<double>> platformPitch;
55 std::shared_ptr<HDA_RecordBuffer<double>> platformYaw;
60 std::shared_ptr<HDA_RecordBuffer<double>> platformMountX;
65 std::shared_ptr<HDA_RecordBuffer<double>> platformMountY;
70 std::shared_ptr<HDA_RecordBuffer<double>> platformMountZ;
75 std::shared_ptr<HDA_RecordBuffer<double>> platformMountRoll;
80 std::shared_ptr<HDA_RecordBuffer<double>> platformMountPitch;
85 std::shared_ptr<HDA_RecordBuffer<double>> platformMountYaw;
89 std::shared_ptr<HDA_RecordBuffer<double>> scannerPositionX;
93 std::shared_ptr<HDA_RecordBuffer<double>> scannerPositionY;
97 std::shared_ptr<HDA_RecordBuffer<double>> scannerPositionZ;
101 std::shared_ptr<HDA_RecordBuffer<double>> scannerRoll;
105 std::shared_ptr<HDA_RecordBuffer<double>> scannerPitch;
109 std::shared_ptr<HDA_RecordBuffer<double>> scannerYaw;
113 std::shared_ptr<HDA_RecordBuffer<double>> scannerHeadRoll;
117 std::shared_ptr<HDA_RecordBuffer<double>> scannerHeadPitch;
121 std::shared_ptr<HDA_RecordBuffer<double>> scannerHeadYaw;
125 std::shared_ptr<HDA_RecordBuffer<double>> deflectorEmittingRoll;
129 std::shared_ptr<HDA_RecordBuffer<double>> deflectorEmittingPitch;
133 std::shared_ptr<HDA_RecordBuffer<double>> deflectorEmittingYaw;
137 std::shared_ptr<HDA_RecordBuffer<double>> beamOriginX;
141 std::shared_ptr<HDA_RecordBuffer<double>> beamOriginY;
145 std::shared_ptr<HDA_RecordBuffer<double>> beamOriginZ;
149 std::shared_ptr<HDA_RecordBuffer<double>> beamRoll;
153 std::shared_ptr<HDA_RecordBuffer<double>> beamPitch;
157 std::shared_ptr<HDA_RecordBuffer<double>> beamYaw;
162 std::shared_ptr<HDA_RecordBuffer<double>> measErrSeq;
167 std::shared_ptr<HDA_RecordBuffer<double>> measErrPar;
182 std::string
const &path
191 virtual ~HDA_SimStepRecorder() {
192 if(isAnyBufferOpen()){
202 virtual void record();
208 virtual void delayedRecord();
216 virtual void validateOutDir();
222 virtual bool isAnyBufferOpen();
226 virtual void openBuffers();
232 virtual void closeBuffers();
241 virtual void recordPlatform();
246 virtual void recordPlatformMount();
251 virtual void recordScanner();
256 virtual void recordScannerHead();
261 virtual void recordDeflector();
266 virtual void recordBeam();
271 virtual void recordStochastic();
279 virtual std::string craftOutputPath(std::string
const &fname);
Survey playback class, used to extend simulation functionalities so it can be controlled.
Definition: SurveyPlayback.h:18