Equalizer
2.0.0
Parallel Rendering Framework
|
Base data transport class for views. More...
#include <view.h>
Public Types | |
enum | Mode { MODE_MONO = 1, MODE_STEREO } |
The current rendering mode. More... | |
enum | DirtyBits { DIRTY_VIEWPORT = Object::DIRTY_CUSTOM << 0, DIRTY_OBSERVER = Object::DIRTY_CUSTOM << 1, DIRTY_OVERDRAW = Object::DIRTY_CUSTOM << 2, DIRTY_FRUSTUM = Object::DIRTY_CUSTOM << 3, DIRTY_MODE = Object::DIRTY_CUSTOM << 4, DIRTY_MINCAPS = Object::DIRTY_CUSTOM << 5, DIRTY_MAXCAPS = Object::DIRTY_CUSTOM << 6, DIRTY_CAPABILITIES = Object::DIRTY_CUSTOM << 7, DIRTY_EQUALIZER = Object::DIRTY_CUSTOM << 8, DIRTY_EQUALIZERS = Object::DIRTY_CUSTOM << 9, DIRTY_MODELUNIT = Object::DIRTY_CUSTOM << 10, DIRTY_ATTRIBUTES = Object::DIRTY_CUSTOM << 11, DIRTY_VIEW_BITS } |
enum | SAttribute { SATTR_DEFLECT_HOST, SATTR_DEFLECT_ID, SATTR_LAST, SATTR_ALL = SATTR_LAST + 5 } |
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... | |
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 | |
void | setCapabilities (const uint64_t bitmask) |
virtual void | updateCapabilities () |
EQFABRIC_INL const std::string & | getSAttribute (const SAttribute attr) const |
Data Access. | |
EQFABRIC_INL const Viewport & | getViewport () const |
L * | getLayout () |
const L * | getLayout () const |
EQFABRIC_INL void | setObserver (O *observer) |
Set the entity tracking this view. More... | |
O * | getObserver () |
const O * | getObserver () const |
const version of getObserver(). More... | |
EQFABRIC_INL void | setOverdraw (const Vector2i &pixels) |
const Vector2i & | getOverdraw () const |
EQFABRIC_INL void | useEqualizer (uint32_t equalizerMask) |
uint32_t | getEqualizers () const |
EQFABRIC_INL const Equalizer & | getEqualizer () const |
EQFABRIC_INL Equalizer & | getEqualizer () |
EQFABRIC_INL void | setViewport (const Viewport &viewport) |
Mode | getMode () const |
virtual EQFABRIC_INL void | changeMode (const Mode mode) |
Set the mode of this view. More... | |
virtual void | activateMode (const Mode mode) |
EQFABRIC_INL bool | isActive () const |
EQFABRIC_INL bool | setModelUnit (const float modelUnit) |
Set the model unit of this view. More... | |
EQFABRIC_INL float | getModelUnit () const |
Get the model unit of this view. More... | |
Operations | |
EQFABRIC_INL VisitorResult | accept (LeafVisitor< V > &visitor) |
Traverse this view using a view visitor. More... | |
EQFABRIC_INL VisitorResult | accept (LeafVisitor< V > &visitor) const |
Const-version of accept(). More... | |
virtual EQFABRIC_INL void | backup () |
virtual EQFABRIC_INL void | restore () |
EQFABRIC_INL void | setMinimumCapabilities (const uint64_t bitmask) |
Set the minimum required capabilities for this view. More... | |
EQFABRIC_INL uint64_t | getMinimumCapabilities () const |
EQFABRIC_INL void | setMaximumCapabilities (const uint64_t bitmask) |
Set the maximum desired capabilities for this view. More... | |
EQFABRIC_INL uint64_t | getMaximumCapabilities () const |
EQFABRIC_INL uint64_t | getCapabilities () 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 | 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 Wall & | getWall () const |
const Projection & | getProjection () 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) |
Static Public Member Functions | |
static EQFABRIC_INL const std::string & | getSAttributeString (const SAttribute attr) |
Protected Member Functions | |
EQFABRIC_INL | View (L *layout) |
virtual bool | hasMasterUserData () |
The application view instance holds the user data master by default. More... | |
virtual EQFABRIC_INL uint32_t | getUserDataLatency () const |
The view user data instance uses the config latency by default. More... | |
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 | setSAttribute (const SAttribute attr, const std::string &value) |
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 Object & | operator= (const Object &from) |
NOP assignment operator. More... | |
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) |
Protected Member Functions inherited from eq::fabric::Frustum | |
virtual void | updateFrustum () |
Base data transport class for views.
Definition at line 89 of file eq/fabric/types.h.
enum eq::fabric::View::Mode |
The current rendering mode.
Enumerator | |
---|---|
MODE_MONO |
Render in mono (cyclop eye) |
MODE_STEREO |
Render in stereo (left & right eye) |
Definition at line 48 of file fabric/view.h.
enum eq::fabric::View::SAttribute |
String attributes.
Definition at line 239 of file fabric/view.h.
EQFABRIC_INL VisitorResult eq::fabric::View< L, V, O >::accept | ( | LeafVisitor< V > & | visitor | ) |
Traverse this view using a view visitor.
visitor | the visitor. |
Referenced by eq::fabric::View< Layout, View, Observer >::getMode().
EQFABRIC_INL VisitorResult eq::fabric::View< L, V, O >::accept | ( | LeafVisitor< V > & | visitor | ) | const |
Const-version of accept().
|
virtual |
Set the mode of this view.
mode | the new rendering mode |
Referenced by eq::fabric::View< Layout, View, Observer >::getMode().
EQFABRIC_INL uint64_t eq::fabric::View< L, V, O >::getCapabilities | ( | ) | const |
Referenced by eq::fabric::View< Layout, View, Observer >::getMode().
EQFABRIC_INL const Equalizer& eq::fabric::View< L, V, O >::getEqualizer | ( | ) | const |
Referenced by eq::fabric::View< Layout, View, Observer >::getEqualizers().
EQFABRIC_INL Equalizer& eq::fabric::View< L, V, O >::getEqualizer | ( | ) |
|
inline |
Definition at line 93 of file fabric/view.h.
|
inline |
Definition at line 63 of file fabric/view.h.
Referenced by eq::fabric::View< Layout, View, Observer >::hasMasterUserData().
|
inline |
Definition at line 69 of file fabric/view.h.
EQFABRIC_INL uint64_t eq::fabric::View< L, V, O >::getMaximumCapabilities | ( | ) | const |
Referenced by eq::fabric::View< Layout, View, Observer >::getMode().
EQFABRIC_INL uint64_t eq::fabric::View< L, V, O >::getMinimumCapabilities | ( | ) | const |
Referenced by eq::fabric::View< Layout, View, Observer >::getMode().
|
inline |
EQFABRIC_INL float eq::fabric::View< L, V, O >::getModelUnit | ( | ) | const |
Get the model unit of this view.
The default model unit is 1 (1 meter or EQ_M).
Referenced by eq::fabric::View< Layout, View, Observer >::getMode().
|
inline |
Definition at line 78 of file fabric/view.h.
|
inline |
|
inline |
Definition at line 87 of file fabric/view.h.
EQFABRIC_INL const std::string& eq::fabric::View< L, V, O >::getSAttribute | ( | const SAttribute | attr | ) | const |
|
static |
|
protectedvirtual |
The view user data instance uses the config latency by default.
Reimplemented from eq::fabric::Object.
Referenced by eq::fabric::View< Layout, View, Observer >::hasMasterUserData().
EQFABRIC_INL const Viewport& eq::fabric::View< L, V, O >::getViewport | ( | ) | const |
|
inlineprotectedvirtual |
The application view instance holds the user data master by default.
Reimplemented from eq::fabric::Object.
Definition at line 267 of file fabric/view.h.
EQFABRIC_INL bool eq::fabric::View< L, V, O >::isActive | ( | ) | const |
Referenced by eq::fabric::View< Layout, View, Observer >::getMode().
EQFABRIC_INL void eq::fabric::View< L, V, O >::setMaximumCapabilities | ( | const uint64_t | bitmask | ) |
Set the maximum desired capabilities for this view.
The capabilities returned by getCapabilities() during rendering match the lowest common denominator of all channel capabilities and this bitmask. Logically it has to be a superset of the minimum capabilities. By default all bits are set.
The capabilities are used to selectively disable source channels in conjunction with a load equalizer. Each channel typically sets its capabilities during configInit. The application sets the minimum and maximum capabilities needed or desired to render this view. The channel queries the capabilities to be used using getCapabilities().
bitmask | the capabilities as bitmask |
Referenced by eq::fabric::View< Layout, View, Observer >::getMode().
EQFABRIC_INL void eq::fabric::View< L, V, O >::setMinimumCapabilities | ( | const uint64_t | bitmask | ) |
Set the minimum required capabilities for this view.
Any channel which does not support all of the bits in this mask does not execute any tasks. By default no bit is set.
bitmask | the capabilities as bitmask |
Referenced by eq::fabric::View< Layout, View, Observer >::getMode().
EQFABRIC_INL bool eq::fabric::View< L, V, O >::setModelUnit | ( | const float | modelUnit | ) |
Set the model unit of this view.
The model unit defines the size of the model wrt the virtual room unit which is always in meter.
modelUnit | the new model unit value |
Referenced by eq::fabric::View< Layout, View, Observer >::getMode().
EQFABRIC_INL void eq::fabric::View< L, V, O >::setObserver | ( | O * | observer | ) |
Set the entity tracking this view.
Referenced by eq::fabric::View< Layout, View, Observer >::getLayout().
EQFABRIC_INL void eq::fabric::View< L, V, O >::setOverdraw | ( | const Vector2i & | pixels | ) |
Referenced by eq::fabric::View< Layout, View, Observer >::getObserver().
EQFABRIC_INL void eq::fabric::View< L, V, O >::useEqualizer | ( | uint32_t | equalizerMask | ) |
Referenced by eq::fabric::View< Layout, View, Observer >::getOverdraw().