Go to the documentation of this file.
35 #include "../../../Primitives/interface/FlagEnum.h"
44 {0x5b2ea04e, 0x8128, 0x45e4,{0xaa, 0x4d, 0x6d, 0xc7, 0xe7, 0xd, 0xc4, 0x24}};
133 #if DILIGENT_CPP_INTERFACE
147 TextureDim{_TextureDim},
149 MostDetailedMip{_MostDetailedMip},
152 NumArraySlices{_NumArrayOrDepthSlices},
153 AccessFlags{_AccessFlags},
187 #define DILIGENT_INTERFACE_NAME ITextureView
188 #include "../../../Primitives/interface/DefineInterfaceHelperMacros.h"
190 #define ITextureViewInclusiveMethods \
191 IDeviceObjectInclusiveMethods; \
192 ITextureViewMethods TextureView
204 #if DILIGENT_CPP_INTERFACE
230 #include "../../../Primitives/interface/UndefInterfaceHelperMacros.h"
232 #if DILIGENT_C_INTERFACE
234 # define ITextureView_GetDesc(This) (const struct TextureViewDesc*)IDeviceObject_GetDesc(This)
238 # define ITextureView_SetSampler(This, ...) CALL_IFACE_METHOD(TextureView, SetSampler, This, __VA_ARGS__)
239 # define ITextureView_GetSampler(This) CALL_IFACE_METHOD(TextureView, GetSampler, This)
240 # define ITextureView_GetTexture(This) CALL_IFACE_METHOD(TextureView, GetTexture, This)
TEXTURE_FORMAT Format
View format. If default value Diligent::TEX_FORMAT_UNKNOWN is provided, the view format will match th...
Definition: TextureView.h:94
#define DILIGENT_END_INTERFACE
Definition: DefineInterfaceHelperMacros.h:88
struct INTERFACE_ID INTERFACE_ID
Definition: InterfaceID.h:54
@ UAV_ACCESS_FLAG_READ
Allow read operations on the UAV.
Definition: TextureView.h:55
#define VIRTUAL
Definition: DefineInterfaceHelperMacros.h:83
UAV_ACCESS_FLAG
Describes allowed unordered access view mode.
Definition: TextureView.h:49
bool operator==(const TextureViewDesc &RHS) const
Tests if two structures are equivalent.
Definition: TextureView.h:163
TEXTURE_VIEW_FLAGS
Texture view flags.
Definition: TextureView.h:66
Texture sampler interface.
Definition: Sampler.h:192
@ UAV_ACCESS_FLAG_READ_WRITE
Allow read and write operations on the UAV.
Definition: TextureView.h:61
Uint32 MostDetailedMip
Most detailed mip level to use.
Definition: TextureView.h:97
#define DILIGENT_BEGIN_INTERFACE(Name, Base)
Definition: CommonDefinitions.h:97
Uint32 Flags
Definition: DXBCUtils.cpp:71
Uint32 NumMipLevels
Total number of mip levels for the view of the texture. Render target and depth stencil views can add...
Definition: TextureView.h:104
Uint32 NumArraySlices
For a texture array, number of array slices to address in the view. Set to 0 to address all array sli...
Definition: TextureView.h:119
@ UAV_ACCESS_FLAG_WRITE
Allow write operations on the UAV.
Definition: TextureView.h:58
int NumMipLevels
Definition: GenerateMipsCS_inc.h:23
Texture view interface.
Definition: TextureView.h:202
UAV_ACCESS_FLAG AccessFlags
For an unordered access view, allowed access flags. See Diligent::UAV_ACCESS_FLAG for details.
Definition: TextureView.h:128
TEXTURE_VIEW_TYPE
Texture view type.
Definition: GraphicsTypes.h:274
struct DeviceObjectAttribs DeviceObjectAttribs
Definition: GraphicsTypes.h:1212
Base interface for all objects created by the render device Diligent::IRenderDevice.
Definition: DeviceObject.h:52
#define THIS
Definition: DefineInterfaceHelperMacros.h:81
@ TEX_FORMAT_UNKNOWN
Unknown format.
Definition: GraphicsTypes.h:331
#define PURE
Definition: DefineInterfaceHelperMacros.h:85
TEXTURE_VIEW_TYPE ViewType
Describes the texture view type, see Diligent::TEXTURE_VIEW_TYPE for details.
Definition: TextureView.h:83
Uint32 FirstArraySlice
For a texture array, first array slice to address in the view.
Definition: TextureView.h:109
#define DILIGENT_END_NAMESPACE
Definition: CommonDefinitions.h:86
TEXTURE_VIEW_FLAGS Flags
Texture view flags, see Diligent::TEXTURE_VIEW_FLAGS.
Definition: TextureView.h:131
#define DILIGENT_DERIVE(TypeName)
Definition: CommonDefinitions.h:90
int FirstArraySlice
Definition: GenerateMipsCS_inc.h:24
struct TextureViewDesc TextureViewDesc
Definition: TextureView.h:183
@ RESOURCE_DIM_UNDEFINED
Texture type undefined.
Definition: GraphicsTypes.h:258
uint32_t Uint32
32-bit unsigned integer
Definition: BasicTypes.h:51
#define DEFAULT_INITIALIZER(x)
Definition: CommonDefinitions.h:93
RESOURCE_DIMENSION TextureDim
View interpretation of the original texture. For instance, one slice of a 2D texture array can be vie...
Definition: TextureView.h:90
@ TEXTURE_VIEW_FLAG_ALLOW_MIP_MAP_GENERATION
Allow automatic mipmap generation for this view. This flag is only allowed for TEXTURE_VIEW_SHADER_RE...
Definition: TextureView.h:74
TEXTURE_FORMAT
Texture formats.
Definition: GraphicsTypes.h:328
@ TEXTURE_VIEW_FLAG_NONE
No flags.
Definition: TextureView.h:69
#define METHOD(Name)
Definition: DefineInterfaceHelperMacros.h:87
TextureViewDesc(TEXTURE_VIEW_TYPE _ViewType, RESOURCE_DIMENSION _TextureDim, TEXTURE_FORMAT _Format=TextureViewDesc{}.Format, Uint32 _MostDetailedMip=TextureViewDesc{}.MostDetailedMip, Uint32 _NumMipLevels=TextureViewDesc{}.NumMipLevels, Uint32 _FirstArrayOrDepthSlice=TextureViewDesc{}.FirstArraySlice, Uint32 _NumArrayOrDepthSlices=TextureViewDesc{}.NumArraySlices, UAV_ACCESS_FLAG _AccessFlags=TextureViewDesc{}.AccessFlags, TEXTURE_VIEW_FLAGS _Flags=TextureViewDesc{}.Flags) noexcept
Definition: TextureView.h:137
#define DILIGENT_TYPED_ENUM(EnumName, EnumType)
Definition: CommonDefinitions.h:88
uint8_t Uint8
8-bit unsigned integer
Definition: BasicTypes.h:53
#define DILIGENT_BEGIN_NAMESPACE(Name)
Definition: CommonDefinitions.h:82
Uint32 FirstDepthSlice
For a 3D texture, first depth slice to address the view.
Definition: TextureView.h:112
DEFINE_FLAG_ENUM_OPERATORS(FILE_DIALOG_FLAGS)
RESOURCE_DIMENSION
Describes resource dimension.
Definition: GraphicsTypes.h:256
@ UAV_ACCESS_UNSPECIFIED
Access mode is unspecified.
Definition: TextureView.h:52
Texture view description.
Definition: TextureView.h:80
@ TEXTURE_VIEW_UNDEFINED
Undefined view type.
Definition: GraphicsTypes.h:277
Texture inteface.
Definition: Texture.h:273
TextureViewDesc() noexcept
Definition: TextureView.h:135
The library uses Direct3D-style math:
Definition: AdvancedMath.hpp:37
#define THIS_
Definition: DefineInterfaceHelperMacros.h:82
Uint32 NumDepthSlices
For a 3D texture, number of depth slices to address in the view Set to 0 to address all depth slices.
Definition: TextureView.h:123