Loading...
Searching...
No Matches
blitCmdsOps.h
1//
2// Copyright 2019 Pixar
3//
4// Licensed under the terms set forth in the LICENSE.txt file available at
5// https://openusd.org/license.
6//
7#ifndef PXR_IMAGING_HGI_BLIT_CMDS_OPS_H
8#define PXR_IMAGING_HGI_BLIT_CMDS_OPS_H
9
10#include "pxr/pxr.h"
11#include "pxr/base/gf/vec3i.h"
12#include "pxr/imaging/hgi/api.h"
13#include "pxr/imaging/hgi/buffer.h"
14#include "pxr/imaging/hgi/enums.h"
15#include "pxr/imaging/hgi/texture.h"
16#include "pxr/imaging/hgi/types.h"
17
18#include <stddef.h>
19
20PXR_NAMESPACE_OPEN_SCOPE
21
22
51{
53 : gpuSourceTexture()
54 , sourceTexelOffset(GfVec3i(0))
55 , mipLevel(0)
56 , cpuDestinationBuffer(nullptr)
57 , destinationByteOffset(0)
58 , destinationBufferByteSize(0)
59 {}
60
61 HgiTextureHandle gpuSourceTexture;
62 GfVec3i sourceTexelOffset;
63 uint32_t mipLevel;
64 void* cpuDestinationBuffer;
65 size_t destinationByteOffset;
66 size_t destinationBufferByteSize;
67};
68
94{
96 : cpuSourceBuffer(nullptr)
97 , bufferByteSize(0)
98 , destinationTexelOffset(GfVec3i(0))
99 , mipLevel(0)
100 , gpuDestinationTexture()
101 {}
102
103 void const* cpuSourceBuffer;
104 size_t bufferByteSize;
105 GfVec3i destinationTexelOffset;
106 uint32_t mipLevel;
107 HgiTextureHandle gpuDestinationTexture;
108};
109
134{
136 : gpuSourceBuffer()
137 , sourceByteOffset(0)
138 , byteSize(0)
139 , gpuDestinationBuffer()
140 , destinationByteOffset(0)
141 {}
142
143 HgiBufferHandle gpuSourceBuffer;
144 size_t sourceByteOffset;
145 size_t byteSize;
146 HgiBufferHandle gpuDestinationBuffer;
147 size_t destinationByteOffset;
148};
149
150
174{
176 : cpuSourceBuffer(nullptr)
177 , sourceByteOffset(0)
178 , gpuDestinationBuffer()
179 , destinationByteOffset(0)
180 , byteSize(0)
181 {}
182
183 void const* cpuSourceBuffer;
184 size_t sourceByteOffset;
185 HgiBufferHandle gpuDestinationBuffer;
186 size_t destinationByteOffset;
187 size_t byteSize;
188};
189
214{
216 : gpuSourceBuffer()
217 , sourceByteOffset(0)
218 , byteSize(0)
219 , cpuDestinationBuffer()
220 , destinationByteOffset(0)
221 {}
222
223 HgiBufferHandle gpuSourceBuffer;
224 size_t sourceByteOffset;
225 size_t byteSize;
226 void* cpuDestinationBuffer;
227 size_t destinationByteOffset;
228};
229
254{
256 : gpuSourceTexture()
257 , sourceTexelOffset(GfVec3i(0))
258 , mipLevel(0)
259 , gpuDestinationBuffer()
260 , destinationByteOffset(0)
261 , byteSize(0)
262 {}
263
264 HgiTextureHandle gpuSourceTexture;
265 GfVec3i sourceTexelOffset;
266 uint32_t mipLevel;
267 HgiBufferHandle gpuDestinationBuffer;
268 size_t destinationByteOffset;
269 size_t byteSize;
270};
271
298{
300 : gpuSourceBuffer()
301 , sourceByteOffset(0)
302 , gpuDestinationTexture()
303 , destinationTexelOffset(GfVec3i(0))
304 , mipLevel(0)
305 , byteSize(0)
306 {}
307
308 HgiBufferHandle gpuSourceBuffer;
309 size_t sourceByteOffset;
310 HgiTextureHandle gpuDestinationTexture;
311 GfVec3i destinationTexelOffset;
312 uint32_t mipLevel;
313 size_t byteSize;
314
315};
316
317PXR_NAMESPACE_CLOSE_SCOPE
318
319#endif
Basic type for a vector of 3 int components.
Definition: vec3i.h:44
Describes the properties needed to copy buffer data from CPU to GPU.
Definition: blitCmdsOps.h:174
Describes the properties needed to copy buffer data from GPU to CPU.
Definition: blitCmdsOps.h:214
Describes the properties needed to copy buffer data from GPU to GPU.
Definition: blitCmdsOps.h:134
Describes the properties needed to copy GPU buffer data into a GPU texture.
Definition: blitCmdsOps.h:298
Describes the properties needed to copy texture data from CPU to GPU.
Definition: blitCmdsOps.h:94
Describes the properties needed to copy texture data from GPU to CPU.
Definition: blitCmdsOps.h:51
Describes the properties needed to copy GPU texture data into a GPU buffer.
Definition: blitCmdsOps.h:254