]> git.proxmox.com Git - rustc.git/blame - vendor/windows-sys/src/Windows/AI/MachineLearning/mod.rs
New upstream version 1.63.0+dfsg1
[rustc.git] / vendor / windows-sys / src / Windows / AI / MachineLearning / mod.rs
CommitLineData
5e7ed085
FG
1#[cfg(feature = "AI_MachineLearning_Preview")]
2pub mod Preview;
3pub type ILearningModelFeatureDescriptor = *mut ::core::ffi::c_void;
4pub type ILearningModelFeatureValue = *mut ::core::ffi::c_void;
5pub type ILearningModelOperatorProvider = *mut ::core::ffi::c_void;
6pub type ITensor = *mut ::core::ffi::c_void;
7pub type ImageFeatureDescriptor = *mut ::core::ffi::c_void;
8pub type ImageFeatureValue = *mut ::core::ffi::c_void;
9pub type LearningModel = *mut ::core::ffi::c_void;
10pub type LearningModelBinding = *mut ::core::ffi::c_void;
11pub type LearningModelDevice = *mut ::core::ffi::c_void;
04454e1e 12#[doc = "*Required features: `\"AI_MachineLearning\"`*"]
5e7ed085
FG
13#[repr(transparent)]
14pub struct LearningModelDeviceKind(pub i32);
15impl LearningModelDeviceKind {
16 pub const Default: Self = Self(0i32);
17 pub const Cpu: Self = Self(1i32);
18 pub const DirectX: Self = Self(2i32);
19 pub const DirectXHighPerformance: Self = Self(3i32);
20 pub const DirectXMinPower: Self = Self(4i32);
21}
22impl ::core::marker::Copy for LearningModelDeviceKind {}
23impl ::core::clone::Clone for LearningModelDeviceKind {
24 fn clone(&self) -> Self {
25 *self
26 }
27}
28pub type LearningModelEvaluationResult = *mut ::core::ffi::c_void;
04454e1e 29#[doc = "*Required features: `\"AI_MachineLearning\"`*"]
5e7ed085
FG
30#[repr(transparent)]
31pub struct LearningModelFeatureKind(pub i32);
32impl LearningModelFeatureKind {
33 pub const Tensor: Self = Self(0i32);
34 pub const Sequence: Self = Self(1i32);
35 pub const Map: Self = Self(2i32);
36 pub const Image: Self = Self(3i32);
37}
38impl ::core::marker::Copy for LearningModelFeatureKind {}
39impl ::core::clone::Clone for LearningModelFeatureKind {
40 fn clone(&self) -> Self {
41 *self
42 }
43}
04454e1e 44#[doc = "*Required features: `\"AI_MachineLearning\"`*"]
5e7ed085
FG
45#[repr(transparent)]
46pub struct LearningModelPixelRange(pub i32);
47impl LearningModelPixelRange {
48 pub const ZeroTo255: Self = Self(0i32);
49 pub const ZeroToOne: Self = Self(1i32);
50 pub const MinusOneToOne: Self = Self(2i32);
51}
52impl ::core::marker::Copy for LearningModelPixelRange {}
53impl ::core::clone::Clone for LearningModelPixelRange {
54 fn clone(&self) -> Self {
55 *self
56 }
57}
58pub type LearningModelSession = *mut ::core::ffi::c_void;
59pub type LearningModelSessionOptions = *mut ::core::ffi::c_void;
60pub type MapFeatureDescriptor = *mut ::core::ffi::c_void;
61pub type SequenceFeatureDescriptor = *mut ::core::ffi::c_void;
62pub type TensorBoolean = *mut ::core::ffi::c_void;
63pub type TensorDouble = *mut ::core::ffi::c_void;
64pub type TensorFeatureDescriptor = *mut ::core::ffi::c_void;
65pub type TensorFloat = *mut ::core::ffi::c_void;
66pub type TensorFloat16Bit = *mut ::core::ffi::c_void;
67pub type TensorInt16Bit = *mut ::core::ffi::c_void;
68pub type TensorInt32Bit = *mut ::core::ffi::c_void;
69pub type TensorInt64Bit = *mut ::core::ffi::c_void;
70pub type TensorInt8Bit = *mut ::core::ffi::c_void;
04454e1e 71#[doc = "*Required features: `\"AI_MachineLearning\"`*"]
5e7ed085
FG
72#[repr(transparent)]
73pub struct TensorKind(pub i32);
74impl TensorKind {
75 pub const Undefined: Self = Self(0i32);
76 pub const Float: Self = Self(1i32);
77 pub const UInt8: Self = Self(2i32);
78 pub const Int8: Self = Self(3i32);
79 pub const UInt16: Self = Self(4i32);
80 pub const Int16: Self = Self(5i32);
81 pub const Int32: Self = Self(6i32);
82 pub const Int64: Self = Self(7i32);
83 pub const String: Self = Self(8i32);
84 pub const Boolean: Self = Self(9i32);
85 pub const Float16: Self = Self(10i32);
86 pub const Double: Self = Self(11i32);
87 pub const UInt32: Self = Self(12i32);
88 pub const UInt64: Self = Self(13i32);
89 pub const Complex64: Self = Self(14i32);
90 pub const Complex128: Self = Self(15i32);
91}
92impl ::core::marker::Copy for TensorKind {}
93impl ::core::clone::Clone for TensorKind {
94 fn clone(&self) -> Self {
95 *self
96 }
97}
98pub type TensorString = *mut ::core::ffi::c_void;
99pub type TensorUInt16Bit = *mut ::core::ffi::c_void;
100pub type TensorUInt32Bit = *mut ::core::ffi::c_void;
101pub type TensorUInt64Bit = *mut ::core::ffi::c_void;
102pub type TensorUInt8Bit = *mut ::core::ffi::c_void;