#include <frameData.h>
It is not intended to be used directly by application code.
Definition at line 33 of file lib/client/frameData.h.
Operations | |
| class | eq::server::FrameData |
| void | flush () |
| Flush the frame by deleting all images. | |
| Image * | newImage () |
| Allocate and add a new image. | |
| void | clear () |
| Clear the frame by recycling the attached images. | |
| void | startReadback (const Frame &frame, Window::ObjectManager *glObjects) |
| Read back a set of images according to the current frame data. | |
| void | syncReadback () |
| Synchronize the last image readback. | |
| int64_t | transmit (net::NodePtr toNode) |
| Transmit the frame data to the specified node. | |
| void | setReady () |
| Set the frame data ready. | |
| bool | isReady () const |
| void | waitReady () const |
| Wait for the frame data to become available. | |
| void | addListener (base::Monitor< uint32_t > &listener) |
| Add a listener which will be incremented when the frame is ready. | |
| void | removeListener (base::Monitor< uint32_t > &listener) |
| Remove a frame listener. | |
| void | disableBuffer (const Frame::Buffer buffer) |
| Disable the usage of a frame buffer attachment for all images. | |
| void | update (const uint32_t version) |
| virtual ChangeType | getChangeType () const |
| virtual void | getInstanceData (net::DataOStream &os) |
| Serialize the instance information about this managed object. | |
| virtual void | applyInstanceData (net::DataIStream &is) |
| Deserialize the instance data. | |
| virtual void | attachToSession (const uint32_t id, const uint32_t instanceID, net::Session *session) |
Public Member Functions | |
Data Access | |
| uint32_t | getBuffers () const |
| The enabled frame buffer attachments. | |
| void | setBuffers (const uint32_t buffers) |
| const Range & | getRange () const |
| The database-range relative to the destination channel. | |
| void | setRange (const Range &range) |
| const Pixel & | getPixel () const |
| The pixel decomposition relative to the destination channel. | |
| const ImageVector & | getImages () const |
| The images of this frame data holder. | |
| void | setPixelViewport (const PixelViewport &pvp) |
| The covered area. | |
Classes | |
| struct | Data |
| struct | ImageVersion |
| uint32_t eq::FrameData::getBuffers | ( | ) | const [inline] |
The enabled frame buffer attachments.
Definition at line 44 of file lib/client/frameData.h.
Referenced by eq::Frame::getBuffers().
| const Range& eq::FrameData::getRange | ( | ) | const [inline] |
The database-range relative to the destination channel.
Definition at line 48 of file lib/client/frameData.h.
Referenced by eq::Frame::getRange().
| const Pixel& eq::FrameData::getPixel | ( | ) | const [inline] |
The pixel decomposition relative to the destination channel.
Definition at line 52 of file lib/client/frameData.h.
Referenced by eq::Frame::getPixel().
| void eq::FrameData::setPixelViewport | ( | const PixelViewport & | pvp | ) | [inline] |
The covered area.
Definition at line 58 of file lib/client/frameData.h.
Referenced by eq::Frame::setPixelViewport().
| void eq::FrameData::flush | ( | ) |
Flush the frame by deleting all images.
Definition at line 90 of file frameData.cpp.
References clear().
| Image * eq::FrameData::newImage | ( | ) |
Allocate and add a new image.
Definition at line 102 of file frameData.cpp.
Referenced by startReadback().
| void eq::FrameData::clear | ( | ) |
Clear the frame by recycling the attached images.
Definition at line 79 of file frameData.cpp.
References eq::base::SpinLock::set(), and eq::base::SpinLock::unset().
Referenced by applyInstanceData(), eq::Frame::clear(), and flush().
| void eq::FrameData::startReadback | ( | const Frame & | frame, | |
| Window::ObjectManager * | glObjects | |||
| ) |
Read back a set of images according to the current frame data.
The newly read images are added to the data, existing images are retained.
| frame | the corresponding output frame holder. | |
| glObjects | the GL object manager for the current GL context. |
Definition at line 127 of file frameData.cpp.
References eq::Frame::getOffset(), eq::PixelViewport::isValid(), newImage(), and eq::Image::startReadback().
Referenced by eq::Frame::startReadback().
| void eq::FrameData::syncReadback | ( | ) |
Synchronize the last image readback.
Definition at line 141 of file frameData.cpp.
References setReady(), eq::Image::syncReadback(), and eq::Image::writeImages().
Referenced by eq::Frame::syncReadback().
| int64_t eq::FrameData::transmit | ( | net::NodePtr | toNode | ) |
Transmit the frame data to the specified node.
Used internally after readback to push the image data to the input frame nodes. Do not use directly.
| toNode | the receiving node. |
Definition at line 205 of file frameData.cpp.
References eq::Frame::BUFFER_COLOR, eq::Frame::BUFFER_DEPTH, eq::Image::compressPixelData(), eq::net::Object::getID(), eq::net::Session::getID(), eq::Image::getPixelData(), eq::Image::getPixelViewport(), eq::base::Clock::getTimef(), eq::net::Object::getVersion(), and eq::Image::hasPixelData().
Referenced by eq::Frame::transmit().
| void eq::FrameData::setReady | ( | ) |
Set the frame data ready.
The frame data is automatically set ready by syncReadback and upon receiving of the transmit commands.
Definition at line 162 of file frameData.cpp.
References eq::net::Object::getVersion().
Referenced by eq::Frame::setReady(), and syncReadback().
| bool eq::FrameData::isReady | ( | ) | const [inline] |
Definition at line 114 of file lib/client/frameData.h.
Referenced by eq::Frame::isReady().
| void eq::FrameData::waitReady | ( | ) | const [inline] |
Wait for the frame data to become available.
Definition at line 117 of file lib/client/frameData.h.
Referenced by eq::Frame::waitReady().
| void eq::FrameData::addListener | ( | base::Monitor< uint32_t > & | listener | ) |
Add a listener which will be incremented when the frame is ready.
| listener | the listener. |
Definition at line 329 of file frameData.cpp.
References eq::net::Object::getVersion(), eq::base::Lock::set(), and eq::base::Lock::unset().
Referenced by eq::Frame::addListener().
| void eq::FrameData::removeListener | ( | base::Monitor< uint32_t > & | listener | ) |
Remove a frame listener.
| listener | the listener. |
Definition at line 340 of file frameData.cpp.
References eq::base::Lock::set(), and eq::base::Lock::unset().
Referenced by eq::Frame::removeListener().
| void eq::FrameData::disableBuffer | ( | const Frame::Buffer | buffer | ) | [inline] |
Disable the usage of a frame buffer attachment for all images.
| buffer | the buffer to disable. |
Definition at line 139 of file lib/client/frameData.h.
Referenced by eq::Frame::disableBuffer().
| void eq::FrameData::update | ( | const uint32_t | version | ) |
Definition at line 52 of file frameData.cpp.
References eq::net::Object::getInstanceID().
Referenced by eq::Node::getFrameData().
| virtual ChangeType eq::FrameData::getChangeType | ( | ) | const [inline, protected, virtual] |
Reimplemented from eq::net::Object.
Definition at line 147 of file lib/client/frameData.h.
| void eq::FrameData::getInstanceData | ( | net::DataOStream & | os | ) | [protected, virtual] |
Serialize the instance information about this managed object.
The default implementation uses the data provided by setInstanceData.
| os | The output stream. |
Implements eq::net::Object.
Definition at line 33 of file frameData.cpp.
References eq::net::DataOStream::writeOnce().
| void eq::FrameData::applyInstanceData | ( | net::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. The default implementation writes the data into the memory declared by setInstanceData.
| is | the input stream. |
Implements eq::net::Object.
Definition at line 38 of file frameData.cpp.
References eq::net::DataIStream::advanceBuffer(), clear(), eq::net::DataIStream::getRemainingBuffer(), eq::net::DataIStream::getRemainingBufferSize(), and eq::net::DataIStream::nRemainingBuffers().
| void eq::FrameData::attachToSession | ( | const uint32_t | id, | |
| const uint32_t | instanceID, | |||
| net::Session * | session | |||
| ) | [protected, virtual] |
Reimplemented from eq::net::Object.
Definition at line 61 of file frameData.cpp.
References eq::net::Session::getCommandThreadQueue(), and eq::net::Base::registerCommand().
0.6 by
1.5.5