Equalizer
1.8.0
Parallel Rendering Framework
|
Public Member Functions | |
Channel (eq::Window *parent) | |
Public Member Functions inherited from eq::Channel | |
EQ_API | Channel (Window *parent) |
Construct a new channel. More... | |
virtual EQ_API void | drawStatistics () |
Draw a statistics overlay. More... | |
virtual EQ_API void | outlineViewport () |
Outline the current pixel viewport. More... | |
void | changeLatency (const uint32_t latency) |
EQ_API co::CommandQueue * | getPipeThreadQueue () |
EQ_API co::CommandQueue * | getCommandThreadQueue () |
EQ_API uint32_t | getCurrentFrame () const |
void | waitFrameFinished (const uint32_t frame) const |
EQ_API bool | isStopped () const |
EQ_API Pipe * | getPipe () |
EQ_API const Pipe * | getPipe () const |
EQ_API Node * | getNode () |
EQ_API const Node * | getNode () const |
EQ_API Config * | getConfig () |
EQ_API const Config * | getConfig () const |
EQ_API ServerPtr | getServer () |
EQ_API const GLEWContext * | glewGetContext () const |
Get the GLEW context for this channel. More... | |
EQ_API util::ObjectManager & | getObjectManager () |
EQ_API const DrawableConfig & | getDrawableConfig () const |
EQ_API View * | getNativeView () |
Get the channel's native view. More... | |
EQ_API const View * | getNativeView () const |
const-version of getNativeView() More... | |
EQ_API util::FrameBufferObject * | getFrameBufferObject () |
EQ_API const Vector3ub & | getUniqueColor () const |
EQ_API void | addStatistic (Event &event) |
virtual EQ_API Vector2f | getJitter () const |
EQ_API View * | getView () |
Get the channel's current View. More... | |
EQ_API const View * | getView () const |
Const version of getView(). More... | |
EQ_API Frustumf | getScreenFrustum () const |
Returns an orthographic frustum for 2D operations on the view. More... | |
virtual EQ_API void | applyBuffer () |
Apply the current rendering buffer, including the color mask. More... | |
virtual EQ_API void | applyColorMask () const |
Apply the current color mask. More... | |
virtual EQ_API void | applyViewport () const |
Apply the OpenGL viewport for the current rendering task. More... | |
virtual EQ_API void | applyFrustum () const |
Apply the frustum matrix for the current rendering task. More... | |
virtual EQ_API void | applyPerspective () const |
Apply the perspective frustum matrix for the current rendering task. More... | |
virtual EQ_API void | applyOrtho () const |
Apply the orthographic frustum matrix for the current rendering task. More... | |
EQ_API void | applyScreenFrustum () const |
Apply an orthographic frustum for pixel-based 2D operations. More... | |
virtual EQ_API void | applyHeadTransform () const |
Apply the transformation to position the view frustum. More... | |
virtual EQ_API void | applyPerspectiveTransform () const |
Apply the transformation to position the perspective view frustum. More... | |
virtual EQ_API void | applyOrthoTransform () const |
Apply the transformation to position the orthographic view frustum. More... | |
virtual EQ_API void | applyFrameBufferObject () |
Apply the current alternate frame buffer. More... | |
EQ_API void | bindFrameBuffer () |
Rebind the current alternate FBO of the channel or window. More... | |
virtual EQ_API void | resetRegions () |
Reset the declared regions of interest. More... | |
virtual EQ_API void | declareRegion (const eq::PixelViewport ®ion) |
Declare a region covered by the current draw or assemble operation. More... | |
EQ_API void | declareRegion (const eq::Viewport &vp) |
Convenience method to declare a region in relative coordinates. More... | |
EQ_API PixelViewport | getRegion () const |
EQ_API const PixelViewports & | getRegions () const |
Get the current regions of interest. More... | |
EQ_API EventOCommand | sendError (const uint32_t error) |
Send a channel error event to the application node. More... | |
virtual EQ_API bool | processEvent (const Event &event) |
Process a received event. More... | |
Public Member Functions inherited from eq::fabric::Channel< Window, Channel > | |
virtual bool | omitOutput () const |
virtual void | output (std::ostream &) const |
void | init () |
Window * | getWindow () |
const Window * | getWindow () const |
bool | isDestination () const |
void | setViewVersion (const co::ObjectVersion &view) |
const co::ObjectVersion & | getViewVersion () const |
void | setPixelViewport (const PixelViewport &pvp) |
EQFABRIC_INL void | setViewport (const Viewport &vp) |
const PixelViewport & | getNativePixelViewport () const |
bool | hasFixedViewport () const |
EQFABRIC_INL void | setNearFar (const float nearPlane, const float farPlane) |
Set the near and far planes for this channel. More... | |
uint32_t | getDrawable () const |
EQFABRIC_INL VisitorResult | accept (Visitor &visitor) |
Perform a depth-first traversal of this channel. More... | |
EQFABRIC_INL VisitorResult | accept (Visitor &visitor) const |
Const-version of accept(). More... | |
EQFABRIC_INL void | setCapabilities (const uint64_t bitmask) |
Set the capabilities supported by the channel. More... | |
EQFABRIC_INL uint64_t | getCapabilities () const |
EQFABRIC_INL void | setMaxSize (const Vector2i &size) |
void | setOverdraw (const Vector4i &overdraw) |
const Vector2i & | getMaxSize () const |
EQFABRIC_INL ChannelPath | getPath () const |
virtual EQFABRIC_INL void | backup () |
virtual EQFABRIC_INL void | restore () |
uint32_t | getDrawBuffer () const |
uint32_t | getReadBuffer () const |
const ColorMask & | getDrawBufferMask () const |
const PixelViewport & | getPixelViewport () const |
const Frustumf & | getFrustum () const |
const Frustumf & | getPerspective () const |
const Frustumf & | getOrtho () const |
const Matrix4f & | getHeadTransform () const |
Return the view matrix. More... | |
const Matrix4f & | getPerspectiveTransform () const |
Return the perspective view matrix. More... | |
const Matrix4f & | getOrthoTransform () const |
Return the orthographic view matrix. More... | |
const Viewport & | getViewport () const |
const Range & | getRange () const |
const Pixel & | getPixel () const |
const SubPixel & | getSubPixel () const |
const Zoom & | getZoom () const |
uint32_t | getPeriod () const |
uint32_t | getPhase () const |
const Vector2i & | getPixelOffset () const |
Get the channel's current position wrt the destination channel. More... | |
Eye | getEye () const |
const Vector4i & | getOverdraw () const |
uint32_t | getTaskID () const |
EQFABRIC_INL int32_t | getIAttribute (const IAttribute attr) const |
EQFABRIC_INL const std::string & | getSAttribute (const SAttribute attr) const |
Public Member Functions inherited from eq::fabric::Object | |
virtual EQFABRIC_API bool | isDirty () const |
virtual EQFABRIC_API uint128_t | commit (const uint32_t incarnation=CO_COMMIT_NEXT) |
virtual EQFABRIC_API void | setName (const std::string &name) |
Set the name of the object. More... | |
EQFABRIC_API const std::string & | getName () const |
EQFABRIC_API void | setUserData (co::Object *userData) |
Set user-specific data. More... | |
EQFABRIC_API co::Object * | getUserData () |
EQFABRIC_API const co::Object * | getUserData () const |
EQFABRIC_API uint32_t | getTasks () const |
Return the set of tasks this channel might execute in the worst case. More... | |
EQFABRIC_API uint32_t | getSerial () const |
Protected Member Functions | |
virtual | ~Channel () |
Destruct the channel. More... | |
bool | configInit (const eq::uint128_t &initID) override |
Initialize this channel. More... | |
bool | configExit () override |
Exit this channel. More... | |
void | frameStart (const eq::uint128_t &frameID, const uint32_t frameNumber) override |
Start rendering a frame. More... | |
void | frameDraw (const eq::uint128_t &frameID) override |
Draw the scene. More... | |
void | frameAssemble (const eq::uint128_t &, const eq::Frames &) override |
Assemble all input frames. More... | |
void | frameReadback (const eq::uint128_t &, const eq::Frames &) override |
Read back the rendered frame buffer into the output frames. More... | |
void | frameViewFinish (const eq::uint128_t &frameID) override |
Finish updating a destination channel. More... | |
void | frameClear (const eq::uint128_t &frameID) override |
Clear the frame buffer. More... | |
bool | useOrtho () const override |
Select perspective or orthographic rendering. More... | |
void | clearViewport (const eq::PixelViewport &pvp) |
Protected Member Functions inherited from eq::Channel | |
EQ_API void | attach (const uint128_t &id, const uint32_t instanceID) |
virtual void | frameTilesStart (const uint128_t &) |
Start a batch of tile rendering operations. More... | |
virtual void | frameTilesFinish (const uint128_t &) |
Finish a batch of tile rendering operations. More... | |
virtual EQ_API void | notifyViewportChanged () |
Notification that parameters influencing the vp/pvp have changed. More... | |
virtual EQ_API void | notifyStopFrame (const uint32_t lastFrameNumber) |
Notify interruption of the rendering. More... | |
EQ_API void | startFrame (const uint32_t frameNumber) |
Start a frame by unlocking all child resources. More... | |
EQ_API void | releaseFrame (const uint32_t frameNumber) |
Signal the completion of a frame to the parent. More... | |
EQ_API void | releaseFrameLocal (const uint32_t frameNumber) |
Release the local synchronization of the parent for a frame. More... | |
virtual EQ_API void | setupAssemblyState () |
Setup the OpenGL state for a readback or assemble operation. More... | |
virtual EQ_API void | resetAssemblyState () |
Reset the OpenGL state after an assembly operation. More... | |
virtual EQ_API void | frameFinish (const uint128_t &frameID, const uint32_t frameNumber) |
Finish rendering a frame. More... | |
virtual EQ_API void | frameDrawFinish (const uint128_t &frameID, const uint32_t frameNumber) |
Finish drawing. More... | |
virtual EQ_API void | frameViewStart (const uint128_t &frameID) |
Start updating a destination channel. More... | |
Protected Member Functions inherited from eq::fabric::Channel< Window, Channel > | |
EQFABRIC_INL | Channel (Window *parent) |
Construct a new channel. | |
Channel (const Channel &from) | |
Construct a copy of a channel (view/segment dest). | |
virtual EQFABRIC_INL void | serialize (co::DataOStream &os, const uint64_t dirtyBits) |
virtual EQFABRIC_INL void | deserialize (co::DataIStream &is, const uint64_t dirtyBits) |
virtual EQFABRIC_INL void | setDirty (const uint64_t bits) |
void | setDrawable (const uint32_t drawable) |
void | setIAttribute (const IAttribute attr, const int32_t value) |
void | setSAttribute (const SAttribute attr, const std::string &value) |
virtual ChangeType | getChangeType () const |
virtual uint64_t | getRedistributableBits () const |
virtual void | updateCapabilities () |
void | overrideContext (RenderContext &context) |
void | resetContext () |
const RenderContext & | getContext () const |
const RenderContext & | getNativeContext () const |
Protected Member Functions inherited from eq::fabric::Object | |
EQFABRIC_API | Object () |
Construct a new Object. More... | |
EQFABRIC_API | Object (const Object &) |
Construct an unmapped, unregistered copy of an object. More... | |
virtual EQFABRIC_API | ~Object () |
Destruct the object. More... | |
EQFABRIC_API Object & | operator= (const Object &from) |
NOP assignment operator. More... | |
virtual bool | hasMasterUserData () |
virtual uint32_t | getUserDataLatency () const |
EQFABRIC_API void | setTasks (const uint32_t tasks) |
virtual EQFABRIC_API void | notifyDetach () |
EQFABRIC_API void | postRemove (Object *child) |
virtual void | removeChild (const uint128_t &) |
template<class C , class S > | |
void | commitChild (C *child, S *sender, uint32_t cmd, const uint32_t incarnation) |
template<class C > | |
void | commitChild (C *child, const uint32_t incarnation) |
template<class C , class S > | |
void | commitChildren (const std::vector< C * > &children, S *sender, uint32_t cmd, const uint32_t incarnation) |
template<class C > | |
void | commitChildren (const std::vector< C * > &children, uint32_t cmd, const uint32_t incarnation) |
template<class C > | |
void | commitChildren (const std::vector< C * > &children, const uint32_t incarnation) |
template<class C > | |
void | syncChildren (const std::vector< C * > &children) |
template<class P , class C > | |
void | releaseChildren (const std::vector< C * > &children) |
EQFABRIC_API bool | _cmdSync (co::ICommand &command) |
Additional Inherited Members | |
Public Types inherited from eq::fabric::Channel< Window, Channel > | |
enum | Drawable |
The drawable format defines the components used as an alternate drawable for this channel. More... | |
typedef LeafVisitor< Channel > | Visitor |
The channel visitor type. | |
typedef Window | Parent |
The parent window type. | |
enum | IAttribute |
Integer attributes for a channel. More... | |
enum | SAttribute |
String attributes. More... | |
Public Types inherited from eq::fabric::Object | |
enum | DirtyBits { DIRTY_NAME = Serializable::DIRTY_CUSTOM << 0, DIRTY_USERDATA = Serializable::DIRTY_CUSTOM << 1, DIRTY_TASKS = Serializable::DIRTY_CUSTOM << 2, DIRTY_REMOVED = Serializable::DIRTY_CUSTOM << 3, DIRTY_SERIAL = Serializable::DIRTY_CUSTOM << 4, DIRTY_CUSTOM = Serializable::DIRTY_CUSTOM << 6, DIRTY_OBJECT_BITS = DIRTY_NAME | DIRTY_USERDATA } |
The changed parts of the object since the last pack(). More... | |
Static Public Member Functions inherited from eq::fabric::Channel< Window, Channel > | |
static EQFABRIC_INL const std::string & | getIAttributeString (const IAttribute attr) |
static EQFABRIC_INL const std::string & | getSAttributeString (const SAttribute attr) |
Protected Types inherited from eq::fabric::Channel< Window, Channel > | |
enum | DirtyBits |
Definition at line 42 of file share/Equalizer/examples/eVolve/channel.h.
|
inlineprotectedvirtual |
Destruct the channel.
Reimplemented from eq::Channel.
Definition at line 48 of file share/Equalizer/examples/eVolve/channel.h.
|
overrideprotectedvirtual |
Exit this channel.
Reimplemented from eq::Channel.
Definition at line 70 of file eVolve/channel.cpp.
References eq::Channel::configExit(), and eq::Frame::getFrameData().
|
overrideprotectedvirtual |
Initialize this channel.
initID | the init identifier. |
Reimplemented from eq::Channel.
Definition at line 61 of file eVolve/channel.cpp.
References eq::Channel::configInit(), and eq::fabric::Channel< Window, Channel >::setNearFar().
|
overrideprotectedvirtual |
Assemble all input frames.
Called 0 to n times during one frame.
frameID | the per-frame identifier. |
frames | the input frames. |
Reimplemented from eq::Channel.
Definition at line 280 of file eVolve/channel.cpp.
References eq::Compositor::assembleFrame(), eq::Compositor::assembleFramesSorted(), eq::Channel::getDrawableConfig(), eq::Frame::getFrameData(), eq::Frame::getImages(), eq::Channel::getObjectManager(), eq::fabric::Frame::getOffset(), eq::fabric::Channel< Window, Channel >::getPixelViewport(), eq::Frame::getRange(), eq::Channel::getRegions(), eq::fabric::Frame::getZoom(), eq::Frame::readback(), eq::Channel::resetAssemblyState(), eq::fabric::Frame::setOffset(), eq::fabric::Frame::setZoom(), and eq::Frame::waitReady().
|
overrideprotectedvirtual |
Clear the frame buffer.
Called 0 to n times during one frame.
frameID | the per-frame identifier. |
Reimplemented from eq::Channel.
Definition at line 95 of file eVolve/channel.cpp.
References eq::Channel::applyBuffer(), eq::Channel::applyViewport(), and eq::fabric::Channel< Window, Channel >::getRange().
|
overrideprotectedvirtual |
Draw the scene.
Called 0 to n times during one frame.
frameID | the per-frame identifier. |
Reimplemented from eq::Channel.
Definition at line 146 of file eVolve/channel.cpp.
References eq::Channel::applyBuffer(), eq::Channel::applyFrustum(), eq::Channel::applyHeadTransform(), eq::Channel::applyViewport(), eq::Channel::getPipe(), eq::fabric::Channel< Window, Channel >::getRange(), eq::Channel::getUniqueColor(), and eq::Channel::outlineViewport().
|
overrideprotectedvirtual |
Read back the rendered frame buffer into the output frames.
Called 0 to n times during one frame.
frameID | the per-frame identifier. |
frames | the output frames. |
Reimplemented from eq::Channel.
Definition at line 380 of file eVolve/channel.cpp.
References eq::fabric::Frame::BUFFER_COLOR, eq::fabric::Frame::BUFFER_DEPTH, eq::Frame::disableBuffer(), eq::Channel::frameReadback(), eq::Frame::getFrameData(), and eq::Frame::setQuality().
|
overrideprotectedvirtual |
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 78 of file eVolve/channel.cpp.
References eVolve::BG_COLOR, eVolve::BG_WHITE, eq::Channel::frameStart(), and eq::Channel::getUniqueColor().
|
overrideprotectedvirtual |
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 396 of file eVolve/channel.cpp.
References eq::Channel::frameViewFinish().
|
overrideprotectedvirtual |
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 197 of file eVolve/channel.cpp.