24 #include <core/exceptions/system.h>
25 #include <fvutils/rectification/rectfile.h>
26 #include <fvutils/rectification/rectinfo.h>
27 #include <fvutils/rectification/rectinfo_block.h>
28 #include <fvutils/rectification/rectinfo_lut_block.h>
29 #include <netinet/in.h>
30 #include <utils/misc/strndup.h>
37 namespace firevision {
65 _model = strdup(
model);
67 strncpy(_header->
camera_model, _model, FIREVISION_RECTINFO_CAMERA_MODEL_MAXLENGTH - 1);
68 _header->
guid = _cam_guid;
85 strncpy(_header->
camera_model, _model, FIREVISION_RECTINFO_CAMERA_MODEL_MAXLENGTH - 1);
86 _header->
guid = _cam_guid;
101 return _header->
guid;
131 printf(
"Processing blocks: %zu\n", b.size());
133 for (std::list<FireVisionDataFileBlock *>::iterator i = b.begin(); i != b.end(); ++i) {
134 printf(
"Processing block\n");
135 if ((*i)->type() == FIREVISION_RECTINFO_TYPE_LUT_16x16) {
136 printf(
"Pushing lut block\n");
154 _model = strndup(_header->
camera_model, FIREVISION_RECTINFO_CAMERA_MODEL_MAXLENGTH);
155 _cam_guid = _header->
guid;
158 RectificationInfoFile::RectInfoBlockVector::~RectInfoBlockVector()
160 for (iterator i = begin(); i != end(); ++i) {
FireVision File Format for data files.
virtual void read(const char *file_name)
Read file.
void * _spec_header
Content specific header.
size_t _spec_header_size
Size in bytes of _spec_header.
virtual void add_block(FireVisionDataFileBlock *block)
Add a block.
std::list< FireVisionDataFileBlock * > BlockList
List of FireVision data file blocks.
BlockList & blocks()
Get blocks.
Rectification info block.
Vector that is used for maintaining the rectification info blocks.
virtual void read(const char *filename)
Read file.
RectInfoBlockVector * rectinfo_blocks()
Get all rectification info blocks.
RectificationInfoFile()
Constructor.
~RectificationInfoFile()
Destructor.
const char * model()
Get the model of the camera.
uint64_t guid()
Get the GUID of camera.
void add_rectinfo_block(RectificationInfoBlock *block)
Add a rectification info block.
Recitification Lookup Table Block.