Equalizer 1.0
|
The rendering entity, updating a part of a Window. More...
#include <channel.h>
Classes | |
struct | Accum |
Public Member Functions | |
Channel (eq::Window *parent) | |
Construct a new channel. | |
bool | stopRendering () const |
Protected Member Functions | |
virtual | ~Channel () |
Destruct the channel. | |
virtual bool | configInit (const eq::uint128_t &initID) |
Initialize this channel. | |
virtual bool | configExit () |
Exit this channel. | |
virtual void | frameClear (const eq::uint128_t &frameID) |
Clear the frame buffer. | |
virtual void | frameDraw (const eq::uint128_t &frameID) |
Draw the scene. | |
virtual void | frameAssemble (const eq::uint128_t &frameID) |
Assemble all input frames. | |
virtual void | frameReadback (const eq::uint128_t &frameID) |
Read back the rendered frame buffer into all output frames. | |
virtual void | frameStart (const eq::uint128_t &frameID, const uint32_t frameNumber) |
Start rendering a frame. | |
virtual void | frameFinish (const eq::uint128_t &frameID, const uint32_t frameNumber) |
Finish rendering a frame. | |
virtual void | frameViewStart (const eq::uint128_t &frameID) |
Start updating a destination channel. | |
virtual void | frameViewFinish (const eq::uint128_t &frameID) |
Finish updating a destination channel. | |
virtual bool | useOrtho () const |
Select perspective or orthographic rendering. | |
virtual eq::Vector2f | getJitter () const |
virtual void | notifyStopFrame (const uint32_t lastFrameNumber) |
Notify interruption of the rendering. |
The rendering entity, updating a part of a Window.
Definition at line 48 of file share/Equalizer/examples/eqPly/channel.h.
eqPly::Channel::Channel | ( | eq::Window * | parent | ) |
Construct a new channel.
Reimplemented from eq::Channel.
Definition at line 61 of file eqPly/channel.cpp.
virtual eqPly::Channel::~Channel | ( | ) | [inline, protected, virtual] |
Destruct the channel.
Reimplemented from eq::Channel.
Definition at line 56 of file share/Equalizer/examples/eqPly/channel.h.
bool eqPly::Channel::configExit | ( | ) | [protected, virtual] |
Exit this channel.
Reimplemented from eq::Channel.
Definition at line 80 of file eqPly/channel.cpp.
bool eqPly::Channel::configInit | ( | const eq::uint128_t & | initID | ) | [protected, virtual] |
Initialize this channel.
initID | the init identifier. |
Reimplemented from eq::Channel.
Definition at line 69 of file eqPly/channel.cpp.
References eq::Channel::configInit(), eq::fabric::Channel< Window, Channel >::setNearFar(), and co::base::UUID::ZERO.
void eqPly::Channel::frameAssemble | ( | const eq::uint128_t & | frameID | ) | [protected, virtual] |
Assemble all input frames.
Called 0 to n times during one frame.
frameID | the per-frame identifier. |
Reimplemented from eq::Channel.
Definition at line 186 of file eqPly/channel.cpp.
References eq::Channel::applyBuffer(), eq::Channel::applyViewport(), eq::Compositor::assembleFrames(), EQWARN, eq::fabric::Channel< Window, Channel >::getEye(), co::base::getIndexOfLastBit(), eq::Channel::getInputFrames(), eq::Frame::getPeriod(), eq::fabric::Channel< Window, Channel >::getPixelViewport(), eq::Frame::getSubPixel(), eq::Channel::resetAssemblyState(), and eq::Channel::setupAssemblyState().
void eqPly::Channel::frameClear | ( | const eq::uint128_t & | frameID | ) | [protected, virtual] |
Clear the frame buffer.
Called 0 to n times during one frame.
frameID | the per-frame identifier. |
Reimplemented from eq::Channel.
Definition at line 91 of file eqPly/channel.cpp.
References eq::Channel::applyBuffer(), eq::Channel::applyViewport(), eq::fabric::Channel< Window, Channel >::getEye(), co::Object::getID(), co::base::getIndexOfLastBit(), eq::Channel::getUniqueColor(), and eq::Channel::getView().
void eqPly::Channel::frameDraw | ( | const eq::uint128_t & | frameID | ) | [protected, virtual] |
Draw the scene.
Called 0 to n times during one frame.
frameID | the per-frame identifier. |
Reimplemented from eq::Channel.
Definition at line 123 of file eqPly/channel.cpp.
References eqPly::COLOR_DEMO, eq::fabric::Channel< Window, Channel >::getEye(), co::base::getIndexOfLastBit(), eq::fabric::Channel< Window, Channel >::getPeriod(), eq::fabric::Channel< Window, Channel >::getSubPixel(), and eq::Channel::getUniqueColor().
void eqPly::Channel::frameFinish | ( | const eq::uint128_t & | frameID, |
const uint32_t | frameNumber | ||
) | [protected, virtual] |
Finish rendering a frame.
Called once at the end of each frame, to do per-frame updates of channel-specific data. This method has to call releaseFrame().
frameID | the per-frame identifier. |
frameNumber | the frame to finish. |
Reimplemented from eq::Channel.
Definition at line 285 of file eqPly/channel.cpp.
void eqPly::Channel::frameReadback | ( | const eq::uint128_t & | frameID | ) | [protected, virtual] |
Read back the rendered frame buffer into all output frames.
Called 0 to n times during one frame.
frameID | the per-frame identifier. |
Reimplemented from eq::Channel.
Definition at line 238 of file eqPly/channel.cpp.
References eq::Frame::BUFFER_COLOR, eq::Channel::getOutputFrames(), eq::Frame::setAlphaUsage(), and eq::Frame::setQuality().
void eqPly::Channel::frameStart | ( | const eq::uint128_t & | frameID, |
const uint32_t | frameNumber | ||
) | [protected, virtual] |
Start rendering a frame.
Called once at the beginning of each frame, to do per-frame updates of channel-specific data. This method has to call startFrame().
frameID | the per-frame identifier. |
frameNumber | the frame to start. |
Reimplemented from eq::Channel.
Definition at line 263 of file eqPly/channel.cpp.
void eqPly::Channel::frameViewFinish | ( | const eq::uint128_t & | frameID | ) | [protected, virtual] |
Finish updating a destination channel.
Called once on each destination channel, e.g., channels which are defined by a view/segment intersection, before frameFinish to update a part of a view.
This is typically used to do operations on the output channel after it has been fully updated, e.g., to draw a 2D overlay.
frameID | the per-frame identifier. |
Reimplemented from eq::Channel.
Definition at line 306 of file eqPly/channel.cpp.
References eq::Channel::applyBuffer(), eq::Channel::applyViewport(), eq::ConfigEvent::data, eq::Channel::drawStatistics(), eq::Channel::getConfig(), eq::fabric::Channel< Window, Channel >::getEye(), co::Object::getID(), co::base::getIndexOfLastBit(), eq::fabric::Channel< Window, Channel >::getPixelViewport(), eq::Channel::getView(), eq::Channel::resetAssemblyState(), eq::Config::sendEvent(), and eq::Channel::setupAssemblyState().
void eqPly::Channel::frameViewStart | ( | const eq::uint128_t & | frameID | ) | [protected, virtual] |
Start updating a destination channel.
Called once on each destination channel, e.g., channels which are defined by a view/segment intersection, after frameStart to update a part of a display.
frameID | the per-frame identifier. |
Reimplemented from eq::Channel.
Definition at line 275 of file eqPly/channel.cpp.
References eq::fabric::Channel< Window, Channel >::getPixelViewport().
eq::Vector2f eqPly::Channel::getJitter | ( | ) | const [protected, virtual] |
Reimplemented from eq::Channel.
Definition at line 492 of file eqPly/channel.cpp.
References co::base::RNG::get(), eq::fabric::Channel< Window, Channel >::getEye(), eq::fabric::Channel< Window, Channel >::getFrustum(), co::base::getIndexOfLastBit(), eq::Channel::getJitter(), eq::fabric::Channel< Window, Channel >::getPixel(), eq::fabric::Channel< Window, Channel >::getPixelViewport(), and eq::Channel::getView().
virtual void eqPly::Channel::notifyStopFrame | ( | const uint32_t | lastFrameNumber | ) | [inline, protected, virtual] |
Notify interruption of the rendering.
This method is called from the Client command thread, as opposed to the rendering thread. Its purpose is to cause the rendering thread to stop its operations as soon as possible. Normal rendering shall recommence after the given frame.
lastFrameNumber | stop rendering until this frame has been processed. |
Reimplemented from eq::Channel.
Definition at line 74 of file share/Equalizer/examples/eqPly/channel.h.
bool eqPly::Channel::useOrtho | ( | ) | const [protected, virtual] |
Select perspective or orthographic rendering.
Influences the behaviour of getFrustum, getHeadTransform and the corresponding apply methods in eq::Channel. Intended to be overwritten by the implementation to select orthographic rendering.
Reimplemented from eq::fabric::Channel< Window, Channel >.
Definition at line 374 of file eqPly/channel.cpp.