Valkka
1.6.1
OpenSource Video Management
|
FrameFifo using file descriptors. More...
#include <framefifo.h>
Public Member Functions | |
FDFrameFifo (const char *name, FrameFifoContext ctx=FrameFifoContext()) | |
Default ctor | |
virtual | ~FDFrameFifo () |
Default virtual dtor | |
virtual bool | writeCopy (Frame *f, bool wait=false) |
Take a frame "ftmp" from the stack, copy contents of "f" into "ftmp" and insert "ftmp" into the beginning of the fifo (i.e. perform "copy-on-insert"). The size of "ftmp" is also checked and set to target_size, if necessary. If wait is set to true, will wait until there are frames available in the stack. More... | |
virtual Frame * | read (unsigned short int mstimeout=0) |
Pop a frame from the end of the fifo when available. More... | |
const int | getFD () |
Public Member Functions inherited from FrameFifo | |
FrameFifo (const char *name, FrameFifoContext ctx=FrameFifoContext()) | |
Default ctor | |
virtual | ~FrameFifo () |
Default virtual dtor | |
ban_copy_ctor (FrameFifo) | |
ban_copy_asm (FrameFifo) | |
Reservoir & | getReservoir (FrameClass cl) |
Get the reservoir .. in the case you want to manipulate the frames. | |
virtual void | recycle (Frame *f) |
Like FrameFifo::recycle_ but with mutex protection. | |
virtual void | recycleAll () |
Recycle all frames from fifo back to stack (make a "flush") | |
virtual void | dumpStacks () |
Dump frames in the stacks. | |
virtual void | dumpFifo () |
Dump frames in the fifo. | |
virtual void | diagnosis () |
Print a resumen of fifo and stack usage. | |
bool | isEmpty () |
Tell if fifo is empty. | |
Private Attributes | |
int | fd |
Additional Inherited Members | |
Protected Member Functions inherited from FrameFifo | |
virtual void | recycle_ (Frame *f) |
Return Frame f back into the stack. Update target_size if necessary. | |
virtual void | recycleAll_ () |
Recycle all frames back to the stack. | |
Protected Attributes inherited from FrameFifo | |
std::string | name |
FrameFifoContext | ctx |
Parameters defining the stack and overflow behaviour. | |
std::map< FrameClass, Reservoir > | reservoirs |
The actual frames. | |
std::map< FrameClass, Stack > | stacks |
Pointers to the actual frames, sorted by FrameClass. | |
Fifo | fifo |
The fifo queue. | |
std::mutex | mutex |
The Lock. | |
std::condition_variable | condition |
The Event/Flag. | |
std::condition_variable | ready_condition |
The Event/Flag for FrameFifo::ready_mutex. | |
FrameFifo using file descriptors.
|
virtual |
Pop a frame from the end of the fifo when available.
Should be called only after using read on the file descriptor. May return NULL pointer.
Reimplemented from FrameFifo.
|
virtual |
Take a frame "ftmp" from the stack, copy contents of "f" into "ftmp" and insert "ftmp" into the beginning of the fifo (i.e. perform "copy-on-insert"). The size of "ftmp" is also checked and set to target_size, if necessary. If wait is set to true, will wait until there are frames available in the stack.
Reimplemented from FrameFifo.