firevision::FireVisionDataFileBlock Class Reference

FireVision File Format data block. More...

#include <fvutils/fileformat/fvfile_block.h>

Inheritance diagram for firevision::FireVisionDataFileBlock:

[legend]
List of all members.

Public Member Functions

 FireVisionDataFileBlock (unsigned int type, size_t data_size, void *spec_header, size_t spec_header_size)
 Constructor.
 FireVisionDataFileBlock (unsigned int type, size_t data_size, size_t spec_header_size)
 Constructor.
 FireVisionDataFileBlock (unsigned int type, size_t data_size)
 Constructor.
 FireVisionDataFileBlock (FireVisionDataFileBlock *block)
 Shallow copy constructor.
virtual ~FireVisionDataFileBlock ()
 Destructor.
unsigned int type () const
 Get block type.
void * block_memptr () const
 Pointer to the whole block.
size_t block_size () const
 Size of blocks.
void * data_ptr () const
 Get data pointer.
size_t data_size () const
 Size of data chunk.

Protected Member Functions

void set_spec_header (void *spec_header, size_t spec_header_size)
 Set content-specific header.

Protected Attributes

void * _data
 Pointer to the internal data segment.
size_t _data_size
 Size of _data in bytes.
void * _spec_header
 Pointer to the content specific block header.

Detailed Description

FireVision File Format data block.

This class describes one data block inside a FVFF file.

Author:
Tim Niemueller

Definition at line 35 of file fvfile_block.h.


Constructor & Destructor Documentation

firevision::FireVisionDataFileBlock::FireVisionDataFileBlock ( unsigned int  type,
size_t  data_size,
void *  spec_header,
size_t  spec_header_size 
)

Constructor.

Parameters:
type block type, content specific
data_size size of the data segment
spec_header content-specific header
spec_header_size size of spec_header in bytes

Definition at line 59 of file fvfile_block.cpp.

firevision::FireVisionDataFileBlock::FireVisionDataFileBlock ( unsigned int  type,
size_t  data_size,
size_t  spec_header_size 
)

Constructor.

Parameters:
type block type, content specific
data_size size of the data segment
spec_header_size a specific header of the given size is created internally

Definition at line 71 of file fvfile_block.cpp.

firevision::FireVisionDataFileBlock::FireVisionDataFileBlock ( unsigned int  type,
size_t  data_size 
)

Constructor.

Specific header is assumed to be unused.

Parameters:
type block type, content specific
data_size size of the data segment

Definition at line 83 of file fvfile_block.cpp.

firevision::FireVisionDataFileBlock::FireVisionDataFileBlock ( FireVisionDataFileBlock block  ) 

Shallow copy constructor.

This creates a shallow copy of the given block. "Shallow" means that the data is not copied but referenced. This instance is only valid as long as the original instance still exists.

Parameters:
block block to copy

Definition at line 95 of file fvfile_block.cpp.

References __block_memptr, __block_size, __spec_header_size, _data, _data_size, and _spec_header.

firevision::FireVisionDataFileBlock::~FireVisionDataFileBlock (  )  [virtual]

Destructor.

Definition at line 173 of file fvfile_block.cpp.


Member Function Documentation

void * firevision::FireVisionDataFileBlock::block_memptr (  )  const

Pointer to the whole block.

Returns:
pointer to whole block, including headers

Definition at line 195 of file fvfile_block.cpp.

size_t firevision::FireVisionDataFileBlock::block_size (  )  const

Size of blocks.

Returns:
size of blocks in bytes.

Definition at line 205 of file fvfile_block.cpp.

void * firevision::FireVisionDataFileBlock::data_ptr (  )  const

Get data pointer.

Returns:
pointer to the data segment of the block

Definition at line 215 of file fvfile_block.cpp.

References _data.

Referenced by firevision::Histogram::Histogram(), firevision::Histogram::load(), and firevision::FireVisionDataFile::read().

size_t firevision::FireVisionDataFileBlock::data_size (  )  const

Size of data chunk.

Returns:
size of data in bytes.

Definition at line 225 of file fvfile_block.cpp.

References _data_size.

void firevision::FireVisionDataFileBlock::set_spec_header ( void *  spec_header,
size_t  spec_header_size 
) [protected]

Set content-specific header.

If necessary this re-creates internal buffers. To avoid this use the three-parameter ctor to have it account for the expected header size.

Parameters:
spec_header content-specific header
spec_header_size size of spec_header in bytes

Definition at line 145 of file fvfile_block.cpp.

References _data, _data_size, _spec_header, and firevision::_fvff_block_header_t::spec_head_size.

unsigned int firevision::FireVisionDataFileBlock::type (  )  const

Get block type.

Returns:
block type ID, content specific

Definition at line 185 of file fvfile_block.cpp.

References firevision::_fvff_block_header_t::type.

Referenced by firevision::TriclopsStereoProcessor::verify_rectification_lut().


Member Data Documentation

void * firevision::FireVisionDataFileBlock::_data [protected]

Pointer to the internal data segment.

Never free or modify the pointer, but only deal with the data it points to.

Definition at line 55 of file fvfile_block.h.

Referenced by firevision::ColormapFileYuvBlock::ColormapFileYuvBlock(), data_ptr(), FireVisionDataFileBlock(), firevision::HistogramBlock::HistogramBlock(), firevision::RectificationLutInfoBlock::RectificationLutInfoBlock(), firevision::HistogramBlock::set_data(), and set_spec_header().

size_t firevision::FireVisionDataFileBlock::_data_size [protected]

Size of _data in bytes.

Definition at line 56 of file fvfile_block.h.

Referenced by firevision::ColormapFileYuvBlock::ColormapFileYuvBlock(), data_size(), FireVisionDataFileBlock(), firevision::RectificationInfoBlock::RectificationInfoBlock(), firevision::HistogramBlock::reset(), firevision::HistogramBlock::set_data(), and set_spec_header().

void * firevision::FireVisionDataFileBlock::_spec_header [protected]

Pointer to the content specific block header.

Never free or modify the pointer, but only deal with the data it points to.

Definition at line 57 of file fvfile_block.h.

Referenced by firevision::ColormapFileYuvBlock::ColormapFileYuvBlock(), FireVisionDataFileBlock(), firevision::HistogramBlock::HistogramBlock(), firevision::RectificationInfoBlock::RectificationInfoBlock(), and set_spec_header().


The documentation for this class was generated from the following files:
Generated on Tue Feb 22 13:33:00 2011 for Fawkes API by  doxygen 1.4.7