Equalizer 1.0
|
A holder for a frame data and related parameters. More...
#include <frame.h>
Classes | |
struct | Data |
Public Member Functions | |
Frame () | |
Construct a new frame. | |
virtual | ~Frame () |
Destruct the frame. | |
Data Access | |
const std::string & | getName () const |
const Vector2i & | getOffset () const |
void | setOffset (const Vector2i &offset) |
Set the position of the frame wrt the channel. | |
const Range & | getRange () const |
const Pixel & | getPixel () const |
const SubPixel & | getSubPixel () const |
uint32_t | getPeriod () const |
uint32_t | getPhase () const |
void | setZoom (const Zoom &zoom) |
Set the zoom for this frame holder. | |
const Zoom & | getZoom () const |
void | setZoomFilter (const ZoomFilter zoomFilter) |
Set the filter applied to zoomed assemble operations. | |
ZoomFilter | getZoomFilter () const |
const Images & | getImages () const |
void | setData (FrameData *data) |
Set the data for this frame. | |
FrameData * | getData () |
const FrameData * | getData () const |
uint32_t | getBuffers () const |
void | disableBuffer (const Buffer buffer) |
Disable the usage of a frame buffer attachment for all images. | |
void | setAlphaUsage (const bool useAlpha) |
Set alpha usage for newly allocated images. | |
void | setQuality (const Frame::Buffer buffer, const float quality) |
Set the minimum quality after compression. | |
const co::ObjectVersion & | getDataVersion (const Eye eye) const |
Operations | |
void | clear () |
void | flush () |
void | readback (util::ObjectManager< const void * > *glObjects, const DrawableConfig &config) |
Read back a set of images according to the current frame data. | |
void | setReady () |
Set the frame ready. | |
bool | isReady () const |
Test the readiness of the frame. | |
void | waitReady () const |
Wait for the frame to become available. | |
void | addListener (co::base::Monitor< uint32_t > &listener) |
Add a listener which will be incremented when the frame is ready. | |
void | removeListener (co::base::Monitor< uint32_t > &listener) |
Remove a frame listener. | |
Public Types | |
enum | Buffer { BUFFER_NONE = EQ_BIT_NONE, BUFFER_UNDEFINED = EQ_BIT1, BUFFER_COLOR = EQ_BIT5, BUFFER_DEPTH = EQ_BIT9, BUFFER_ALL = EQ_BIT_ALL } |
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 | |
virtual ChangeType | getChangeType () const |
virtual void | getInstanceData (co::DataOStream &os) |
Serialize all instance information of this distributed object. | |
virtual void | applyInstanceData (co::DataIStream &is) |
Deserialize the instance data. | |
Friends | |
class | eq::server::Frame |
The distributed data shared between Frame and server::Frame. |
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.
enum eq::Frame::Buffer |
enum eq::Frame::Type |
eq::Frame::Frame | ( | ) |
Construct a new frame.
virtual eq::Frame::~Frame | ( | ) | [virtual] |
Destruct the frame.
void eq::Frame::addListener | ( | co::base::Monitor< uint32_t > & | listener | ) |
Add a listener which will be incremented when the frame is ready.
listener | the listener. |
virtual void eq::Frame::applyInstanceData | ( | co::DataIStream & | is | ) | [protected, virtual] |
Deserialize the instance data.
This method is called during object mapping to populate slave instances with the master object's data.
is | the input stream. |
Implements co::Object.
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 |
virtual ChangeType eq::Frame::getChangeType | ( | ) | const [inline, protected, virtual] |
Reimplemented from co::Object.
Definition at line 256 of file frame.h.
References co::Object::INSTANCE.
FrameData* eq::Frame::getData | ( | ) | [inline] |
const FrameData* eq::Frame::getData | ( | ) | const [inline] |
const Images& eq::Frame::getImages | ( | ) | const |
virtual void eq::Frame::getInstanceData | ( | co::DataOStream & | os | ) | [protected, virtual] |
Serialize all instance information of this distributed object.
os | The output stream. |
Implements co::Object.
const std::string& eq::Frame::getName | ( | ) | const |
const Vector2i& eq::Frame::getOffset | ( | ) | const [inline] |
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 |
const SubPixel& eq::Frame::getSubPixel | ( | ) | const |
Referenced by eqPly::Channel::frameAssemble().
const Zoom& eq::Frame::getZoom | ( | ) | const [inline] |
ZoomFilter eq::Frame::getZoomFilter | ( | ) | const [inline] |
bool eq::Frame::isReady | ( | ) | const |
Test the readiness of the frame.
void eq::Frame::readback | ( | util::ObjectManager< const void * > * | glObjects, |
const DrawableConfig & | config | ||
) |
Read back a set of images according to the current frame data.
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. |
void eq::Frame::removeListener | ( | co::base::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 | ) | [inline] |
void eq::Frame::setOffset | ( | const Vector2i & | offset | ) | [inline] |
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::setZoom | ( | const Zoom & | zoom | ) | [inline] |
void eq::Frame::setZoomFilter | ( | const ZoomFilter | zoomFilter | ) | [inline] |
void eq::Frame::waitReady | ( | ) | const |
Wait for the frame to become available.
friend class eq::server::Frame [friend] |