![]() |
ufe 6.2
Universal Front End is a DCC-agnostic component that will allow a DCC to browse and edit data in multiple data models
|
Provides services that operate on a scene segment. This base class defines an interface that runtimes can implement to provide services for a scene segment. More...
#include <sceneSegmentHandler.h>
Public Types | |
typedef std::shared_ptr< SceneSegmentHandler > | Ptr |
Public Member Functions | |
SceneSegmentHandler () | |
Constructor. More... | |
SceneSegmentHandler (const SceneSegmentHandler &)=default | |
Default copy constructor. More... | |
virtual | ~SceneSegmentHandler () |
Destructor. More... | |
virtual bool | isGateway_ (const Path &path) const =0 |
virtual Selection | findGatewayItems_ (const Path &path) const =0 |
virtual Selection | findGatewayItems_ (const Path &path, Rtid nestedRtid) const =0 |
virtual Path | rootSceneSegmentRootPath () const =0 |
Static Public Member Functions | |
static Ptr | sceneSegmentHandler (Rtid) |
static bool | isGateway (const Path &path) |
static Selection | findGatewayItems (const Path &path) |
static Selection | findGatewayItems (const Path &path, Rtid nestedRtid) |
Provides services that operate on a scene segment. This base class defines an interface that runtimes can implement to provide services for a scene segment.
A scene segment is a group of related scene items which are all in the same runtime. A scene segment can be nested within another scene segment under a specific scene item. A scene item which nests a scene segment is called a gateway item. All the scene segments in the scene collectively form a tree.
A nested scene segment will typically belong to a different runtime. It is possible to have a runtime that defines paths with more than one path segment, all with the same runTimeId, to represent peculiarities of paths in its data model, in which case a nested scene segment would have the same runTimeId. This is not expected to be a common case.
When a scene item has children whose runTimeId differs from its own runTimeId, that scene item is a gateway node and those children are in a different scene segment. All of the children of a scene item have the same runTimeId.
When consecutive path segments in a path have a different runTimeIds, then by definition that is a boundary between scene segments. When consecutive path segments in a path have the same runTimeId, then it may or may not be a boundary between scene segments, at the discretion of the runtime.
Definition at line 42 of file sceneSegmentHandler.h.
typedef std::shared_ptr<SceneSegmentHandler> Ufe::SceneSegmentHandler::Ptr |
Definition at line 45 of file sceneSegmentHandler.h.
Ufe::SceneSegmentHandler::SceneSegmentHandler | ( | ) |
Constructor.
|
default |
Default copy constructor.
|
virtual |
Destructor.
Find the gateway items which are descendants of path within path's scene segment. If path is a gateway node then search the scene segment which is an immediate child of path.
path | Path to root of hierarchy under which gateway items should be found, but only in the path's scene segment. |
|
static |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
path | Path to root of hierarchy under which gateway items should be found, but only in the path's scene segment. |
nestedRtid | Filter and return only those gateways whose nested scene segment runtime ID matches the argument. |
|
pure virtual |
Find the gateway items which are descendants of path within path's scene segment. If path is a gateway node then search the scene segment which is an immediate child of path.
path | Path to root of hierarchy under which gateway items should be found, but only in the path's scene segment. |
|
pure virtual |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
path | Path to root of hierarchy under which gateway items should be found, but only in the path's scene segment. |
nestedRtid | Filter and return only those gateways whose nested scene segment runtime ID matches the argument. |
|
static |
path | The path of interest |
|
pure virtual |
path | The path of interest |
|
pure virtual |
Assuming a scene that has its root scene segment with the runtime ID of this scene segment handler, return the constant path that is the root of the root scene segment. By definition, this path will have a single path segment, since it describes the root scene segment. It will most likely have a small number of path components, often a single one, to represent the root of the scene graph.
Convenience method to retrieve the scene segment handler.