Provides methods for reading a ray sequence from a rays file.
Inherits Rx::LFR::CPimpl< CSeqFileReader_Impl, Interfaces::ESeqFileReader::ID >.
Public Member Functions | |
CSeqFileReader () | |
Default constructor. More... | |
CSeqFileReader (CSeqFileReader &&xSeqFileReader) | |
Move constructor. More... | |
~CSeqFileReader () | |
Destructor. Closes the file if opened. More... | |
void | Close () |
Closes the opened sequence file and stops the background buffer thread. More... | |
unsigned | GetDoubleShotMode () const |
Gets the double shot mode of the opened sequence. Is 0 if the sequence wasn't recorded in double shot mode. More... | |
uint64_t | GetFileSize () const |
Gets the file size in bytes. More... | |
unsigned | GetFrameCount () const |
Gets the number of frames in the opened sequence. More... | |
unsigned | GetFrameIndex () const |
Gets the current frame index. More... | |
unsigned | GetFrameSize () const |
Gets the size of a frame in bytes. More... | |
CSeqFileReader_Impl & | GetImpl () |
Gets the non constant implementation. More... | |
const CSeqFileReader_Impl & | GetImpl () const |
Gets the constant implementation. More... | |
void * | GetInterface (Interfaces::ESeqFileReader::ID eInterface) |
Gets the interface defined by the given interface ID. More... | |
const void * | GetInterface (Interfaces::ESeqFileReader::ID eInterface) const |
Gets the interface defined by the given interface ID. More... | |
TInterface * | GetInterface (Interfaces::ESeqFileReader::ID eInterface) |
Gets the interface defined by the given interface ID. More... | |
const TInterface * | GetInterface (Interfaces::ESeqFileReader::ID eInterface) const |
Gets the interface defined by the given interface ID. More... | |
unsigned | GetUsedFrameBufferCount () |
Gets the current number of used buffer slots. More... | |
bool | HasInterface (Interfaces::ESeqFileReader::ID eInterface) |
Queries if this object has the given interface. More... | |
bool | IsOpen () const |
Queries if a file has been opened. More... | |
void | MoveFrameIndex (int iDelta) |
Moves the current frame index by the given number forward or backward. More... | |
void | Open (const CRxString &sxFilename, unsigned uFrameBufferCount=2) |
Opens the given ray sequence for reading. More... | |
CSeqFileReader & | operator= (CSeqFileReader &&xSeqFileReader) |
Move assignment operator. More... | |
void | ReadFrame (CRxImage &xFrame) |
Reads the frame at the current frame index. Reads the frame from buffer if already buffered. More... | |
void | SetFrameIndex (unsigned uNewIdx) |
Sets the current frame index. More... | |
void | StartReading (CRayImage &xRayImg) |
Reads the first frame including the meta data and the calibration. This starts the background buffer thread. More... | |
Rx::LFR::CSeqFileReader::CSeqFileReader | ( | ) |
Default constructor.
Rx::LFR::CSeqFileReader::CSeqFileReader | ( | CSeqFileReader && | xSeqFileReader | ) |
Move constructor.
xSeqFileReader | [in,out] The sequence file reader instance. |
Rx::LFR::CSeqFileReader::~CSeqFileReader | ( | ) |
Destructor. Closes the file if opened.
void Rx::LFR::CSeqFileReader::Close | ( | ) |
Closes the opened sequence file and stops the background buffer thread.
unsigned Rx::LFR::CSeqFileReader::GetDoubleShotMode | ( | ) | const |
Gets the double shot mode of the opened sequence. Is 0 if the sequence wasn't recorded in double shot mode.
uint64_t Rx::LFR::CSeqFileReader::GetFileSize | ( | ) | const |
Gets the file size in bytes.
unsigned Rx::LFR::CSeqFileReader::GetFrameCount | ( | ) | const |
Gets the number of frames in the opened sequence.
unsigned Rx::LFR::CSeqFileReader::GetFrameIndex | ( | ) | const |
Gets the current frame index.
unsigned Rx::LFR::CSeqFileReader::GetFrameSize | ( | ) | const |
Gets the size of a frame in bytes.
|
inlineinherited |
Gets the non constant implementation.
|
inlineinherited |
Gets the constant implementation.
|
inherited |
Gets the interface defined by the given interface ID.
eInterface | The interface ID. |
|
inherited |
Gets the interface defined by the given interface ID.
eInterface | The interface ID. |
|
inlineinherited |
Gets the interface defined by the given interface ID.
TInterface | The interface type. |
eInterface | The interface. |
|
inlineinherited |
Gets the interface defined by the given interface ID.
TInterface | The interface type. |
eInterface | The interface ID. |
unsigned Rx::LFR::CSeqFileReader::GetUsedFrameBufferCount | ( | ) |
Gets the current number of used buffer slots.
|
inlineinherited |
Queries if this object has the given interface.
eInterface | The interface to query. |
bool Rx::LFR::CSeqFileReader::IsOpen | ( | ) | const |
Queries if a file has been opened.
void Rx::LFR::CSeqFileReader::MoveFrameIndex | ( | int | iDelta | ) |
Moves the current frame index by the given number forward or backward.
iDelta | The number of frames to move the current index. |
void Rx::LFR::CSeqFileReader::Open | ( | const CRxString & | sxFilename, |
unsigned | uFrameBufferCount = 2 |
||
) |
Opens the given ray sequence for reading.
To read the first frame, you have to call StartReading. Then you can call ReadFrame to read frame by frame.
Requires an authenticated dongle (Rx::LFR::CLightFieldRuntime::Authenticate).
sxFilename | The file name. |
uFrameBufferCount | (Optional) Number of frames to buffer. Must NOT be zero. |
CSeqFileReader& Rx::LFR::CSeqFileReader::operator= | ( | CSeqFileReader && | xSeqFileReader | ) |
Move assignment operator.
xSeqFileReader | [in,out]The sequence file reader instance. |
void Rx::LFR::CSeqFileReader::ReadFrame | ( | CRxImage & | xFrame | ) |
Reads the frame at the current frame index. Reads the frame from buffer if already buffered.
To read the first frame, you have to call StartReading after calling Open.
xFrame | [out] The frame. |
void Rx::LFR::CSeqFileReader::SetFrameIndex | ( | unsigned | uNewIdx | ) |
Sets the current frame index.
uNewIdx | The new frame index. |
void Rx::LFR::CSeqFileReader::StartReading | ( | CRayImage & | xRayImg | ) |
Reads the first frame including the meta data and the calibration. This starts the background buffer thread.
xRayImg | [out] The ray image. |