eq::Layout Class Reference

A Layout groups one or more View which logically belong together. More...

#include <layout.h>

Inheritance diagram for eq::Layout:

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

Collaboration graph
[legend]

List of all members.

Public Member Functions

 Layout ()
 Constructs a new Layout.
virtual ~Layout ()
 Destruct this layout.
Data Access
const ViewVectorgetViews () const
 Get the list of views.
ConfiggetConfig ()
const ConfiggetConfig () const
Operations
VisitorResult accept (LayoutVisitor &visitor)
 Traverse this layout and all children using a layout visitor.
virtual void deregister ()
 Deregister this layout, and all children, from its net::Session.

Protected Types

enum  DirtyBits { DIRTY_VIEWS = Object::DIRTY_CUSTOM << 0, DIRTY_FILL1 = Object::DIRTY_CUSTOM << 1, DIRTY_FILL2 = Object::DIRTY_CUSTOM << 2, DIRTY_CUSTOM = Object::DIRTY_CUSTOM << 3 }
 The changed parts of the object since the last pack(). More...

Protected Member Functions

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

Friends

class server::Layout
class Config


Detailed Description

A Layout groups one or more View which logically belong together.

A layout is applied to a Canvas. If no layout is applied to a canvas, nothing is rendered on this canvas, i.e, the canvas is inactive. The layout assignment can be changed at run-time by the application. The intersection between views and segments defines which output (sub-)channels are available. These channels are typically used as destination channels in a compound. They are automatically created during configuration load.

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


Member Enumeration Documentation

enum eq::Layout::DirtyBits [protected]

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

Subclasses should define their own bits, starting at DIRTY_CUSTOM.

Reimplemented from eq::Object.

Definition at line 89 of file lib/client/layout.h.


Constructor & Destructor Documentation

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

Destruct this layout.

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


Member Function Documentation

const ViewVector& eq::Layout::getViews (  )  const [inline]

Get the list of views.

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

VisitorResult eq::Layout::accept ( LayoutVisitor visitor  ) 

Traverse this layout and all children using a layout visitor.

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

Definition at line 102 of file lib/client/layout.cpp.

References eq::View::accept(), eq::TRAVERSE_CONTINUE, eq::TRAVERSE_PRUNE, eq::TRAVERSE_TERMINATE, eq::LayoutVisitor::visitPost(), and eq::LayoutVisitor::visitPre().

Here is the call graph for this function:

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

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

Definition at line 80 of file lib/client/layout.cpp.

References eq::View::_layout, eq::net::Session::deregisterObject(), eq::net::Object::getID(), eq::Global::getNodeFactory(), eq::net::Object::isMaster(), eq::NodeFactory::releaseView(), and eq::net::Session::unmapObject().

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

Here is the call graph for this function:

Here is the caller graph for this function:

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


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