Equalizer  1.11.0
Parallel Rendering Framework
eq::fabric::Segment< C, S, CH > Class Template Reference

Base data transport class for segments. More...

#include <segment.h>

+ Inheritance diagram for eq::fabric::Segment< C, S, CH >:
+ Collaboration diagram for eq::fabric::Segment< C, S, CH >:

Public Types

typedef LeafVisitor< S > Visitor
 The segment 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...
 
- Public Types inherited from eq::fabric::Frustum
enum  Type { TYPE_NONE, TYPE_WALL, TYPE_PROJECTION }
 The type of the last specified frustum. More...
 

Public Member Functions

Data Access
const C * getCanvas () const
 
C * getCanvas ()
 
const ViewportgetViewport () const
 
EQFABRIC_INL void setViewport (const Viewport &vp)
 
void setChannel (CH *channel)
 
CH * getChannel ()
 Return the output channel of this segment. More...
 
const CH * getChannel () const
 Return the output channel of this segment. More...
 
virtual EQFABRIC_INL void setWall (const Wall &wall)
 
virtual EQFABRIC_INL void setProjection (const Projection &)
 
virtual EQFABRIC_INL void unsetFrustum ()
 
uint32_t getEyes () const
 
EQFABRIC_INL void setEyes (const uint32_t eyes)
 
void enableEye (const uint32_t eyes)
 
EQFABRIC_INL void setSwapBarrier (SwapBarrierPtr barrier)
 
SwapBarrierConstPtr getSwapBarrier () const
 
SwapBarrierPtr getSwapBarrier ()
 
Operations
EQFABRIC_INL VisitorResult accept (Visitor &visitor)
 Traverse this segment using a segment visitor. More...
 
EQFABRIC_INL VisitorResult accept (Visitor &visitor) const
 Const-version of accept(). More...
 
void inheritFrustum ()
 
virtual void backup ()
 
virtual void restore ()
 
virtual uint128_t commit (const uint32_t incarnation=CO_COMMIT_NEXT)
 
- Public Member Functions inherited from eq::fabric::Object
virtual EQFABRIC_API bool isDirty () const
 
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
 
- Public Member Functions inherited from eq::fabric::Frustum
EQFABRIC_API Frustum ()
 Construct a new frustum. More...
 
virtual EQFABRIC_API ~Frustum ()
 Destruct the frustum. More...
 
EQFABRIC_API void setWall (const Wall &wall)
 Set the frustum using a wall description. More...
 
EQFABRIC_API void setProjection (const Projection &projection)
 Set the frustum using a projection description. More...
 
const WallgetWall () const
 
const ProjectiongetProjection () const
 
Type getCurrentType () const
 
EQFABRIC_API void unsetFrustum ()
 Set the last specified frustum to TYPE_NONE. More...
 
EQFABRIC_API void serialize (co::DataOStream &os)
 
EQFABRIC_API void deserialize (co::DataIStream &is)
 

Protected Types

enum  DirtyBits {
  DIRTY_VIEWPORT = Object::DIRTY_CUSTOM << 0, DIRTY_FRUSTUM = Object::DIRTY_CUSTOM << 1, DIRTY_CHANNEL = Object::DIRTY_CUSTOM << 2, DIRTY_EYES = Object::DIRTY_CUSTOM << 3,
  DIRTY_SEGMENT_BITS
}
 

Protected Member Functions

EQFABRIC_INL Segment (C *canvas)
 
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 void setDirty (const uint64_t bits)
 
virtual uint64_t getRedistributableBits () const
 
virtual void notifyFrustumChanged ()
 
- 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)
 
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)
 
- Protected Member Functions inherited from eq::fabric::Frustum
virtual void updateFrustum ()
 

Detailed Description

template<class C, class S, class CH>
class eq::fabric::Segment< C, S, CH >

Base data transport class for segments.

See also
eq::Segment

Definition at line 34 of file fabric/segment.h.

Member Typedef Documentation

template<class C, class S, class CH>
typedef LeafVisitor< S > eq::fabric::Segment< C, S, CH >::Visitor

The segment visitor type.

Version
1.0

Definition at line 38 of file fabric/segment.h.

Member Function Documentation

template<class C, class S, class CH>
EQFABRIC_INL VisitorResult eq::fabric::Segment< C, S, CH >::accept ( Visitor visitor)

Traverse this segment using a segment visitor.

Parameters
visitorthe visitor.
Returns
the result of the visitor traversal.
Version
1.0
template<class C, class S, class CH>
EQFABRIC_INL VisitorResult eq::fabric::Segment< C, S, CH >::accept ( Visitor visitor) const

Const-version of accept().

Version
1.0
template<class C, class S, class CH>
const C* eq::fabric::Segment< C, S, CH >::getCanvas ( ) const
inline
Returns
the parent canvas.
Version
1.0

Definition at line 43 of file fabric/segment.h.

template<class C, class S, class CH>
C* eq::fabric::Segment< C, S, CH >::getCanvas ( )
inline
Returns
the parent canvas.
Version
1.0

Definition at line 46 of file fabric/segment.h.

template<class C, class S, class CH>
CH* eq::fabric::Segment< C, S, CH >::getChannel ( )
inline

Return the output channel of this segment.

Version
1.0

Definition at line 76 of file fabric/segment.h.

template<class C, class S, class CH>
const CH* eq::fabric::Segment< C, S, CH >::getChannel ( ) const
inline

Return the output channel of this segment.

Version
1.0

Definition at line 79 of file fabric/segment.h.

template<class C, class S, class CH>
uint32_t eq::fabric::Segment< C, S, CH >::getEyes ( ) const
inline
Returns
the bitwise OR of the eye values.
Version
1.0

Definition at line 91 of file fabric/segment.h.

template<class C, class S, class CH>
const Viewport& eq::fabric::Segment< C, S, CH >::getViewport ( ) const
inline
Returns
the segment's viewport.
Version
1.0

Definition at line 49 of file fabric/segment.h.


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