24#ifndef PXR_IMAGING_HGI_TYPES_H
25#define PXR_IMAGING_HGI_TYPES_H
29#include "pxr/imaging/hgi/api.h"
35PXR_NAMESPACE_OPEN_SCOPE
47 HgiFormatInvalid = -1,
99 HgiFormatUNorm8Vec4srgb,
102 HgiFormatBC6FloatVec3,
105 HgiFormatBC6UFloatVec3,
109 HgiFormatBC7UNorm8Vec4,
113 HgiFormatBC7UNorm8Vec4srgb,
117 HgiFormatBC1UNorm8Vec4,
121 HgiFormatBC3UNorm8Vec4,
124 HgiFormatFloat32UInt8,
128 HgiFormatPackedInt1010102,
148size_t HgiGetComponentCount(HgiFormat f);
159size_t HgiGetDataSizeOfFormat(
161 size_t *blockWidth =
nullptr,
162 size_t *blockHeight =
nullptr);
166bool HgiIsCompressed(HgiFormat f);
172size_t HgiGetDataSize(
179HgiFormat HgiGetComponentBaseFormat(
196std::vector<HgiMipInfo>
201 size_t dataByteSize = std::numeric_limits<size_t>::max());
203PXR_NAMESPACE_CLOSE_SCOPE
Basic type for a vector of 3 int components.
HgiMipInfo describes size and other info for a mip level.
size_t byteOffset
Offset in bytes from start of texture data to start of mip map.
GfVec3i dimensions
Dimension of mip GfVec3i.
size_t byteSizePerLayer
size of (one layer if array of) mip map in bytes.