Basic Image AlgorithmS Library
2.8.0
|
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>
Classes | |
class | VSHeader |
class | VSImageHeader |
Public Member Functions | |
int | Close () |
int | Open (const std::string &file) |
BIAS::VideoStream & | operator= (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_ |
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.
Definition at line 35 of file VideoStream.hh.
|
virtual |
destructor mandatory because copy constructor is.
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
Definition at line 30 of file VideoStream.cpp.
int VideoStream::Close | ( | ) |
Definition at line 80 of file VideoStream.cpp.
int VideoStream::Open | ( | const std::string & | file | ) |
Definition at line 53 of file VideoStream.cpp.
BIAS::VideoStream & VideoStream::operator= | ( | const BIAS::VideoStream & | src | ) |
assignment operator is mandatory because copy constructor is.
Definition at line 35 of file VideoStream.cpp.
References FileSize_, Header_, ImageSize_, and NumImages_.
void VideoStream::PrintHeader | ( | ) |
Definition at line 134 of file VideoStream.cpp.
int VideoStream::SplitIntoFiles | ( | const std::string & | prefix, |
unsigned int | start = 0 , |
||
unsigned int | count = 0 |
||
) |
Definition at line 87 of file VideoStream.cpp.
References BIAS::Image< StorageType >::GetImageData(), BIAS::ImageBase::GetUID(), BIAS::Image< StorageType >::Init(), BIAS::UUID::SetFromString(), BIAS::ImageBase::SetUID(), BIAS::VideoStream::VSImageHeader::tsec, BIAS::VideoStream::VSImageHeader::tusec, BIAS::Camera< StorageType >::UpdateMetaData(), and BIAS::VideoStream::VSImageHeader::uuid.
|
protected |
Definition at line 100 of file VideoStream.hh.
Referenced by operator=().
|
protected |
Definition at line 95 of file VideoStream.hh.
Referenced by operator=().
|
protected |
Definition at line 96 of file VideoStream.hh.
|
protected |
Definition at line 98 of file VideoStream.hh.
Referenced by operator=().
|
protected |
Definition at line 99 of file VideoStream.hh.
Referenced by operator=().