HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HdSceneGlobalsSchema Class Reference

#include <sceneGlobalsSchema.h>

+ Inheritance diagram for HdSceneGlobalsSchema:

Classes

class  Builder
 

Public Member Functions

Member accessor
HD_API HdPathDataSourceHandle GetPrimaryCameraPrim () const
 
HD_API HdPathDataSourceHandle GetActiveRenderPassPrim () const
 
HD_API HdPathDataSourceHandle GetActiveRenderSettingsPrim () const
 
HD_API HdDoubleDataSourceHandle GetStartTimeCode () const
 
HD_API HdDoubleDataSourceHandle GetEndTimeCode () const
 
HD_API HdDoubleDataSourceHandle GetTimeCodesPerSecond () const
 
HD_API HdDoubleDataSourceHandle GetCurrentFrame () const
 
HD_API HdIntDataSourceHandle GetSceneStateId () const
 
- Public Member Functions inherited from HdSchema
 HdSchema (HdContainerDataSourceHandle container)
 
HD_API HdContainerDataSourceHandle GetContainer () const
 Returns the container data source that this schema is interpreting. More...
 
HD_API bool IsDefined () const
 
 operator bool () const
 

Static Public Member Functions

static HD_API HdSceneGlobalsSchema GetFromSceneIndex (const HdSceneIndexBaseRefPtr &si)
 
static const SdfPathGetDefaultPrimPath ()
 
Schema location
static HD_API const TfTokenGetSchemaToken ()
 
static HD_API const
HdDataSourceLocator
GetDefaultLocator ()
 
Data source locators for members

The following methods return an HdDataSourceLocator (relative to the prim-level data source) where the data source for a member can be found.

This is often useful for checking intersection against the HdDataSourceLocatorSet sent with HdDataSourceObserver::PrimsDirtied.

static HD_API const
HdDataSourceLocator
GetPrimaryCameraPrimLocator ()
 Prim-level relative data source locator to locate primaryCameraPrim. More...
 
static HD_API const
HdDataSourceLocator
GetActiveRenderPassPrimLocator ()
 Prim-level relative data source locator to locate activeRenderPassPrim. More...
 
static HD_API const
HdDataSourceLocator
GetActiveRenderSettingsPrimLocator ()
 Prim-level relative data source locator to locate activeRenderSettingsPrim. More...
 
static HD_API const
HdDataSourceLocator
GetStartTimeCodeLocator ()
 Prim-level relative data source locator to locate startTimeCode. More...
 
static HD_API const
HdDataSourceLocator
GetEndTimeCodeLocator ()
 Prim-level relative data source locator to locate endTimeCode. More...
 
static HD_API const
HdDataSourceLocator
GetTimeCodesPerSecondLocator ()
 Prim-level relative data source locator to locate timeCodesPerSecond. More...
 
static HD_API const
HdDataSourceLocator
GetCurrentFrameLocator ()
 Prim-level relative data source locator to locate currentFrame. More...
 
static HD_API const
HdDataSourceLocator
GetSceneStateIdLocator ()
 Prim-level relative data source locator to locate sceneStateId. More...
 
Schema construction
static HD_API
HdContainerDataSourceHandle 
BuildRetained (const HdPathDataSourceHandle &primaryCameraPrim, const HdPathDataSourceHandle &activeRenderPassPrim, const HdPathDataSourceHandle &activeRenderSettingsPrim, const HdDoubleDataSourceHandle &startTimeCode, const HdDoubleDataSourceHandle &endTimeCode, const HdDoubleDataSourceHandle &timeCodesPerSecond, const HdDoubleDataSourceHandle &currentFrame, const HdIntDataSourceHandle &sceneStateId)
 

Schema retrieval

 HdSceneGlobalsSchema (HdContainerDataSourceHandle container)
 
static HD_API HdSceneGlobalsSchema GetFromParent (const HdContainerDataSourceHandle &fromParentContainer)
 

Additional Inherited Members

- Public Types inherited from HdSchema
using UnderlyingDataSource = HdContainerDataSource
 
- Protected Member Functions inherited from HdSchema
template<typename T >
T::Handle _GetTypedDataSource (TfToken name) const
 
- Protected Attributes inherited from HdSchema
HdContainerDataSourceHandle _container
 

Detailed Description

The HdSceneGlobalsSchema encapsulates "global" state to orchestrate a render. It currently houses the active render settings and pass prim paths that describe the information necessary to generate images from a single invocation of a renderer, the active time sample range and current frame number that may be relevant to downstream scene indices (e.g. procedural evaluation), the time codes per second (sometimes informally referred to as FPS), and the primary camera.

We shall use the convention of a container data source at the root prim of the scene index that is populated with this global state. The renderer and downstream scene indices can query it to configure their behavior as necessary.

Definition at line 69 of file sceneGlobalsSchema.h.

Constructor & Destructor Documentation

HdSceneGlobalsSchema::HdSceneGlobalsSchema ( HdContainerDataSourceHandle  container)
inline

