|
HDK
|
#include "pxr/pxr.h"#include "pxr/base/tf/token.h"#include "pxr/base/tf/smallVector.h"#include "pxr/base/tf/staticTokens.h"#include "pxr/base/tf/hash.h"#include "pxr/imaging/hd/api.h"#include <iosfwd>
Include dependency graph for dataSourceLocator.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Classes | |
| class | HdDataSourceLocator |
| class | HdDataSourceLocatorSet |
| class | HdDataSourceLocatorSet::IntersectionIterator |
| class | HdDataSourceLocatorSet::IntersectionView |
Macros | |
| #define | HD_DATA_SOURCE_LOCATOR_SENTINEL_TOKENS ((container, "__containerDataSource")) |
Functions | |
| TF_DECLARE_PUBLIC_TOKENS (HdDataSourceLocatorSentinelTokens, HD_API, HD_DATA_SOURCE_LOCATOR_SENTINEL_TOKENS) | |
| HD_API std::ostream & | operator<< (std::ostream &out, const HdDataSourceLocator &self) |
| HD_API std::ostream & | operator<< (std::ostream &out, const HdDataSourceLocatorSet &self) |
| #define HD_DATA_SOURCE_LOCATOR_SENTINEL_TOKENS ((container, "__containerDataSource")) |
Definition at line 22 of file dataSourceLocator.h.
| HD_API std::ostream& operator<< | ( | std::ostream & | out, |
| const HdDataSourceLocator & | self | ||
| ) |
| HD_API std::ostream& operator<< | ( | std::ostream & | out, |
| const HdDataSourceLocatorSet & | self | ||
| ) |
| TF_DECLARE_PUBLIC_TOKENS | ( | HdDataSourceLocatorSentinelTokens | , |
| HD_API | , | ||
| HD_DATA_SOURCE_LOCATOR_SENTINEL_TOKENS | |||
| ) |
Special tokens in a data source locator.
HdDataSourceLocatorSentinelTokens->container indicates that the container data source needs to be refetched even though none of its contained data sources have changed unless indicated by another data source locator.
For example, assume that MyFilteringSceneIndex::GetPrim("/MyPrim") previously returned the result from the input scene index but now returns HdContainerDataSourceEditor(_GetInputScene()->GetPrim("/MyPrim")) .Set(HdDataSourceLocator("foo", "bar", "mySource"), mySource) .Finish(). Then it needs to send prims dirtied with HdDataSourceLocatorSet{ HdDataSourceLocator( HdDataSourceLocatorSentinelTokens->container), HdDataSourceLocator( "foo", HdDataSourceLocatorSentinelTokens->container), HdDataSourceLocator( "foo", "bar", HdDataSourceLocatorSentinelTokens->container), HdDataSourceLocator( "foo", "bar", "mySource")}.