Equalizer  2.1.0
Parallel Rendering Framework
eq::Layout Class Reference

A layout groups one or more View, logically belonging together. More...

#include <layout.h>

+ Inheritance diagram for eq::Layout:
+ Collaboration diagram for eq::Layout:

Public Member Functions

EQ_API Layout (Config *parent)
 Construct a new layout. More...
 
virtual EQ_API ~Layout ()
 Destruct a layout. More...
 
Data Access
EQ_API ServerPtr getServer ()
 
- Public Member Functions inherited from eq::fabric::Layout< Config, Layout, View >
EQFABRIC_INL VisitorResult accept (Visitor &visitor)
 Traverse this layout and all children using a layout visitor. More...
 
EQFABRIC_INL VisitorResult accept (Visitor &visitor) const
 Const-version of accept(). More...
 
EQFABRIC_INL void setPixelViewport (const PixelViewport &pvp)
 Resize the underlying channels to form a layout of the given size. More...
 
EQFABRIC_INL const PixelViewportgetPixelViewport () const
 
void create (View **view)
 
void release (View *view)
 
ConfiggetConfig ()
 
const ConfiggetConfig () const
 
const ViewsgetViews () const
 Get the list of views. More...
 
EQFABRIC_INL bool isActive () const
 
ViewgetView (const ViewPath &path)
 
ViewfindView (const std::string &name)
 
LayoutPath getPath () const
 
- Public Member Functions inherited from eq::fabric::Object
EQFABRIC_API bool isDirty () const override
 
EQFABRIC_API uint128_t commit (const uint32_t incarnation=CO_COMMIT_NEXT) override
 
virtual EQFABRIC_API void backup ()
 
virtual EQFABRIC_API void restore ()
 
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
 

Additional Inherited Members

- Public Types inherited from eq::fabric::Layout< Config, Layout, View >
typedef std::vector< View * > Views
 A vector of pointers to views. More...
 
typedef ElementVisitor< Layout, LeafVisitor< View > > Visitor
 The layout visitor type. 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...
 
- Protected Types inherited from eq::fabric::Layout< Config, Layout, View >
enum  DirtyBits
 
- Protected Member Functions inherited from eq::fabric::Layout< Config, Layout, View >
EQFABRIC_INL Layout (Config *config)
 
virtual EQFABRIC_INL void attach (const uint128_t &id, const uint32_t instanceID)
 
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 notifyDetach ()
 
virtual void notifyViewportChanged ()
 
virtual EQFABRIC_INL void setDirty (const uint64_t bits)
 
virtual uint64_t getRedistributableBits () 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 Objectoperator= (const Object &from)
 NOP assignment operator. More...
 
virtual bool hasMasterUserData ()
 
virtual uint32_t getUserDataLatency () const
 
EQFABRIC_API void setTasks (const uint32_t tasks)
 
EQFABRIC_API void notifyDetach () override
 
EQFABRIC_API void serialize (co::DataOStream &os, const uint64_t dirtyBits) override
 
EQFABRIC_API void deserialize (co::DataIStream &is, const uint64_t dirtyBits) override
 
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)
 
EQFABRIC_API void updateEvent (Event &event, int64_t time)
 

Detailed Description

A layout groups one or more View, logically belonging together.

A layout belongs to one or more Canvas. Currently, the layout assignment can be changed at run-time by the application, out of a pre-defined set of layouts for each canvas.

The intersection between views and segments defines which destination channels are available. Neither the views nor the segments have to cover the full layout or canvas, respectively. These channels are typically used as a destination Channel in a compound. They are automatically created when the configuration is loaded.

See also
fabric::Layout

Definition at line 49 of file layout.h.

Constructor & Destructor Documentation

EQ_API eq::Layout::Layout ( Config parent)
explicit

Construct a new layout.

Version
1.0
virtual EQ_API eq::Layout::~Layout ( )
virtual

Destruct a layout.

Version
1.0

Reimplemented from eq::fabric::Layout< Config, Layout, View >.

Member Function Documentation

EQ_API ServerPtr eq::Layout::getServer ( )
Returns
the Server of this layout.
Version
1.0

The documentation for this class was generated from the following file: