24 #ifndef PXR_IMAGING_HD_ST_SAMPLER_OBJECT_REGISTRY_H
25 #define PXR_IMAGING_HD_ST_SAMPLER_OBJECT_REGISTRY_H
28 #include "pxr/imaging/hdSt/api.h"
33 PXR_NAMESPACE_OPEN_SCOPE
36 using HdStTextureObjectSharedPtr =
37 std::shared_ptr<class HdStTextureObject>;
38 using HdStSamplerObjectSharedPtr =
39 std::shared_ptr<class HdStSamplerObject>;
55 class HdSt_SamplerObjectRegistry final
62 ~HdSt_SamplerObjectRegistry();
70 HdStSamplerObjectSharedPtr AllocateSampler(
71 HdStTextureObjectSharedPtr
const &texture,
73 bool createBindlessHandle);
77 void GarbageCollect();
80 void MarkGarbageCollectionNeeded();
88 std::vector<HdStSamplerObjectSharedPtr> _samplerObjects;
90 bool _garbageCollectionNeeded;
94 PXR_NAMESPACE_CLOSE_SCOPE
A central registry of all GPU resources.
Collection of standard parameters such as wrap modes to sample a texture.