Provides methods for writing frames into a sequence in a rays file.
Inherits Rx::LFR::CPimpl< CSeqFileWriter_Impl, Interfaces::ESeqFileWriter::ID >.
Public Member Functions | |
CSeqFileWriter () | |
Default constructor. More... | |
CSeqFileWriter (CSeqFileWriter &&xSeqFileWriter) | |
Move constructor. More... | |
~CSeqFileWriter () | |
Destructor. Closes the opened file. More... | |
unsigned | Close () |
Closes the opened sequence file and stops the background buffer thread. More... | |
unsigned | GetDoubleShotMode () const |
Gets the double shot mode that has been passed in StartWriting. More... | |
uint64_t | GetFileSize () const |
Gets the current file size in bytes. More... | |
unsigned | GetFrameCount () const |
Gets the current number of frames in the opened sequence. More... | |
const CRxImageFormat & | GetFrameFormat () const |
Gets the frame format that has been passed in StartWriting. More... | |
unsigned | GetFrameSize () const |
Gets the size of a frame in bytes. More... | |
CSeqFileWriter_Impl & | GetImpl () |
Gets the non constant implementation. More... | |
const CSeqFileWriter_Impl & | GetImpl () const |
Gets the constant implementation. More... | |
void * | GetInterface (Interfaces::ESeqFileWriter::ID eInterface) |
Gets the interface defined by the given interface ID. More... | |
const void * | GetInterface (Interfaces::ESeqFileWriter::ID eInterface) const |
Gets the interface defined by the given interface ID. More... | |
TInterface * | GetInterface (Interfaces::ESeqFileWriter::ID eInterface) |
Gets the interface defined by the given interface ID. More... | |
const TInterface * | GetInterface (Interfaces::ESeqFileWriter::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::ESeqFileWriter::ID eInterface) |
Queries if this object has the given interface. More... | |
bool | IsOpen () const |
Queries if a file has been opened. More... | |
bool | IsWriting () const |
Queries if StartWriting has been called. More... | |
void | Open (const CRxString &sxFilename, unsigned uFrameBufferCount=2) |
Opens the given ray sequence for writing. More... | |
CSeqFileWriter & | operator= (CSeqFileWriter &&xSeqFileWriter) |
Move assignment operator. More... | |
void | StartWriting (const CRxImageFormat &xFrameFormat, const CCalibration &xCalib, CRxMetaData &xMeta, unsigned uDoubleShotMode) |
Starts the write process. This starts the background buffer thread. More... | |
void | WriteFrame (const CRxImage &xFrame) |
Writes the given frame at the current frame index. More... | |
Rx::LFR::CSeqFileWriter::CSeqFileWriter | ( | ) |
Default constructor.
Rx::LFR::CSeqFileWriter::CSeqFileWriter | ( | CSeqFileWriter && | xSeqFileWriter | ) |
Move constructor.
xSeqFileWriter | [in,out]The sequence file writer instance. |
Rx::LFR::CSeqFileWriter::~CSeqFileWriter | ( | ) |
Destructor. Closes the opened file.
unsigned Rx::LFR::CSeqFileWriter::Close | ( | ) |
Closes the opened sequence file and stops the background buffer thread.
unsigned Rx::LFR::CSeqFileWriter::GetDoubleShotMode | ( | ) | const |
Gets the double shot mode that has been passed in StartWriting.
uint64_t Rx::LFR::CSeqFileWriter::GetFileSize | ( | ) | const |
Gets the current file size in bytes.
unsigned Rx::LFR::CSeqFileWriter::GetFrameCount | ( | ) | const |
Gets the current number of frames in the opened sequence.
const CRxImageFormat& Rx::LFR::CSeqFileWriter::GetFrameFormat | ( | ) | const |
Gets the frame format that has been passed in StartWriting.
unsigned Rx::LFR::CSeqFileWriter::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::CSeqFileWriter::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::CSeqFileWriter::IsOpen | ( | ) | const |
Queries if a file has been opened.
bool Rx::LFR::CSeqFileWriter::IsWriting | ( | ) | const |
Queries if StartWriting has been called.
void Rx::LFR::CSeqFileWriter::Open | ( | const CRxString & | sxFilename, |
unsigned | uFrameBufferCount = 2 |
||
) |
Opens the given ray sequence for writing.
Requires an authenticated dongle (Rx::LFR::CLightFieldRuntime::Authenticate) with the Rx::Dongle::ERuntimeFeature::Save feature.
sxFilename | The file name. |
uFrameBufferCount | (Optional) Number of frames to buffer. Must NOT be zero. |
CSeqFileWriter& Rx::LFR::CSeqFileWriter::operator= | ( | CSeqFileWriter && | xSeqFileWriter | ) |
Move assignment operator.
xSeqFileWriter | [in,out]The sequence file writer instance. |
void Rx::LFR::CSeqFileWriter::StartWriting | ( | const CRxImageFormat & | xFrameFormat, |
const CCalibration & | xCalib, | ||
CRxMetaData & | xMeta, | ||
unsigned | uDoubleShotMode | ||
) |
Starts the write process. This starts the background buffer thread.
xFrameFormat | The frame format. |
xCalib | The calibration. |
xMeta | [in,out] The meta data. |
uDoubleShotMode | The double shot mode. |
void Rx::LFR::CSeqFileWriter::WriteFrame | ( | const CRxImage & | xFrame | ) |
Writes the given frame at the current frame index.
xFrame | The frame. |