ADD: updated Tracklist and TracklistItem with tests

This commit is contained in:
Henry Winkel
2023-11-06 17:26:18 +01:00
parent d1994af761
commit 44f5ce09de
10 changed files with 218 additions and 208 deletions

View File

@@ -12,6 +12,7 @@
#include <SimCore/Position.hpp>
#include <SimCore/SafeMap.hpp>
#include <Entities/Tracklist/TracklistItem.hpp>
#include <string>
#include <thread>
#include <loguru.hpp>
@@ -26,7 +27,7 @@ namespace TrackList
void stopSanitizer();
SimCore::Identifier getTrackID(SimCore::ObjectSource source);
// SimCore::Identifier getTrackID(SimCore::ObjectSource source);
void addTrack(std::shared_ptr<SimCore::SimTrack> track);
@@ -38,6 +39,9 @@ namespace TrackList
size_t size();
void setTrackTimeout(int millseconds);
int getTrackTimeoutValue();
private:
const SimCore::Identifier OwnID_;
@@ -56,6 +60,7 @@ namespace TrackList
std::thread sanitizerThread_;
std::atomic_bool sanitizerIsRunning_;
std::atomic_bool stopSanitizer_;
int TrackTimeout_ = 1000;

View File

@@ -6,6 +6,7 @@
#include "SimCore/SimCore.hpp"
#include <SimCore/Position.hpp>
#include <chrono>
#include <cstddef>
#include <list>
#include <memory>
#include <vector>
@@ -28,30 +29,12 @@ namespace TrackList {
class TracklistItem
class TracklistItem: public SimCore::SimTrack
{
public:
TracklistItem(std::shared_ptr<SimCore::SimTrack> track,SensorData sensorData);
TracklistItem(std::shared_ptr<SimCore::SimTrack> track);
SimCore::Identifier getID();
void setPosition(SimCore::Position position);
SimCore::Position getPosition();
void setSpeed(double speed);
double getSpeed();
void setCourse(double course);
double getCourse();
void setPitch(double pitch);
double getpitch();
double getBearing();
double getRange();
SimCore::ObjectSource getObjectSource();
std::chrono::time_point<std::chrono::steady_clock> getLastUpdateTimestamp();
@@ -65,30 +48,14 @@ namespace TrackList {
void addSensorDataToSensorList(SensorData sensorData);
size_t getSensorCount();
private:
const SimCore::Identifier trackID_;
/// position of the track
SimCore::Position position_;
/// speed the track
double speed_ = 0;
/// course of the track
double course_ = 0;
double pitch_ = 0;
/// bearing
double bearing_;
///range in meters
double range_;
//environment (AIR,SURFACE,SUBSURFACE,SPACE)
SimCore::Kind::EntityKind kind_;
std::chrono::time_point<std::chrono::steady_clock> lastUpdateTimestamp_;
SimCore::ObjectSource ObjectSource_;
std::vector<SensorData> SensorList;