Basic Image AlgorithmS Library  2.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Classes | Public Member Functions | Protected Attributes | List of all members
BIAS::VideoStream Class Reference

To allow capturing of camera image to disk efficiently, (avoid

multiple memcopy operations), this class defines an interface to file containing one header and multiple images. More...

#include <Image/VideoStream.hh>

+ Collaboration diagram for BIAS::VideoStream:

Classes

class  VSHeader
 
class  VSImageHeader
 

Public Member Functions

int Close ()
 
int Open (const std::string &file)
 
BIAS::VideoStreamoperator= (const BIAS::VideoStream &src)
 assignment operator is mandatory because copy constructor is. More...
 
void PrintHeader ()
 
int SplitIntoFiles (const std::string &prefix, unsigned int start=0, unsigned int count=0)
 
 VideoStream ()
 
 VideoStream (const std::string &file)
 
 VideoStream (const VideoStream &src)
 copy constructor mandatory because of ifstrseam member More...
 
virtual ~VideoStream ()
 destructor mandatory because copy constructor is. More...
 

Protected Attributes

unsigned long int FileSize_
 
VSHeader Header_
 
std::ifstream Ifs_
 
unsigned int ImageSize_
 
unsigned int NumImages_
 

Detailed Description

To allow capturing of camera image to disk efficiently, (avoid

multiple memcopy operations), this class defines an interface to file containing one header and multiple images.

All data for write() must be aligned to 512-byte boundaries to allow unbuffered operations with open(,O_DIRECT). This can only guaranteed by circumventing all C++ stuff like new() and operator<<(). These video stream file are written by MIP::VideoSource_() and can be split into multiple images with this class.

Author
Jan-Friso Evers-Senne
Examples:
ExampleVideoStream.cpp.

Definition at line 35 of file VideoStream.hh.

Constructor & Destructor Documentation

VideoStream::~VideoStream ( )
virtual

destructor mandatory because copy constructor is.

Author
Jan Woetzel 08/2005

Definition at line 13 of file VideoStream.cpp.

VideoStream::VideoStream ( )

Definition at line 16 of file VideoStream.cpp.

VideoStream::VideoStream ( const std::string &  file)

Definition at line 22 of file VideoStream.cpp.

VideoStream::VideoStream ( const VideoStream src)

copy constructor mandatory because of ifstrseam member

Author
Jan Woetzel 08/2005

Definition at line 30 of file VideoStream.cpp.

Member Function Documentation

int VideoStream::Close ( )

Definition at line 80 of file VideoStream.cpp.

int VideoStream::Open ( const std::string &  file)
Examples:
ExampleVideoStream.cpp.

Definition at line 53 of file VideoStream.cpp.

BIAS::VideoStream & VideoStream::operator= ( const BIAS::VideoStream src)

assignment operator is mandatory because copy constructor is.

Author
Jan Woetzel 08/2005

Definition at line 35 of file VideoStream.cpp.

References FileSize_, Header_, ImageSize_, and NumImages_.

void VideoStream::PrintHeader ( )
Examples:
ExampleVideoStream.cpp.

Definition at line 134 of file VideoStream.cpp.

int VideoStream::SplitIntoFiles ( const std::string &  prefix,
unsigned int  start = 0,
unsigned int  count = 0 
)

Member Data Documentation

unsigned long int BIAS::VideoStream::FileSize_
protected

Definition at line 100 of file VideoStream.hh.

Referenced by operator=().

VSHeader BIAS::VideoStream::Header_
protected

Definition at line 95 of file VideoStream.hh.

Referenced by operator=().

std::ifstream BIAS::VideoStream::Ifs_
protected

Definition at line 96 of file VideoStream.hh.

unsigned int BIAS::VideoStream::ImageSize_
protected

Definition at line 98 of file VideoStream.hh.

Referenced by operator=().

unsigned int BIAS::VideoStream::NumImages_
protected

Definition at line 99 of file VideoStream.hh.

Referenced by operator=().


The documentation for this class was generated from the following files: