Files
SimControl/include/SimControl/TrackItem.hpp
2024-02-15 17:52:50 +01:00

65 lines
1.3 KiB
C++

#pragma once
#include "SimCore/Messages/SimTrack.hpp"
#include "nlohmann/json_fwd.hpp"
#include <string>
namespace SimControl
{
class TrackItem : public SimCore::SimTrack
{
public:
/**
* @brief Construct a new Track Item object
*
* @param track
*/
TrackItem(SimCore::SimTrack track);
/**
* @brief mark track as deleteed
*
*/
void markAsDelete();
/**
* @brief
*
* @return true if is marked as deleted
* @return false if not
*/
bool isMarkedAsDelete();
/**
* @brief Get the Last Update Timestamp object
*
* @return std::chrono::time_point<std::chrono::system_clock>
*/
std::time_t getLastUpdateTimestamp();
/**
* @brief
*
* @return nlohmann::json
*/
nlohmann::json toJSON();
/**
* @brief
*
* @return std::string
*/
std::string toString();
private:
bool markedAsDeleted;
std::time_t lastReceiveTimestamp_;
};
}