8 #ifndef PXR_IMAGING_HD_UTILS_H
9 #define PXR_IMAGING_HD_UTILS_H
23 #include <unordered_map>
68 std::string
const &renderInstanceId,
75 auto res = idInstanceMap.insert({renderInstanceId, sp});
78 if (
auto handle = wp.lock()) {
83 "An instance with renderInstanceId %s was already "
84 "registered previously.", renderInstanceId.c_str());
87 res.first->second = sp;
92 std::string
const &renderInstanceId)
94 idInstanceMap.erase(renderInstanceId);
98 std::string
const &
id)
100 const auto it = idInstanceMap.find(
id);
101 if (it != idInstanceMap.end()) {
111 using _IdToInstanceMap = std::unordered_map<std::string, TWeakPtr>;
112 _IdToInstanceMap idInstanceMap;
122 const HdSceneIndexBaseRefPtr &si,
147 const HdSceneIndexBaseRefPtr &si,
154 HdContainerDataSourceHandle
162 HdContainerDataSourceHandle
167 HdContainerDataSourceHandle
174 #endif // PXR_IMAGING_HD_UTILS_H
PXR_NAMESPACE_OPEN_SCOPE TF_DECLARE_REF_PTRS(HdSceneIndexBase)
static SDF_API const SdfPath & AbsoluteRootPath()
TSharedPtr GetInstance(std::string const &id)
HD_API CameraUtilConformWindowPolicy ToConformWindowPolicy(const TfToken &token)
HD_API bool GetCurrentFrame(const HdSceneIndexBaseRefPtr &si, double *frame)
std::weak_ptr< T > TWeakPtr
void RegisterInstance(std::string const &renderInstanceId, TSharedPtr const &sp)
HD_API void PrintSceneIndex(std::ostream &out, const HdSceneIndexBaseRefPtr &si, const SdfPath &rootPath=SdfPath::AbsoluteRootPath())
std::shared_ptr< T > TSharedPtr
HD_API HdContainerDataSourceHandle ConvertVtDictionaryToContainerDS(const VtDictionary &dict)
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
void UnregisterInstance(std::string const &renderInstanceId)
HD_API bool HasActiveRenderSettingsPrim(const HdSceneIndexBaseRefPtr &si, SdfPath *primPath=nullptr)
#define PXR_NAMESPACE_CLOSE_SCOPE
HD_API HdContainerDataSourceHandle ConvertHdMaterialNetworkToHdMaterialNetworkSchema(const HdMaterialNetworkMap &hdNetworkMap)
HD_API HdContainerDataSourceHandle ConvertHdMaterialNetworkToHdMaterialSchema(const HdMaterialNetworkMap &hdNetworkMap)