Equalizer
1.6.1
|
A holder for a frame data and related parameters. More...
#include <frame.h>
Public Member Functions | |
Frame () | |
Construct a new frame. More... | |
virtual | ~Frame () |
Destruct the frame. More... | |
Data Access | |
const std::string & | getName () const |
const Range & | getRange () const |
const Pixel & | getPixel () const |
const SubPixel & | getSubPixel () const |
uint32_t | getPeriod () const |
uint32_t | getPhase () const |
void | setZoomFilter (const ZoomFilter zoomFilter) |
Set the filter applied to zoomed assemble operations. More... | |
ZoomFilter | getZoomFilter () const |
const Images & | getImages () const |
void | setData (FrameData *data) |
Set the data for this frame. More... | |
FrameData * | getData () |
const FrameData * | getData () const |
void | setFrameData (FrameDataPtr data) |
Set the data for this frame. More... | |
FrameDataPtr | getFrameData () |
ConstFrameDataPtr | getFrameData () const |
uint32_t | getBuffers () const |
void | disableBuffer (const Buffer buffer) |
Disable the usage of a frame buffer attachment for all images. More... | |
void | setAlphaUsage (const bool useAlpha) |
Set alpha usage for newly allocated images. More... | |
void | setQuality (const Frame::Buffer buffer, const float quality) |
Set the minimum quality after compression. More... | |
void | useCompressor (const Frame::Buffer buffer, const uint32_t name) |
Sets a compressor for compression for following transmissions. More... | |
Operations | |
void | clear () |
void | deleteGLObjects (ObjectManager *om) |
void | readback (ObjectManager *glObjects, const DrawableConfig &config) |
Read back an image. More... | |
void | readback (ObjectManager *glObjects, const DrawableConfig &config, const PixelViewports ®ions) |
Read back a set of images. More... | |
Images | startReadback (ObjectManager *glObjects, const DrawableConfig &config, const PixelViewports ®ions) |
Start reading back a set of images for this frame. More... | |
void | setReady () |
Set the frame ready. More... | |
bool | isReady () const |
Test the readiness of the frame. More... | |
void | waitReady (const uint32_t timeout=LB_TIMEOUT_INDEFINITE) const |
Wait for the frame to become available. More... | |
void | addListener (lunchbox::Monitor< uint32_t > &listener) |
Add a listener which will be incremented when the frame is ready. More... | |
void | removeListener (lunchbox::Monitor< uint32_t > &listener) |
Remove a frame listener. More... | |
Public Member Functions inherited from eq::fabric::Frame | |
Frame () | |
Construct a new frame. More... | |
const std::vector< uint128_t > & | getInputNodes (const Eye eye) const |
const std::vector< uint128_t > & | getInputNetNodes (const Eye eye) const |
void | setName (const std::string &name) |
Set the name of the frame. More... | |
const std::string & | getName () const |
const Vector2i & | getOffset () const |
void | setOffset (const Vector2i &offset) |
Set the position of the frame wrt the channel. More... | |
void | setZoom (const Zoom &zoom) |
Set the zoom for this frame holder. More... | |
const Zoom & | getZoom () const |
const co::ObjectVersion & | getDataVersion (const Eye) const |
Additional Inherited Members | |
Public Types inherited from eq::fabric::Frame | |
enum | Buffer { BUFFER_NONE = LB_BIT_NONE, BUFFER_UNDEFINED = LB_BIT1, BUFFER_COLOR = LB_BIT5, BUFFER_DEPTH = LB_BIT9, BUFFER_ALL = LB_BIT_ALL_32 } |
The buffer format defines which components of the frame are to be used during readback and assembly. More... | |
enum | Type { TYPE_MEMORY, TYPE_TEXTURE } |
The storage type for pixel data. More... | |
Protected Member Functions inherited from eq::fabric::Frame | |
virtual ChangeType | getChangeType () const |
virtual void | getInstanceData (co::DataOStream &os) |
virtual void | applyInstanceData (co::DataIStream &is) |
void | _setDataVersion (const unsigned i, const co::ObjectVersion &ov) |
std::vector< uint128_t > & | _getInputNodes (const unsigned i) |
std::vector< uint128_t > & | _getInputNetNodes (const unsigned i) |
A holder for a frame data and related parameters.
A Frame has to be set up with a FrameData which ultimately holds the pixel data using images. Input and output frames provided by the eq::Channel are set up correctly with FrameData to connect one output frame to one ore more input frames. Some Frame parameters are (input-)frame-specific, while others are set by the output frame on its data and therefore shared between all input frames.
Definition at line 42 of file client/frame.h.
eq::Frame::Frame | ( | ) |
Construct a new frame.
|
virtual |
void eq::Frame::addListener | ( | lunchbox::Monitor< uint32_t > & | listener | ) |
Add a listener which will be incremented when the frame is ready.
listener | the listener. |
void eq::Frame::disableBuffer | ( | const Buffer | buffer | ) |
Disable the usage of a frame buffer attachment for all images.
buffer | the buffer to disable. |
Referenced by eVolve::Channel::frameReadback().
uint32_t eq::Frame::getBuffers | ( | ) | const |
FrameData* eq::Frame::getData | ( | ) |
const FrameData* eq::Frame::getData | ( | ) | const |
FrameDataPtr eq::Frame::getFrameData | ( | ) |
Referenced by eqPixelBench::Channel::configExit(), eVolve::Channel::configExit(), eVolve::Channel::frameAssemble(), and eVolve::Channel::frameReadback().
ConstFrameDataPtr eq::Frame::getFrameData | ( | ) | const |
const Images& eq::Frame::getImages | ( | ) | const |
Referenced by eVolve::Channel::frameAssemble().
const std::string& eq::Frame::getName | ( | ) | const |
uint32_t eq::Frame::getPeriod | ( | ) | const |
Referenced by eqPly::Channel::frameAssemble().
uint32_t eq::Frame::getPhase | ( | ) | const |
const Pixel& eq::Frame::getPixel | ( | ) | const |
const Range& eq::Frame::getRange | ( | ) | const |
Referenced by eVolve::Channel::frameAssemble().
const SubPixel& eq::Frame::getSubPixel | ( | ) | const |
Referenced by eqPly::Channel::frameAssemble().
ZoomFilter eq::Frame::getZoomFilter | ( | ) | const |
bool eq::Frame::isReady | ( | ) | const |
Test the readiness of the frame.
void eq::Frame::readback | ( | ObjectManager * | glObjects, |
const DrawableConfig & | config | ||
) |
Read back an image.
The image is added to the data, existing images are retained.
glObjects | the GL object manager for the current GL context. |
config | the configuration of the source frame buffer. |
Referenced by eVolve::Channel::frameAssemble().
void eq::Frame::readback | ( | ObjectManager * | glObjects, |
const DrawableConfig & | config, | ||
const PixelViewports & | regions | ||
) |
Read back a set of images.
The images are added to the data, existing images are retained.
glObjects | the GL object manager for the current GL context. |
config | the configuration of the source frame buffer. |
regions | the areas to read back. |
void eq::Frame::removeListener | ( | lunchbox::Monitor< uint32_t > & | listener | ) |
Remove a frame listener.
listener | the listener. |
void eq::Frame::setAlphaUsage | ( | const bool | useAlpha | ) |
Set alpha usage for newly allocated images.
Referenced by eqPly::Channel::frameReadback().
void eq::Frame::setData | ( | FrameData * | data | ) |
Set the data for this frame.
void eq::Frame::setFrameData | ( | FrameDataPtr | data | ) |
Set the data for this frame.
void eq::Frame::setQuality | ( | const Frame::Buffer | buffer, |
const float | quality | ||
) |
Set the minimum quality after compression.
Referenced by eVolve::Channel::frameReadback(), and eqPly::Channel::frameReadback().
void eq::Frame::setReady | ( | ) |
Set the frame ready.
Equalizer sets the frame automatically ready after readback and after network transmission.
void eq::Frame::setZoomFilter | ( | const ZoomFilter | zoomFilter | ) |
Set the filter applied to zoomed assemble operations.
Images eq::Frame::startReadback | ( | ObjectManager * | glObjects, |
const DrawableConfig & | config, | ||
const PixelViewports & | regions | ||
) |
Start reading back a set of images for this frame.
The newly read images are added to the data, existing images are retained. The finish for the new images has to be done by the caller. The regions are relative to the current OpenGL viewport.
glObjects | the GL object manager for the current GL context. |
config | the configuration of the source frame buffer. |
regions | the areas to read back. |
void eq::Frame::useCompressor | ( | const Frame::Buffer | buffer, |
const uint32_t | name | ||
) |
Sets a compressor for compression for following transmissions.
Referenced by eqPly::Channel::frameReadback().
void eq::Frame::waitReady | ( | const uint32_t | timeout = LB_TIMEOUT_INDEFINITE | ) | const |
Wait for the frame to become available.
Referenced by eVolve::Channel::frameAssemble().