Equalizer
1.11.0
Parallel Rendering Framework
|
Base data transport class for pipes. More...
#include <pipe.h>
Public Types | |
typedef std::vector< W * > | Windows |
A vector of pointers to windows. 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 Member Functions | |
Data Access | |
N * | getNode () |
const N * | getNode () const |
const Windows & | getWindows () const |
uint32_t | getPort () const |
Returns the port number of this pipe. More... | |
EQFABRIC_INL void | setPort (const uint32_t port) |
uint32_t | getDevice () const |
Returns the device number of this pipe. More... | |
EQFABRIC_INL void | setDevice (const uint32_t device) |
const PixelViewport & | getPixelViewport () const |
EQFABRIC_INL void | setPixelViewport (const PixelViewport &pvp) |
Set the pipe's pixel viewport. More... | |
void | notifyPixelViewportChanged () |
EQFABRIC_INL PipePath | getPath () const |
EQFABRIC_INL VisitorResult | accept (V &visitor) |
Perform a depth-first traversal of this pipe. More... | |
EQFABRIC_INL VisitorResult | accept (V &visitor) const |
Const-version of accept(). More... | |
internal | |
virtual EQFABRIC_INL void | backup () |
virtual EQFABRIC_INL void | restore () |
void | create (W **window) |
void | release (W *window) |
virtual void | output (std::ostream &) const |
virtual EQFABRIC_INL 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 |
Protected Member Functions | |
Pipe (N *parent) | |
virtual 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 EQFABRIC_INL void | setDirty (const uint64_t bits) |
virtual ChangeType | getChangeType () const |
W * | _findWindow (const uint128_t &id) |
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 Object & | operator= (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 | 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) |
Friends | |
template<class , class , class , class > | |
class | Window |
Attributes | |
enum | IAttribute { IATTR_HINT_THREAD, IATTR_HINT_AFFINITY, IATTR_HINT_CUDA_GL_INTEROP, IATTR_LAST, IATTR_ALL = IATTR_LAST + 5 } |
Pipe attributes. More... | |
EQFABRIC_INL void | setIAttribute (const IAttribute attr, const int32_t value) |
int32_t | getIAttribute (const IAttribute attr) const |
bool | isThreaded () const |
static EQFABRIC_INL const std::string & | getIAttributeString (const IAttribute attr) |
Base data transport class for pipes.
Definition at line 31 of file fabric/pipe.h.
typedef std::vector< W* > eq::fabric::Pipe< N, P, W, V >::Windows |
enum eq::fabric::Pipe::IAttribute |
Pipe attributes.
Enumerator | |
---|---|
IATTR_HINT_THREAD |
Execute tasks in separate thread (default) |
IATTR_HINT_AFFINITY |
Bind render thread to subset of cores. |
IATTR_HINT_CUDA_GL_INTEROP |
Configure CUDA context. |
Definition at line 112 of file fabric/pipe.h.
EQFABRIC_INL VisitorResult eq::fabric::Pipe< N, P, W, V >::accept | ( | V & | visitor | ) |
Perform a depth-first traversal of this pipe.
visitor | the visitor. |
EQFABRIC_INL VisitorResult eq::fabric::Pipe< N, P, W, V >::accept | ( | V & | visitor | ) | const |
Const-version of accept().
|
inline |
Returns the device number of this pipe.
The device number identifies the X screen for systems using the X11/GLX window system, or the number of the virtual screen for the AGL window system. On Windows systems it identifies the graphics adapter. Normally the device identifies a GPU.
Definition at line 72 of file fabric/pipe.h.
|
inline |
Definition at line 127 of file fabric/pipe.h.
|
inline |
|
inline |
|
inline |
|
inline |
Returns the port number of this pipe.
The port number identifies the X server for systems using the X11/GLX window system, i.e., the :<port>.<screen> of the DISPLAY name. It currently has no meaning on all other systems.
Definition at line 57 of file fabric/pipe.h.
|
inline |
EQFABRIC_INL void eq::fabric::Pipe< N, P, W, V >::setPixelViewport | ( | const PixelViewport & | pvp | ) |
Set the pipe's pixel viewport.
If invalid, the OSPipe has to set it to the device viewport during configInit().
pvp | the viewport in pixels. |