25 #ifndef PXR_IMAGING_HD_VECTOR_SCHEMA_H 26 #define PXR_IMAGING_HD_VECTOR_SCHEMA_H 28 #include "pxr/imaging/hd/api.h" 30 #include "pxr/imaging/hd/dataSource.h" 32 PXR_NAMESPACE_OPEN_SCOPE
46 static HdVectorDataSourceHandle
49 HdDataSourceBaseHandle *values);
55 bool IsDefined()
const;
59 explicit operator bool()
const {
return IsDefined(); }
66 HdVectorDataSourceHandle _vector;
77 using DataSourceHandle =
typename DataSource::Handle;
82 DataSourceHandle GetElement(
const size_t element)
const {
85 ? DataSource::Cast(_vector->GetElement(element))
94 template<
typename Schema>
101 Schema GetElement(
const size_t element)
const {
104 ? HdContainerDataSource::Cast(_vector->GetElement(element))
109 PXR_NAMESPACE_CLOSE_SCOPE
HD_API HdVectorDataSourceHandle GetVector()
Returns the vector data source that this schema is interpreting.
A datasource representing a concretely-typed sampled value.
Vector schema classes represent a view of a vector data source which is returning untyped data source...
HD_API size_t GetNumElements() const
Number of elements in the vector.
Base class for vector schema classes that represent a view of a vector data source containing data so...
Base class for vector schema classes that represent a view of a vector data source containing contain...