Retrieves a container data source with the schema's default name token "sceneGlobals" from the parent container and constructs a HdSceneGlobalsSchema instance. Because the requested container data source may not exist, the result should be checked with IsDefined() or a bool comparison before use.

Definition at line 75 of file sceneGlobalsSchema.h.

Member Function Documentation

static HD_API HdContainerDataSourceHandle HdSceneGlobalsSchema::BuildRetained ( const HdPathDataSourceHandle primaryCameraPrim,
const HdPathDataSourceHandle activeRenderPassPrim,
const HdPathDataSourceHandle activeRenderSettingsPrim,
const HdDoubleDataSourceHandle startTimeCode,
const HdDoubleDataSourceHandle endTimeCode,
const HdDoubleDataSourceHandle timeCodesPerSecond,
const HdDoubleDataSourceHandle currentFrame,
const HdIntDataSourceHandle sceneStateId 
)
static
Deprecated:
Use Builder instead.

Builds a container data source which includes the provided child data sources. Parameters with nullptr values are excluded. This is a low-level interface. For cases in which it's desired to define the container with a sparse set of child fields, the Builder class is often more convenient and readable.

HD_API HdPathDataSourceHandle HdSceneGlobalsSchema::GetActiveRenderPassPrim ( ) const
static HD_API const HdDataSourceLocator& HdSceneGlobalsSchema::GetActiveRenderPassPrimLocator ( )
static

Prim-level relative data source locator to locate activeRenderPassPrim.

HD_API HdPathDataSourceHandle HdSceneGlobalsSchema::GetActiveRenderSettingsPrim ( ) const
static HD_API const HdDataSourceLocator& HdSceneGlobalsSchema::GetActiveRenderSettingsPrimLocator ( )
static

Prim-level relative data source locator to locate activeRenderSettingsPrim.

HD_API HdDoubleDataSourceHandle HdSceneGlobalsSchema::GetCurrentFrame ( ) const
static HD_API const HdDataSourceLocator& HdSceneGlobalsSchema::GetCurrentFrameLocator ( )
static

Prim-level relative data source locator to locate currentFrame.

static HD_API const HdDataSourceLocator& HdSceneGlobalsSchema::GetDefaultLocator ( )
static

Returns an HdDataSourceLocator (relative to the prim-level data source) where the container representing this schema is found by default.

static const SdfPath& HdSceneGlobalsSchema::GetDefaultPrimPath ( )
inlinestatic

Utility method to concretize the convention of parking the "sceneGlobals" container at the root prim of the scene index.

Definition at line 105 of file sceneGlobalsSchema.h.

HD_API HdDoubleDataSourceHandle HdSceneGlobalsSchema::GetEndTimeCode ( ) const
static HD_API const HdDataSourceLocator& HdSceneGlobalsSchema::GetEndTimeCodeLocator ( )
static

Prim-level relative data source locator to locate endTimeCode.

static HD_API HdSceneGlobalsSchema HdSceneGlobalsSchema::GetFromParent ( const HdContainerDataSourceHandle &  fromParentContainer)
static

Retrieves a container data source with the schema's default name token "sceneGlobals" from the parent container and constructs a HdSceneGlobalsSchema instance. Because the requested container data source may not exist, the result should be checked with IsDefined() or a bool comparison before use.

static HD_API HdSceneGlobalsSchema HdSceneGlobalsSchema::GetFromSceneIndex ( const HdSceneIndexBaseRefPtr &  si)
static

Constructs and returns a HdSceneGlobalsSchema from the root prim in the scene index. Since the root prim might not have a data source for this schema, the result should be checked with IsDefined() or a bool conversion before use.

Note
This API is preferable to GetFromParent(container).
HD_API HdPathDataSourceHandle HdSceneGlobalsSchema::GetPrimaryCameraPrim ( ) const
static HD_API const HdDataSourceLocator& HdSceneGlobalsSchema::GetPrimaryCameraPrimLocator ( )
static

Prim-level relative data source locator to locate primaryCameraPrim.

HD_API HdIntDataSourceHandle HdSceneGlobalsSchema::GetSceneStateId ( ) const
static HD_API const HdDataSourceLocator& HdSceneGlobalsSchema::GetSceneStateIdLocator ( )
static

Prim-level relative data source locator to locate sceneStateId.

static HD_API const TfToken& HdSceneGlobalsSchema::GetSchemaToken ( )
static

Returns a token where the container representing this schema is found in a container by default.

HD_API HdDoubleDataSourceHandle HdSceneGlobalsSchema::GetStartTimeCode ( ) const
static HD_API const HdDataSourceLocator& HdSceneGlobalsSchema::GetStartTimeCodeLocator ( )
static

Prim-level relative data source locator to locate startTimeCode.

HD_API HdDoubleDataSourceHandle HdSceneGlobalsSchema::GetTimeCodesPerSecond ( ) const
static HD_API const HdDataSourceLocator& HdSceneGlobalsSchema::GetTimeCodesPerSecondLocator ( )
static

Prim-level relative data source locator to locate timeCodesPerSecond.


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