Conscience Core
CscSequencePositions.h
Go to the documentation of this file.
1 /*
2  * CscSequencePositions.h
3  *
4  * Created on: 31 mai 2014
5  * Author: ilieszaoui
6  */
7 
8 #ifndef CscSequencePositions_H_
9 #define CscSequencePositions_H_
10 
11 #include "./CscSequence.h"
12 #include "CoreObjects/CscState.h"
13 #include <string>
14 #include <vector>
15 
16 using std::vector, std::string, std::to_string, std::endl, std::ios;
17 
19  X_Y_Z = 0,
20  LNG_LAT = 1
21 };
22 
24 private:
25  std::vector<CscPoint3d *> *positions;
26  CscSequencePositionType positionType;
27  double speedRatio;
28 
29 public:
31  CscSequencePositions(const vector<CscPoint3d *> &positions, CscSequenceType type = CscSequenceType::POSITIONS, CscSequencePositionType positionType = CscSequencePositionType::X_Y_Z, double speedRatio = 1.0);
32  ~CscSequencePositions() override;
33  void clear(bool deletePointers = true) override;
34  void append(const CscSequence &other) override;
35  void setPositions(vector<CscPoint3d *> *positionsIn);
36  void addPosition(CscPoint3d *positions);
37  int countPositions() const;
38  vector<CscPoint3d *> *getPositions() const;
41  virtual CscSequence *getDuplicate() override;
42  void setPositionType(CscSequencePositionType positionType);
43  CscSequence *clone() override;
44 
45  string toString() const override;
46  string toStringWithQuotes() const override;
47  double getSpeedRatio() const;
48 };
49 
50 #endif /* CscSequencePositions_H_ */
nlohmann::to_string
NLOHMANN_BASIC_JSON_TPL_DECLARATION std::string to_string(const NLOHMANN_BASIC_JSON_TPL &j)
user-defined to_string function for JSON values
Definition: json.hpp:26470
conscience_core::axiomes::CscPoint3d
The CscPoint3d class represents a point in three-dimensional space. It is primarily used to denote a ...
Definition: Csc3dTypes.h:24
CscSequencePositions::countPositions
int countPositions() const
Definition: CscSequencePositions.cpp:48
CscSequencePositions::getDuplicate
virtual CscSequence * getDuplicate() override
Definition: CscSequencePositions.cpp:66
CscSequencePositions::clone
CscSequence * clone() override
Definition: CscSequencePositions.cpp:92
LNG_LAT
@ LNG_LAT
Definition: CscSequencePositions.h:20
CscSequencePositions
Definition: CscSequencePositions.h:23
CscSequencePositions::CscSequencePositions
CscSequencePositions(CscSequenceType type=CscSequenceType::POSITIONS, CscSequencePositionType positionType=CscSequencePositionType::X_Y_Z, double speedRatio=1.0)
Definition: CscSequencePositions.cpp:14
CscSequencePositionType
CscSequencePositionType
Definition: CscSequencePositions.h:18
CscSequence.h
X_Y_Z
@ X_Y_Z
Definition: CscSequencePositions.h:19
CscSequencePositions::getPositionByIndex
CscPoint3d * getPositionByIndex(int index) const
Definition: CscSequencePositions.cpp:58
jwt::alphabet::index
uint32_t index(const std::array< char, 64 > &alphabet, char symbol)
Definition: base.h:91
CscSequencePositions::~CscSequencePositions
~CscSequencePositions() override
Definition: CscSequencePositions.cpp:25
jwt::json::type
type
Generic JSON types used in JWTs.
Definition: jwt.h:1794
POSITIONS
@ POSITIONS
Definition: CscSequence.h:27
CscSequencePositions::addPosition
void addPosition(CscPoint3d *positions)
Definition: CscSequencePositions.cpp:54
CscState.h
CscSequencePositions::toString
string toString() const override
Definition: CscSequencePositions.cpp:103
CscSequencePositions::append
void append(const CscSequence &other) override
Definition: CscSequencePositions.cpp:41
CscSequencePositions::toStringWithQuotes
string toStringWithQuotes() const override
Definition: CscSequencePositions.cpp:115
CscSequencePositions::getPositions
vector< CscPoint3d * > * getPositions() const
Definition: CscSequencePositions.cpp:51
CscSequencePositions::setPositions
void setPositions(vector< CscPoint3d * > *positionsIn)
Definition: CscSequencePositions.cpp:82
CscSequenceType
CscSequenceType
Definition: CscSequence.h:17
CscSequencePositions::setPositionType
void setPositionType(CscSequencePositionType positionType)
Definition: CscSequencePositions.cpp:88
CscSequencePositions::getSpeedRatio
double getSpeedRatio() const
Definition: CscSequencePositions.cpp:127
CscSequencePositions::clear
void clear(bool deletePointers=true) override
Definition: CscSequencePositions.cpp:33
CscSequencePositions::getPositionType
CscSequencePositionType getPositionType()
Definition: CscSequencePositions.cpp:62
CscSequence
Definition: CscSequence.h:51