-
Notifications
You must be signed in to change notification settings - Fork 34
Expand file tree
/
Copy pathEnums.h
More file actions
65 lines (55 loc) · 1.66 KB
/
Copy pathEnums.h
File metadata and controls
65 lines (55 loc) · 1.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
//===- Enums.h - Offload API Device API -----------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
#ifndef OFFLOADTEST_API_ENUMS_H
#define OFFLOADTEST_API_ENUMS_H
namespace offloadtest {
enum class ResourceKind {
Buffer,
StructuredBuffer,
ByteAddressBuffer,
Texture2D,
RWBuffer,
RWStructuredBuffer,
RWByteAddressBuffer,
RWTexture2D,
ConstantBuffer,
Sampler,
SampledTexture2D,
AccelerationStructure,
};
enum ShaderContainerType {
DXIL,
SPIRV,
Metal,
};
/// Action applied to an attachment when a render pass begins.
enum class LoadAction {
Load, ///< Preserve existing contents.
Clear, ///< Clear to the texture's OptimizedClearValue at encoder time.
DontCare, ///< Contents are undefined; the driver may discard.
};
/// Action applied to an attachment when a render pass ends.
enum class StoreAction {
Store, ///< Write the rendered contents back to memory.
DontCare, ///< Contents may be discarded after the pass.
};
enum class PrimitiveTopology { TriangleList, PointList, PatchList };
/// Per-draw rasterizer shading rate (D3D12 VRS Tier 1). Tier 1 hardware
/// supports the four base rates (1x1, 1x2, 2x1, 2x2); the additional rates
/// (2x4, 4x2, 4x4) require AdditionalShadingRatesSupported.
enum class ShadingRate {
Rate_1x1,
Rate_1x2,
Rate_2x1,
Rate_2x2,
Rate_2x4,
Rate_4x2,
Rate_4x4,
};
} // namespace offloadtest
#endif // OFFLOADTEST_API_ENUMS_H