eq::Canvas Class Reference

The canvas. More...

#include <canvas.h>

Inheritance diagram for eq::Canvas:

Inheritance graph
[legend]
Collaboration diagram for eq::Canvas:

Collaboration graph
[legend]

List of all members.

Public Types

enum  DirtyBits {
  DIRTY_LAYOUT = Frustum::DIRTY_CUSTOM << 0, DIRTY_CHILDREN = Frustum::DIRTY_CUSTOM << 1, DIRTY_FILL1 = Frustum::DIRTY_CUSTOM << 2, DIRTY_FILL2 = Frustum::DIRTY_CUSTOM << 3,
  DIRTY_CUSTOM = Frustum::DIRTY_CUSTOM << 4
}
 The changed parts of the frustum since the last pack(). More...

Public Member Functions

 Canvas ()
 Constructs a new Canvas.
virtual ~Canvas ()
 Destruct this canvas.
Data Access
ConfiggetConfig ()
const ConfiggetConfig () const
uint32_t getActiveLayoutIndex () const
const LayoutgetActiveLayout () const
const SegmentVectorgetSegments () const
const LayoutVectorgetLayouts () const
Operations
virtual void useLayout (const uint32_t index)
 Activate the given layout on this canvas.
VisitorResult accept (CanvasVisitor &visitor)
 Traverse this canvas and all children using a canvas visitor.
virtual void deregister ()
 Deregister this canvas, and all children, from its net::Session.

Protected Member Functions

void serialize (net::DataOStream &os, const uint64_t dirtyBits)
virtual void deserialize (net::DataIStream &is, const uint64_t dirtyBits)

Friends

class Config


Detailed Description

The canvas.

The canvas is a logical 2D projection surface. The server has a list of segments on the canvas, which are mapped to physical output channels. Segments are not visible to the application. The canvas uses a Layout to define the set of logical views used to render on the canvas. The layout can be switched at runtime. A canvas without a layout does not render anything.

Definition at line 46 of file lib/client/canvas.h.


Member Enumeration Documentation

The changed parts of the frustum since the last pack().

Reimplemented from eq::Frustum.

Definition at line 98 of file lib/client/canvas.h.


Constructor & Destructor Documentation

eq::Canvas::~Canvas (  )  [virtual]

Destruct this canvas.

Definition at line 39 of file lib/client/canvas.cpp.


Member Function Documentation

Config* eq::Canvas::getConfig (  )  [inline]

Returns:
the parent config.

Definition at line 62 of file lib/client/canvas.h.

Referenced by eq::Segment::getConfig().

Here is the caller graph for this function:

const Config* eq::Canvas::getConfig (  )  const [inline]

Returns:
the parent config.

Definition at line 64 of file lib/client/canvas.h.

uint32_t eq::Canvas::getActiveLayoutIndex (  )  const [inline]

Returns:
the index of the active layout.

Definition at line 67 of file lib/client/canvas.h.

const Layout * eq::Canvas::getActiveLayout (  )  const

Returns:
the active layout.

Definition at line 114 of file lib/client/canvas.cpp.

Referenced by eqPly::Config::handleEvent().

Here is the caller graph for this function:

const SegmentVector& eq::Canvas::getSegments (  )  const [inline]

Returns:
the vector of child segments.

Definition at line 73 of file lib/client/canvas.h.

const LayoutVector& eq::Canvas::getLayouts (  )  const [inline]

Returns:
the vector of allowed layouts.

Definition at line 76 of file lib/client/canvas.h.

void eq::Canvas::useLayout ( const uint32_t  index  )  [virtual]

Activate the given layout on this canvas.

Definition at line 120 of file lib/client/canvas.cpp.

References eq::Object::setDirty().

Here is the call graph for this function:

VisitorResult eq::Canvas::accept ( CanvasVisitor visitor  ) 

Traverse this canvas and all children using a canvas visitor.

Parameters:
visitor the visitor.
Returns:
the result of the visitor traversal.

Definition at line 174 of file lib/client/canvas.cpp.

void eq::Canvas::deregister (  )  [virtual]

Deregister this canvas, and all children, from its net::Session.

Definition at line 92 of file lib/client/canvas.cpp.

References eq::Segment::_canvas, eq::net::Session::deregisterObject(), eq::net::Object::getID(), eq::Global::getNodeFactory(), eq::net::Object::isMaster(), and eq::NodeFactory::releaseSegment().

Referenced by eq::ConfigDeserializer::applyInstanceData().

Here is the call graph for this function:

Here is the caller graph for this function:

void eq::Canvas::serialize ( net::DataOStream os,
const uint64_t  dirtyBits 
) [protected, virtual]

See also:
Frustum::serialize

Reimplemented from eq::Frustum.

Definition at line 44 of file lib/client/canvas.cpp.

void eq::Canvas::deserialize ( net::DataIStream is,
const uint64_t  dirtyBits 
) [protected, virtual]

See also:
Frustum::deserialize

Reimplemented from eq::Frustum.

Definition at line 54 of file lib/client/canvas.cpp.

References eq::Segment::_canvas, eq::NodeFactory::createSegment(), eq::Config::findLayout(), eq::Global::getNodeFactory(), and eq::net::Session::mapObject().

Here is the call graph for this function:


The documentation for this class was generated from the following files:
Generated on Mon Aug 10 18:58:42 2009 for Equalizer 0.9 by  doxygen 1.5.8