Equalizer
1.4.1
|
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 the 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 60 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 79 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 68 of file eqPly/channel.cpp.
References eq::Channel::configInit(), and eq::fabric::Channel< Window, Channel >::setNearFar().
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 194 of file eqPly/channel.cpp.
References eq::Channel::applyBuffer(), eq::Channel::applyViewport(), eq::Compositor::assembleFrames(), eq::fabric::Channel< Window, Channel >::getEye(), 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 90 of file eqPly/channel.cpp.
References eq::Channel::applyBuffer(), eq::Channel::applyViewport(), eq::fabric::Channel< Window, Channel >::getEye(), co::Object::getID(), eq::Channel::getUniqueColor(), eq::Channel::getView(), and eq::Channel::resetRegions().
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 124 of file eqPly/channel.cpp.
References eqPly::COLOR_DEMO, eq::fabric::Channel< Window, Channel >::getEye(), eq::fabric::Channel< Window, Channel >::getPeriod(), eq::fabric::Channel< Window, Channel >::getSubPixel(), eq::Channel::getUniqueColor(), and eq::fabric::Channel< Window, Channel >::getWindow().
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 300 of file eqPly/channel.cpp.
void eqPly::Channel::frameReadback | ( | const eq::uint128_t & | frameID | ) | [protected, virtual] |
Read back the rendered frame buffer into the output frames.
Called 0 to n times during one frame.
frameID | the per-frame identifier. |
Reimplemented from eq::Channel.
Definition at line 251 of file eqPly/channel.cpp.
References eq::fabric::Frame::BUFFER_COLOR, EQ_COMPRESSOR_AUTO, EQ_COMPRESSOR_NONE, eq::Channel::getOutputFrames(), eq::Frame::setAlphaUsage(), eq::Frame::setQuality(), and eq::Frame::useCompressor().
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 278 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 321 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(), eq::fabric::Channel< Window, Channel >::getPixelViewport(), eq::Channel::getView(), eq::Event::originator, 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 290 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 500 of file eqPly/channel.cpp.
References eq::fabric::Channel< Window, Channel >::getEye(), eq::fabric::Channel< Window, Channel >::getFrustum(), 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 384 of file eqPly/channel.cpp.