7#ifndef PXR_IMAGING_HD_ST_SUBTEXTURE_IDENTIFIER_H
8#define PXR_IMAGING_HD_ST_SUBTEXTURE_IDENTIFIER_H
11#include "pxr/imaging/hdSt/api.h"
17PXR_NAMESPACE_OPEN_SCOPE
35 virtual std::unique_ptr<HdStSubtextureIdentifier> Clone()
const = 0;
44 virtual ID _Hash()
const = 0;
77 ID _Hash()
const override;
104 bool premultiplyAlpha,
105 const TfToken& sourceColorSpace);
108 std::unique_ptr<HdStSubtextureIdentifier> Clone()
const override;
111 bool GetFlipVertically()
const {
return _flipVertically; }
114 bool GetPremultiplyAlpha()
const {
return _premultiplyAlpha; }
117 TfToken GetSourceColorSpace()
const {
return _sourceColorSpace; }
124 ID _Hash()
const override;
127 bool _flipVertically;
128 bool _premultiplyAlpha;
165 std::unique_ptr<HdStSubtextureIdentifier> Clone()
const override;
174 ID _Hash()
const override;
192 std::unique_ptr<HdStSubtextureIdentifier> Clone()
const override;
195 bool GetPremultiplyAlpha()
const {
return _premultiplyAlpha; }
202 ID _Hash()
const override;
205 bool _premultiplyAlpha;
222 const TfToken& sourceColorSpace);
225 std::unique_ptr<HdStSubtextureIdentifier> Clone()
const override;
228 bool GetPremultiplyAlpha()
const {
return _premultiplyAlpha; }
231 TfToken GetSourceColorSpace()
const {
return _sourceColorSpace; }
238 ID _Hash()
const override;
241 bool _premultiplyAlpha;
266 std::unique_ptr<HdStSubtextureIdentifier> Clone()
const override;
276 ID _Hash()
const override;
279PXR_NAMESPACE_CLOSE_SCOPE
Specifies whether a UV texture should be loaded flipped vertically, whether it should be loaded with ...
HDST_API HdStAssetUvSubtextureIdentifier(bool flipVertically, bool premultiplyAlpha, const TfToken &sourceColorSpace)
C'tor takes bool whether flipping vertically, whether to pre-multiply by alpha, and the texture's sou...
Used as a tag that the Storm texture system returns a HdStDynamicCubemapTextureObject that is populat...
virtual HDST_API HdStDynamicCubemapTextureImplementation * GetTextureImplementation() const
Textures can return their own HdStDynamicUvTextureImplementation to customize the load and commit beh...
Allows external clients to specify how a cubemap texture is loaded from, e.g., a file and how it is c...
Used as a tag that the Storm texture system returns a HdStDynamicUvTextureObject that is populated by...
virtual HDST_API HdStDynamicUvTextureImplementation * GetTextureImplementation() const
Textures can return their own HdStDynamicUvTextureImplementation to customize the load and commit beh...
Allows external clients to specify how a UV texture is loaded from, e.g., a file and how it is commit...
Base class for information identifying a grid in a volume field file.
HDST_API int GetFieldIndex() const
Get field index.
HDST_API TfToken const & GetFieldName() const
Get field name.
Specifies whether a Ptex texture should be loaded with pre-multiplied alpha values.
HDST_API HdStPtexSubtextureIdentifier(bool premultiplyAlpha)
C'tor takes bool whether to pre-multiply by alpha.
Base class for additional information to identify a texture in a file that can contain several textur...
Specifies whether a Udim texture should be loaded with pre-multiplied alpha values and the color spac...
HDST_API HdStUdimSubtextureIdentifier(bool premultiplyAlpha, const TfToken &sourceColorSpace)
C'tor takes bool whether to pre-multiply by alpha and the texture's source color space.
Token for efficient comparison, assignment, and hashing of known strings.
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...