14 #ifndef OBJECTS_TRACKER_H_
15 #define OBJECTS_TRACKER_H_
24 #include <boost/format.hpp>
27 #include "AbstractObjectsTracker.h"
32 #define OBJ_SEQUENCE_START_CODE 0x0A
33 #define OBJ_START_CODE 0x01
34 #define OBJ_DRAW_TYPE_START_CODE 0x02
35 #define OBJ_X_COORD_START_CODE 0x03
36 #define OBJ_Y_COORD_START_CODE 0x04
37 #define OBJ_HEIGHT_START_CODE 0x05
38 #define OBJ_WIDTH_START_CODE 0x06
39 #define OBJ_COLOR_START_CODE 0x07
40 #define OBJ_LINEWIDTH_START_CODE 0x08
41 #define OBJ_TEXT_START_CODE 0x09
42 #define OBJ_POLYDATA_START_CODE 0x0B
43 #define OBJ_ARROWHEADSIZE_START_CODE 0x0C
44 #define OBJ_SEQUENCE_END_START_CODE 0x7F
46 #define OBJ_DRAW_TYPE_BOX 0x01
47 #define OBJ_DRAW_TYPE_MLINE 0x02
48 #define OBJ_DRAW_TYPE_TEXT 0x03
49 #define OBJ_DRAW_TYPE_TIMESTAMP 0x04
50 #define OBJ_DRAW_TYPE_POLYGON 0x05
51 #define OBJ_DRAW_TYPE_TRIPWIRE_ARROW 0x06
52 #define OBJ_DRAW_TYPE_ARROW 0x07
54 #define METADATA_TAGID 0xffff
56 typedef unsigned char byte;
61 ObjectsTracker(
const std::string& Bitstream,
const std::map< std::string, std::vector< std::string > >& VisibleMetadata);
64 virtual void setObjectsData(
const std::string& Bitstream,
const std::map< std::string, std::vector< std::string > >& VisibleMetadata);
72 void log_warning(
const std::string& message );
74 void skipBits(
const int bits);
76 int showBits(
const int bits);
78 int getBits(
const int n);
80 std::string getText();
82 void fillPolygonData();
87 std::string bitstream;
88 std::map< std::string, std::vector< std::string > > visibleMetadata;
117 std::vector<int> xPoints;
118 std::vector<int> yPoints;
120 float xTripPoints[2];
121 float yTripPoints[2];