1 #ifndef SENS_SIMULATOR_H
2 #define SENS_SIMULATOR_H
58 T* derived =
dynamic_cast<T*
>(base);
71 void loadGpsData(
const std::string& dirName, std::vector<std::pair<SENSTimePt, SENSGps::Location>>& data);
73 void loadOrientationData(
const std::string& dirName, std::vector<std::pair<SENSTimePt, SENSOrientation::Quat>>& data);
75 void loadCameraData(
const std::string& dirName, std::vector<std::pair<SENSTimePt, int>>& data, std::string& videoFileName,
SENSCameraConfig& cameraConfig);
80 std::unique_ptr<SENSSimClock>
_clock;
std::chrono::microseconds SENSMicroseconds
std::chrono::high_resolution_clock::time_point SENSTimePt
std::atomic_bool _running
flags if simulator is currently running
SENSSimulatedCamera * getCameraSensorPtr()
get sensor pointer of simulated camera sensor and use it like a normal sensor (valid if not null)
void loadOrientationData(const std::string &dirName, std::vector< std::pair< SENSTimePt, SENSOrientation::Quat >> &data)
load data from file and instantiate sensor if valid
bool isRunning() const
indicates if simulator is currently running
bool getSimulatorErrors(std::vector< std::string > &errorMsgs)
std::unique_ptr< SENSSimClock > _clock
SENSMicroseconds passedTime()
get passed simulation time
SENSSimulatedGps * getGpsSensorPtr()
get sensor pointer of simulated gps sensor and use it like a normal sensor (valid if not null)
std::vector< std::unique_ptr< SENSSimulatedBase > > _activeSensors
list of currently activated sensors. Which sensors are activated depends on the content of simulation...
void loadGpsData(const std::string &dirName, std::vector< std::pair< SENSTimePt, SENSGps::Location >> &data)
load data from file and instantiate sensor if valid
SENSSimulatedOrientation * getOrientationSensorPtr()
get sensor pointer of simulated orientation sensor and use it like a normal sensor (valid if not null...
void pause()
pause simulation time
SENSSimulator(const std::string &simDirName)
ctor, transfer directory containing sensor data that was recorded with SENSRecorder
void resume()
resume simulation time
void onStart()
callback called from SENSSimulated when the simulated sensor was started
void loadCameraData(const std::string &dirName, std::vector< std::pair< SENSTimePt, int >> &data, std::string &videoFileName, SENSCameraConfig &cameraConfig)
load data from file and instantiate sensor if valid
void onSensorSimStopped()
callback called from SENSSimulated when the simulated sensor was stopped
SENSTimePt now()
reset simulation time