Tracore
ObjectData.h
1 //
2 // Created by wrede on 19.04.16.
3 //
4 
5 #ifndef GBMOT_NODEDATA_H
6 #define GBMOT_NODEDATA_H
7 
8 
9 #include <string>
10 #include <unordered_map>
11 #include <iostream>
12 
13 namespace core
14 {
15  //TODO RENAME
16  //TODO ObjectDataBase / ObjectBase / DataBase / AObject ...
21  class ObjectData
22  {
23  private:
27  bool is_virtual_;
28  protected:
32  std::size_t frame_index_;
37  virtual void Print(std::ostream& os) const;
38  public:
42  ObjectData();
43 
48  ObjectData(std::size_t frame_index);
49 
54  std::size_t GetFrameIndex() const;
55 
60  bool IsVirtual() const;
61 
62  //TODO RENAME
63  //TODO ObjectDataComparable / IComparable ...
69  virtual double CompareTo(ObjectData *obj);
70 
78  friend std::ostream& operator<<(std::ostream& os, const ObjectData& obj);
79  };
80 }
81 
82 
83 #endif //GBMOT_NODEDATA_H
friend std::ostream & operator<<(std::ostream &os, const ObjectData &obj)
Definition: ObjectData.cpp:41
virtual double CompareTo(ObjectData *obj)
Definition: ObjectData.cpp:36
Definition: Definitions.h:14
std::size_t frame_index_
Definition: ObjectData.h:32
bool IsVirtual() const
Definition: ObjectData.cpp:26
Definition: ObjectData.h:21
virtual void Print(std::ostream &os) const
Definition: ObjectData.cpp:31
std::size_t GetFrameIndex() const
Definition: ObjectData.cpp:21
ObjectData()
Definition: ObjectData.cpp:9