winrt-Windows.Media.FaceAnalysis 2.0.1__tar.gz → 2.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/PKG-INFO +7 -7
- winrt_windows_media_faceanalysis-2.2.0/all-requirements.txt +6 -0
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/py.Windows.Media.FaceAnalysis.cpp +290 -158
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/pyproject.toml +3 -2
- winrt_windows_media_faceanalysis-2.2.0/pywinrt-version.txt +1 -0
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/requirements.txt +2 -2
- winrt_windows_media_faceanalysis-2.2.0/winrt/_winrt_windows_media_faceanalysis.pyi +72 -0
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/winrt/windows/media/faceanalysis/__init__.py +1 -1
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/winrt_Windows.Media.FaceAnalysis.egg-info/PKG-INFO +7 -7
- winrt_windows_media_faceanalysis-2.2.0/winrt_Windows.Media.FaceAnalysis.egg-info/requires.txt +7 -0
- winrt_windows_media_faceanalysis-2.0.1/all-requirements.txt +0 -6
- winrt_windows_media_faceanalysis-2.0.1/pywinrt-version.txt +0 -1
- winrt_windows_media_faceanalysis-2.0.1/winrt/_winrt_windows_media_faceanalysis.pyi +0 -72
- winrt_windows_media_faceanalysis-2.0.1/winrt_Windows.Media.FaceAnalysis.egg-info/requires.txt +0 -7
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/README.md +0 -0
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/setup.cfg +0 -0
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/setup.py +0 -0
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/winrt/windows/media/faceanalysis/py.typed +0 -0
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/winrt_Windows.Media.FaceAnalysis.egg-info/SOURCES.txt +0 -0
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/winrt_Windows.Media.FaceAnalysis.egg-info/dependency_links.txt +0 -0
- {winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/winrt_Windows.Media.FaceAnalysis.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: winrt-Windows.Media.FaceAnalysis
|
|
3
|
-
Version: 2.0
|
|
3
|
+
Version: 2.2.0
|
|
4
4
|
Summary: Python projection of Windows Runtime (WinRT) APIs
|
|
5
5
|
License: MIT
|
|
6
6
|
Project-URL: Documentation, https://pywinrt.readthedocs.io
|
|
@@ -10,14 +10,14 @@ Classifier: Operating System :: Microsoft :: Windows
|
|
|
10
10
|
Classifier: Programming Language :: Python :: 3
|
|
11
11
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
12
12
|
Classifier: Intended Audience :: Developers
|
|
13
|
-
Requires-Python: <3.
|
|
13
|
+
Requires-Python: <3.14,>=3.9
|
|
14
14
|
Description-Content-Type: text/markdown
|
|
15
|
-
Requires-Dist: winrt-runtime==2.0
|
|
15
|
+
Requires-Dist: winrt-runtime==2.2.0
|
|
16
16
|
Provides-Extra: all
|
|
17
|
-
Requires-Dist: winrt-Windows.Foundation[all]==2.0
|
|
18
|
-
Requires-Dist: winrt-Windows.Foundation.Collections[all]==2.0
|
|
19
|
-
Requires-Dist: winrt-Windows.Graphics.Imaging[all]==2.0
|
|
20
|
-
Requires-Dist: winrt-Windows.Media[all]==2.0
|
|
17
|
+
Requires-Dist: winrt-Windows.Foundation[all]==2.2.0; extra == "all"
|
|
18
|
+
Requires-Dist: winrt-Windows.Foundation.Collections[all]==2.2.0; extra == "all"
|
|
19
|
+
Requires-Dist: winrt-Windows.Graphics.Imaging[all]==2.2.0; extra == "all"
|
|
20
|
+
Requires-Dist: winrt-Windows.Media[all]==2.2.0; extra == "all"
|
|
21
21
|
|
|
22
22
|
<!-- warning: Please don't edit this file. It was automatically generated. -->
|
|
23
23
|
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
// WARNING: Please don't edit this file. It was generated by Python/WinRT v2.0
|
|
1
|
+
// WARNING: Please don't edit this file. It was generated by Python/WinRT v2.2.0
|
|
2
2
|
|
|
3
3
|
#include "py.Windows.Media.FaceAnalysis.h"
|
|
4
4
|
|
|
5
|
-
|
|
6
5
|
namespace py::cpp::Windows::Media::FaceAnalysis
|
|
7
6
|
{
|
|
8
7
|
// ----- DetectedFace class --------------------
|
|
@@ -24,14 +23,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
24
23
|
|
|
25
24
|
static PyObject* DetectedFace_get_FaceBox(py::wrapper::Windows::Media::FaceAnalysis::DetectedFace* self, void* /*unused*/) noexcept
|
|
26
25
|
{
|
|
27
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.DetectedFace", L"FaceBox"))
|
|
28
|
-
{
|
|
29
|
-
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
30
|
-
return nullptr;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
26
|
try
|
|
34
27
|
{
|
|
28
|
+
static std::optional<bool> is_property_present{};
|
|
29
|
+
|
|
30
|
+
if (!is_property_present.has_value())
|
|
31
|
+
{
|
|
32
|
+
is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.DetectedFace", L"FaceBox");
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
if (!is_property_present.value())
|
|
36
|
+
{
|
|
37
|
+
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
38
|
+
return nullptr;
|
|
39
|
+
}
|
|
40
|
+
|
|
35
41
|
return py::convert(self->obj.FaceBox());
|
|
36
42
|
}
|
|
37
43
|
catch (...)
|
|
@@ -76,23 +82,20 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
76
82
|
{ }
|
|
77
83
|
};
|
|
78
84
|
|
|
79
|
-
static PyType_Slot _type_slots_DetectedFace[] =
|
|
80
|
-
{
|
|
85
|
+
static PyType_Slot _type_slots_DetectedFace[] = {
|
|
81
86
|
{ Py_tp_new, reinterpret_cast<void*>(_new_DetectedFace) },
|
|
82
87
|
{ Py_tp_dealloc, reinterpret_cast<void*>(_dealloc_DetectedFace) },
|
|
83
88
|
{ Py_tp_methods, reinterpret_cast<void*>(_methods_DetectedFace) },
|
|
84
89
|
{ Py_tp_getset, reinterpret_cast<void*>(_getset_DetectedFace) },
|
|
85
|
-
{ }
|
|
90
|
+
{ }
|
|
86
91
|
};
|
|
87
92
|
|
|
88
|
-
static PyType_Spec type_spec_DetectedFace =
|
|
89
|
-
{
|
|
93
|
+
static PyType_Spec type_spec_DetectedFace = {
|
|
90
94
|
"winrt._winrt_windows_media_faceanalysis.DetectedFace",
|
|
91
95
|
sizeof(py::wrapper::Windows::Media::FaceAnalysis::DetectedFace),
|
|
92
96
|
0,
|
|
93
97
|
Py_TPFLAGS_DEFAULT,
|
|
94
|
-
_type_slots_DetectedFace
|
|
95
|
-
};
|
|
98
|
+
_type_slots_DetectedFace};
|
|
96
99
|
|
|
97
100
|
// ----- FaceDetector class --------------------
|
|
98
101
|
|
|
@@ -117,14 +120,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
117
120
|
|
|
118
121
|
if (arg_count == 0)
|
|
119
122
|
{
|
|
120
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"CreateAsync", 0))
|
|
121
|
-
{
|
|
122
|
-
py::set_arg_count_version_error(0);
|
|
123
|
-
return nullptr;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
123
|
try
|
|
127
124
|
{
|
|
125
|
+
static std::optional<bool> is_overload_present{};
|
|
126
|
+
|
|
127
|
+
if (!is_overload_present.has_value())
|
|
128
|
+
{
|
|
129
|
+
is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"CreateAsync", 0);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
if (!is_overload_present.value())
|
|
133
|
+
{
|
|
134
|
+
py::set_arg_count_version_error(0);
|
|
135
|
+
return nullptr;
|
|
136
|
+
}
|
|
137
|
+
|
|
128
138
|
return py::convert(winrt::Windows::Media::FaceAnalysis::FaceDetector::CreateAsync());
|
|
129
139
|
}
|
|
130
140
|
catch (...)
|
|
@@ -146,14 +156,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
146
156
|
|
|
147
157
|
if (arg_count == 1)
|
|
148
158
|
{
|
|
149
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"DetectFacesAsync", 1))
|
|
150
|
-
{
|
|
151
|
-
py::set_arg_count_version_error(1);
|
|
152
|
-
return nullptr;
|
|
153
|
-
}
|
|
154
|
-
|
|
155
159
|
try
|
|
156
160
|
{
|
|
161
|
+
static std::optional<bool> is_overload_present{};
|
|
162
|
+
|
|
163
|
+
if (!is_overload_present.has_value())
|
|
164
|
+
{
|
|
165
|
+
is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"DetectFacesAsync", 1);
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
if (!is_overload_present.value())
|
|
169
|
+
{
|
|
170
|
+
py::set_arg_count_version_error(1);
|
|
171
|
+
return nullptr;
|
|
172
|
+
}
|
|
173
|
+
|
|
157
174
|
auto param0 = py::convert_to<winrt::Windows::Graphics::Imaging::SoftwareBitmap>(args, 0);
|
|
158
175
|
|
|
159
176
|
return py::convert(self->obj.DetectFacesAsync(param0));
|
|
@@ -166,14 +183,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
166
183
|
}
|
|
167
184
|
else if (arg_count == 2)
|
|
168
185
|
{
|
|
169
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"DetectFacesAsync", 2))
|
|
170
|
-
{
|
|
171
|
-
py::set_arg_count_version_error(2);
|
|
172
|
-
return nullptr;
|
|
173
|
-
}
|
|
174
|
-
|
|
175
186
|
try
|
|
176
187
|
{
|
|
188
|
+
static std::optional<bool> is_overload_present{};
|
|
189
|
+
|
|
190
|
+
if (!is_overload_present.has_value())
|
|
191
|
+
{
|
|
192
|
+
is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"DetectFacesAsync", 2);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
if (!is_overload_present.value())
|
|
196
|
+
{
|
|
197
|
+
py::set_arg_count_version_error(2);
|
|
198
|
+
return nullptr;
|
|
199
|
+
}
|
|
200
|
+
|
|
177
201
|
auto param0 = py::convert_to<winrt::Windows::Graphics::Imaging::SoftwareBitmap>(args, 0);
|
|
178
202
|
auto param1 = py::convert_to<winrt::Windows::Graphics::Imaging::BitmapBounds>(args, 1);
|
|
179
203
|
|
|
@@ -198,14 +222,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
198
222
|
|
|
199
223
|
if (arg_count == 0)
|
|
200
224
|
{
|
|
201
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"GetSupportedBitmapPixelFormats", 0))
|
|
202
|
-
{
|
|
203
|
-
py::set_arg_count_version_error(0);
|
|
204
|
-
return nullptr;
|
|
205
|
-
}
|
|
206
|
-
|
|
207
225
|
try
|
|
208
226
|
{
|
|
227
|
+
static std::optional<bool> is_overload_present{};
|
|
228
|
+
|
|
229
|
+
if (!is_overload_present.has_value())
|
|
230
|
+
{
|
|
231
|
+
is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"GetSupportedBitmapPixelFormats", 0);
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
if (!is_overload_present.value())
|
|
235
|
+
{
|
|
236
|
+
py::set_arg_count_version_error(0);
|
|
237
|
+
return nullptr;
|
|
238
|
+
}
|
|
239
|
+
|
|
209
240
|
return py::convert(winrt::Windows::Media::FaceAnalysis::FaceDetector::GetSupportedBitmapPixelFormats());
|
|
210
241
|
}
|
|
211
242
|
catch (...)
|
|
@@ -227,14 +258,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
227
258
|
|
|
228
259
|
if (arg_count == 1)
|
|
229
260
|
{
|
|
230
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"IsBitmapPixelFormatSupported", 1))
|
|
231
|
-
{
|
|
232
|
-
py::set_arg_count_version_error(1);
|
|
233
|
-
return nullptr;
|
|
234
|
-
}
|
|
235
|
-
|
|
236
261
|
try
|
|
237
262
|
{
|
|
263
|
+
static std::optional<bool> is_overload_present{};
|
|
264
|
+
|
|
265
|
+
if (!is_overload_present.has_value())
|
|
266
|
+
{
|
|
267
|
+
is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"IsBitmapPixelFormatSupported", 1);
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
if (!is_overload_present.value())
|
|
271
|
+
{
|
|
272
|
+
py::set_arg_count_version_error(1);
|
|
273
|
+
return nullptr;
|
|
274
|
+
}
|
|
275
|
+
|
|
238
276
|
auto param0 = py::convert_to<winrt::Windows::Graphics::Imaging::BitmapPixelFormat>(args, 0);
|
|
239
277
|
|
|
240
278
|
return py::convert(winrt::Windows::Media::FaceAnalysis::FaceDetector::IsBitmapPixelFormatSupported(param0));
|
|
@@ -254,14 +292,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
254
292
|
|
|
255
293
|
static PyObject* FaceDetector_get_MinDetectableFaceSize(py::wrapper::Windows::Media::FaceAnalysis::FaceDetector* self, void* /*unused*/) noexcept
|
|
256
294
|
{
|
|
257
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"MinDetectableFaceSize"))
|
|
258
|
-
{
|
|
259
|
-
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
260
|
-
return nullptr;
|
|
261
|
-
}
|
|
262
|
-
|
|
263
295
|
try
|
|
264
296
|
{
|
|
297
|
+
static std::optional<bool> is_property_present{};
|
|
298
|
+
|
|
299
|
+
if (!is_property_present.has_value())
|
|
300
|
+
{
|
|
301
|
+
is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"MinDetectableFaceSize");
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
if (!is_property_present.value())
|
|
305
|
+
{
|
|
306
|
+
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
307
|
+
return nullptr;
|
|
308
|
+
}
|
|
309
|
+
|
|
265
310
|
return py::convert(self->obj.MinDetectableFaceSize());
|
|
266
311
|
}
|
|
267
312
|
catch (...)
|
|
@@ -273,12 +318,6 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
273
318
|
|
|
274
319
|
static int FaceDetector_put_MinDetectableFaceSize(py::wrapper::Windows::Media::FaceAnalysis::FaceDetector* self, PyObject* arg, void* /*unused*/) noexcept
|
|
275
320
|
{
|
|
276
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"MinDetectableFaceSize"))
|
|
277
|
-
{
|
|
278
|
-
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
279
|
-
return -1;
|
|
280
|
-
}
|
|
281
|
-
|
|
282
321
|
if (arg == nullptr)
|
|
283
322
|
{
|
|
284
323
|
PyErr_SetString(PyExc_AttributeError, "can't delete attribute");
|
|
@@ -287,6 +326,19 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
287
326
|
|
|
288
327
|
try
|
|
289
328
|
{
|
|
329
|
+
static std::optional<bool> is_property_present{};
|
|
330
|
+
|
|
331
|
+
if (!is_property_present.has_value())
|
|
332
|
+
{
|
|
333
|
+
is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"MinDetectableFaceSize");
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
if (!is_property_present.value())
|
|
337
|
+
{
|
|
338
|
+
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
339
|
+
return -1;
|
|
340
|
+
}
|
|
341
|
+
|
|
290
342
|
auto param0 = py::convert_to<winrt::Windows::Graphics::Imaging::BitmapSize>(arg);
|
|
291
343
|
|
|
292
344
|
self->obj.MinDetectableFaceSize(param0);
|
|
@@ -301,14 +353,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
301
353
|
|
|
302
354
|
static PyObject* FaceDetector_get_MaxDetectableFaceSize(py::wrapper::Windows::Media::FaceAnalysis::FaceDetector* self, void* /*unused*/) noexcept
|
|
303
355
|
{
|
|
304
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"MaxDetectableFaceSize"))
|
|
305
|
-
{
|
|
306
|
-
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
307
|
-
return nullptr;
|
|
308
|
-
}
|
|
309
|
-
|
|
310
356
|
try
|
|
311
357
|
{
|
|
358
|
+
static std::optional<bool> is_property_present{};
|
|
359
|
+
|
|
360
|
+
if (!is_property_present.has_value())
|
|
361
|
+
{
|
|
362
|
+
is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"MaxDetectableFaceSize");
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
if (!is_property_present.value())
|
|
366
|
+
{
|
|
367
|
+
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
368
|
+
return nullptr;
|
|
369
|
+
}
|
|
370
|
+
|
|
312
371
|
return py::convert(self->obj.MaxDetectableFaceSize());
|
|
313
372
|
}
|
|
314
373
|
catch (...)
|
|
@@ -320,12 +379,6 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
320
379
|
|
|
321
380
|
static int FaceDetector_put_MaxDetectableFaceSize(py::wrapper::Windows::Media::FaceAnalysis::FaceDetector* self, PyObject* arg, void* /*unused*/) noexcept
|
|
322
381
|
{
|
|
323
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"MaxDetectableFaceSize"))
|
|
324
|
-
{
|
|
325
|
-
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
326
|
-
return -1;
|
|
327
|
-
}
|
|
328
|
-
|
|
329
382
|
if (arg == nullptr)
|
|
330
383
|
{
|
|
331
384
|
PyErr_SetString(PyExc_AttributeError, "can't delete attribute");
|
|
@@ -334,6 +387,19 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
334
387
|
|
|
335
388
|
try
|
|
336
389
|
{
|
|
390
|
+
static std::optional<bool> is_property_present{};
|
|
391
|
+
|
|
392
|
+
if (!is_property_present.has_value())
|
|
393
|
+
{
|
|
394
|
+
is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"MaxDetectableFaceSize");
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
if (!is_property_present.value())
|
|
398
|
+
{
|
|
399
|
+
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
400
|
+
return -1;
|
|
401
|
+
}
|
|
402
|
+
|
|
337
403
|
auto param0 = py::convert_to<winrt::Windows::Graphics::Imaging::BitmapSize>(arg);
|
|
338
404
|
|
|
339
405
|
self->obj.MaxDetectableFaceSize(param0);
|
|
@@ -348,14 +414,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
348
414
|
|
|
349
415
|
static PyObject* FaceDetector_get_IsSupported(PyObject* /*unused*/, void* /*unused*/) noexcept
|
|
350
416
|
{
|
|
351
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"IsSupported"))
|
|
352
|
-
{
|
|
353
|
-
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
354
|
-
return nullptr;
|
|
355
|
-
}
|
|
356
|
-
|
|
357
417
|
try
|
|
358
418
|
{
|
|
419
|
+
static std::optional<bool> is_property_present{};
|
|
420
|
+
|
|
421
|
+
if (!is_property_present.has_value())
|
|
422
|
+
{
|
|
423
|
+
is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceDetector", L"IsSupported");
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
if (!is_property_present.value())
|
|
427
|
+
{
|
|
428
|
+
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
429
|
+
return nullptr;
|
|
430
|
+
}
|
|
431
|
+
|
|
359
432
|
return py::convert(winrt::Windows::Media::FaceAnalysis::FaceDetector::IsSupported());
|
|
360
433
|
}
|
|
361
434
|
catch (...)
|
|
@@ -402,23 +475,20 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
402
475
|
{ }
|
|
403
476
|
};
|
|
404
477
|
|
|
405
|
-
static PyType_Slot _type_slots_FaceDetector[] =
|
|
406
|
-
{
|
|
478
|
+
static PyType_Slot _type_slots_FaceDetector[] = {
|
|
407
479
|
{ Py_tp_new, reinterpret_cast<void*>(_new_FaceDetector) },
|
|
408
480
|
{ Py_tp_dealloc, reinterpret_cast<void*>(_dealloc_FaceDetector) },
|
|
409
481
|
{ Py_tp_methods, reinterpret_cast<void*>(_methods_FaceDetector) },
|
|
410
482
|
{ Py_tp_getset, reinterpret_cast<void*>(_getset_FaceDetector) },
|
|
411
|
-
{ }
|
|
483
|
+
{ }
|
|
412
484
|
};
|
|
413
485
|
|
|
414
|
-
static PyType_Spec type_spec_FaceDetector =
|
|
415
|
-
{
|
|
486
|
+
static PyType_Spec type_spec_FaceDetector = {
|
|
416
487
|
"winrt._winrt_windows_media_faceanalysis.FaceDetector",
|
|
417
488
|
sizeof(py::wrapper::Windows::Media::FaceAnalysis::FaceDetector),
|
|
418
489
|
0,
|
|
419
490
|
Py_TPFLAGS_DEFAULT,
|
|
420
|
-
_type_slots_FaceDetector
|
|
421
|
-
};
|
|
491
|
+
_type_slots_FaceDetector};
|
|
422
492
|
|
|
423
493
|
static PyGetSetDef getset_FaceDetector_Static[] = {
|
|
424
494
|
{ "is_supported", reinterpret_cast<getter>(FaceDetector_get_IsSupported), nullptr, nullptr, nullptr },
|
|
@@ -472,14 +542,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
472
542
|
|
|
473
543
|
if (arg_count == 0)
|
|
474
544
|
{
|
|
475
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"CreateAsync", 0))
|
|
476
|
-
{
|
|
477
|
-
py::set_arg_count_version_error(0);
|
|
478
|
-
return nullptr;
|
|
479
|
-
}
|
|
480
|
-
|
|
481
545
|
try
|
|
482
546
|
{
|
|
547
|
+
static std::optional<bool> is_overload_present{};
|
|
548
|
+
|
|
549
|
+
if (!is_overload_present.has_value())
|
|
550
|
+
{
|
|
551
|
+
is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"CreateAsync", 0);
|
|
552
|
+
}
|
|
553
|
+
|
|
554
|
+
if (!is_overload_present.value())
|
|
555
|
+
{
|
|
556
|
+
py::set_arg_count_version_error(0);
|
|
557
|
+
return nullptr;
|
|
558
|
+
}
|
|
559
|
+
|
|
483
560
|
return py::convert(winrt::Windows::Media::FaceAnalysis::FaceTracker::CreateAsync());
|
|
484
561
|
}
|
|
485
562
|
catch (...)
|
|
@@ -501,14 +578,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
501
578
|
|
|
502
579
|
if (arg_count == 0)
|
|
503
580
|
{
|
|
504
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"GetSupportedBitmapPixelFormats", 0))
|
|
505
|
-
{
|
|
506
|
-
py::set_arg_count_version_error(0);
|
|
507
|
-
return nullptr;
|
|
508
|
-
}
|
|
509
|
-
|
|
510
581
|
try
|
|
511
582
|
{
|
|
583
|
+
static std::optional<bool> is_overload_present{};
|
|
584
|
+
|
|
585
|
+
if (!is_overload_present.has_value())
|
|
586
|
+
{
|
|
587
|
+
is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"GetSupportedBitmapPixelFormats", 0);
|
|
588
|
+
}
|
|
589
|
+
|
|
590
|
+
if (!is_overload_present.value())
|
|
591
|
+
{
|
|
592
|
+
py::set_arg_count_version_error(0);
|
|
593
|
+
return nullptr;
|
|
594
|
+
}
|
|
595
|
+
|
|
512
596
|
return py::convert(winrt::Windows::Media::FaceAnalysis::FaceTracker::GetSupportedBitmapPixelFormats());
|
|
513
597
|
}
|
|
514
598
|
catch (...)
|
|
@@ -530,14 +614,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
530
614
|
|
|
531
615
|
if (arg_count == 1)
|
|
532
616
|
{
|
|
533
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"IsBitmapPixelFormatSupported", 1))
|
|
534
|
-
{
|
|
535
|
-
py::set_arg_count_version_error(1);
|
|
536
|
-
return nullptr;
|
|
537
|
-
}
|
|
538
|
-
|
|
539
617
|
try
|
|
540
618
|
{
|
|
619
|
+
static std::optional<bool> is_overload_present{};
|
|
620
|
+
|
|
621
|
+
if (!is_overload_present.has_value())
|
|
622
|
+
{
|
|
623
|
+
is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"IsBitmapPixelFormatSupported", 1);
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
if (!is_overload_present.value())
|
|
627
|
+
{
|
|
628
|
+
py::set_arg_count_version_error(1);
|
|
629
|
+
return nullptr;
|
|
630
|
+
}
|
|
631
|
+
|
|
541
632
|
auto param0 = py::convert_to<winrt::Windows::Graphics::Imaging::BitmapPixelFormat>(args, 0);
|
|
542
633
|
|
|
543
634
|
return py::convert(winrt::Windows::Media::FaceAnalysis::FaceTracker::IsBitmapPixelFormatSupported(param0));
|
|
@@ -561,14 +652,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
561
652
|
|
|
562
653
|
if (arg_count == 1)
|
|
563
654
|
{
|
|
564
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"ProcessNextFrameAsync", 1))
|
|
565
|
-
{
|
|
566
|
-
py::set_arg_count_version_error(1);
|
|
567
|
-
return nullptr;
|
|
568
|
-
}
|
|
569
|
-
|
|
570
655
|
try
|
|
571
656
|
{
|
|
657
|
+
static std::optional<bool> is_overload_present{};
|
|
658
|
+
|
|
659
|
+
if (!is_overload_present.has_value())
|
|
660
|
+
{
|
|
661
|
+
is_overload_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsMethodPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"ProcessNextFrameAsync", 1);
|
|
662
|
+
}
|
|
663
|
+
|
|
664
|
+
if (!is_overload_present.value())
|
|
665
|
+
{
|
|
666
|
+
py::set_arg_count_version_error(1);
|
|
667
|
+
return nullptr;
|
|
668
|
+
}
|
|
669
|
+
|
|
572
670
|
auto param0 = py::convert_to<winrt::Windows::Media::VideoFrame>(args, 0);
|
|
573
671
|
|
|
574
672
|
return py::convert(self->obj.ProcessNextFrameAsync(param0));
|
|
@@ -588,14 +686,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
588
686
|
|
|
589
687
|
static PyObject* FaceTracker_get_MinDetectableFaceSize(py::wrapper::Windows::Media::FaceAnalysis::FaceTracker* self, void* /*unused*/) noexcept
|
|
590
688
|
{
|
|
591
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"MinDetectableFaceSize"))
|
|
592
|
-
{
|
|
593
|
-
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
594
|
-
return nullptr;
|
|
595
|
-
}
|
|
596
|
-
|
|
597
689
|
try
|
|
598
690
|
{
|
|
691
|
+
static std::optional<bool> is_property_present{};
|
|
692
|
+
|
|
693
|
+
if (!is_property_present.has_value())
|
|
694
|
+
{
|
|
695
|
+
is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"MinDetectableFaceSize");
|
|
696
|
+
}
|
|
697
|
+
|
|
698
|
+
if (!is_property_present.value())
|
|
699
|
+
{
|
|
700
|
+
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
701
|
+
return nullptr;
|
|
702
|
+
}
|
|
703
|
+
|
|
599
704
|
return py::convert(self->obj.MinDetectableFaceSize());
|
|
600
705
|
}
|
|
601
706
|
catch (...)
|
|
@@ -607,12 +712,6 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
607
712
|
|
|
608
713
|
static int FaceTracker_put_MinDetectableFaceSize(py::wrapper::Windows::Media::FaceAnalysis::FaceTracker* self, PyObject* arg, void* /*unused*/) noexcept
|
|
609
714
|
{
|
|
610
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"MinDetectableFaceSize"))
|
|
611
|
-
{
|
|
612
|
-
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
613
|
-
return -1;
|
|
614
|
-
}
|
|
615
|
-
|
|
616
715
|
if (arg == nullptr)
|
|
617
716
|
{
|
|
618
717
|
PyErr_SetString(PyExc_AttributeError, "can't delete attribute");
|
|
@@ -621,6 +720,19 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
621
720
|
|
|
622
721
|
try
|
|
623
722
|
{
|
|
723
|
+
static std::optional<bool> is_property_present{};
|
|
724
|
+
|
|
725
|
+
if (!is_property_present.has_value())
|
|
726
|
+
{
|
|
727
|
+
is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"MinDetectableFaceSize");
|
|
728
|
+
}
|
|
729
|
+
|
|
730
|
+
if (!is_property_present.value())
|
|
731
|
+
{
|
|
732
|
+
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
733
|
+
return -1;
|
|
734
|
+
}
|
|
735
|
+
|
|
624
736
|
auto param0 = py::convert_to<winrt::Windows::Graphics::Imaging::BitmapSize>(arg);
|
|
625
737
|
|
|
626
738
|
self->obj.MinDetectableFaceSize(param0);
|
|
@@ -635,14 +747,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
635
747
|
|
|
636
748
|
static PyObject* FaceTracker_get_MaxDetectableFaceSize(py::wrapper::Windows::Media::FaceAnalysis::FaceTracker* self, void* /*unused*/) noexcept
|
|
637
749
|
{
|
|
638
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"MaxDetectableFaceSize"))
|
|
639
|
-
{
|
|
640
|
-
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
641
|
-
return nullptr;
|
|
642
|
-
}
|
|
643
|
-
|
|
644
750
|
try
|
|
645
751
|
{
|
|
752
|
+
static std::optional<bool> is_property_present{};
|
|
753
|
+
|
|
754
|
+
if (!is_property_present.has_value())
|
|
755
|
+
{
|
|
756
|
+
is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"MaxDetectableFaceSize");
|
|
757
|
+
}
|
|
758
|
+
|
|
759
|
+
if (!is_property_present.value())
|
|
760
|
+
{
|
|
761
|
+
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
762
|
+
return nullptr;
|
|
763
|
+
}
|
|
764
|
+
|
|
646
765
|
return py::convert(self->obj.MaxDetectableFaceSize());
|
|
647
766
|
}
|
|
648
767
|
catch (...)
|
|
@@ -654,12 +773,6 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
654
773
|
|
|
655
774
|
static int FaceTracker_put_MaxDetectableFaceSize(py::wrapper::Windows::Media::FaceAnalysis::FaceTracker* self, PyObject* arg, void* /*unused*/) noexcept
|
|
656
775
|
{
|
|
657
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"MaxDetectableFaceSize"))
|
|
658
|
-
{
|
|
659
|
-
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
660
|
-
return -1;
|
|
661
|
-
}
|
|
662
|
-
|
|
663
776
|
if (arg == nullptr)
|
|
664
777
|
{
|
|
665
778
|
PyErr_SetString(PyExc_AttributeError, "can't delete attribute");
|
|
@@ -668,6 +781,19 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
668
781
|
|
|
669
782
|
try
|
|
670
783
|
{
|
|
784
|
+
static std::optional<bool> is_property_present{};
|
|
785
|
+
|
|
786
|
+
if (!is_property_present.has_value())
|
|
787
|
+
{
|
|
788
|
+
is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"MaxDetectableFaceSize");
|
|
789
|
+
}
|
|
790
|
+
|
|
791
|
+
if (!is_property_present.value())
|
|
792
|
+
{
|
|
793
|
+
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
794
|
+
return -1;
|
|
795
|
+
}
|
|
796
|
+
|
|
671
797
|
auto param0 = py::convert_to<winrt::Windows::Graphics::Imaging::BitmapSize>(arg);
|
|
672
798
|
|
|
673
799
|
self->obj.MaxDetectableFaceSize(param0);
|
|
@@ -682,14 +808,21 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
682
808
|
|
|
683
809
|
static PyObject* FaceTracker_get_IsSupported(PyObject* /*unused*/, void* /*unused*/) noexcept
|
|
684
810
|
{
|
|
685
|
-
if (!winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"IsSupported"))
|
|
686
|
-
{
|
|
687
|
-
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
688
|
-
return nullptr;
|
|
689
|
-
}
|
|
690
|
-
|
|
691
811
|
try
|
|
692
812
|
{
|
|
813
|
+
static std::optional<bool> is_property_present{};
|
|
814
|
+
|
|
815
|
+
if (!is_property_present.has_value())
|
|
816
|
+
{
|
|
817
|
+
is_property_present = winrt::Windows::Foundation::Metadata::ApiInformation::IsPropertyPresent(L"Windows.Media.FaceAnalysis.FaceTracker", L"IsSupported");
|
|
818
|
+
}
|
|
819
|
+
|
|
820
|
+
if (!is_property_present.value())
|
|
821
|
+
{
|
|
822
|
+
PyErr_SetString(PyExc_AttributeError, "property is not available in this version of Windows");
|
|
823
|
+
return nullptr;
|
|
824
|
+
}
|
|
825
|
+
|
|
693
826
|
return py::convert(winrt::Windows::Media::FaceAnalysis::FaceTracker::IsSupported());
|
|
694
827
|
}
|
|
695
828
|
catch (...)
|
|
@@ -736,23 +869,20 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
736
869
|
{ }
|
|
737
870
|
};
|
|
738
871
|
|
|
739
|
-
static PyType_Slot _type_slots_FaceTracker[] =
|
|
740
|
-
{
|
|
872
|
+
static PyType_Slot _type_slots_FaceTracker[] = {
|
|
741
873
|
{ Py_tp_new, reinterpret_cast<void*>(_new_FaceTracker) },
|
|
742
874
|
{ Py_tp_dealloc, reinterpret_cast<void*>(_dealloc_FaceTracker) },
|
|
743
875
|
{ Py_tp_methods, reinterpret_cast<void*>(_methods_FaceTracker) },
|
|
744
876
|
{ Py_tp_getset, reinterpret_cast<void*>(_getset_FaceTracker) },
|
|
745
|
-
{ }
|
|
877
|
+
{ }
|
|
746
878
|
};
|
|
747
879
|
|
|
748
|
-
static PyType_Spec type_spec_FaceTracker =
|
|
749
|
-
{
|
|
880
|
+
static PyType_Spec type_spec_FaceTracker = {
|
|
750
881
|
"winrt._winrt_windows_media_faceanalysis.FaceTracker",
|
|
751
882
|
sizeof(py::wrapper::Windows::Media::FaceAnalysis::FaceTracker),
|
|
752
883
|
0,
|
|
753
884
|
Py_TPFLAGS_DEFAULT,
|
|
754
|
-
_type_slots_FaceTracker
|
|
755
|
-
};
|
|
885
|
+
_type_slots_FaceTracker};
|
|
756
886
|
|
|
757
887
|
static PyGetSetDef getset_FaceTracker_Static[] = {
|
|
758
888
|
{ "is_supported", reinterpret_cast<getter>(FaceTracker_get_IsSupported), nullptr, nullptr, nullptr },
|
|
@@ -784,20 +914,19 @@ namespace py::cpp::Windows::Media::FaceAnalysis
|
|
|
784
914
|
};
|
|
785
915
|
|
|
786
916
|
// ----- Windows.Media.FaceAnalysis Initialization --------------------
|
|
787
|
-
PyDoc_STRVAR(module_doc, "Windows::Media::FaceAnalysis");
|
|
788
|
-
|
|
789
917
|
|
|
790
|
-
|
|
791
|
-
= {PyModuleDef_HEAD_INIT,
|
|
792
|
-
"_winrt_windows_media_faceanalysis",
|
|
793
|
-
module_doc,
|
|
794
|
-
0,
|
|
795
|
-
nullptr,
|
|
796
|
-
nullptr,
|
|
797
|
-
nullptr,
|
|
798
|
-
nullptr,
|
|
799
|
-
nullptr};
|
|
918
|
+
PyDoc_STRVAR(module_doc, "Windows.Media.FaceAnalysis");
|
|
800
919
|
|
|
920
|
+
static PyModuleDef module_def = {
|
|
921
|
+
PyModuleDef_HEAD_INIT,
|
|
922
|
+
"_winrt_windows_media_faceanalysis",
|
|
923
|
+
module_doc,
|
|
924
|
+
0,
|
|
925
|
+
nullptr,
|
|
926
|
+
nullptr,
|
|
927
|
+
nullptr,
|
|
928
|
+
nullptr,
|
|
929
|
+
nullptr};
|
|
801
930
|
} // py::cpp::Windows::Media::FaceAnalysis
|
|
802
931
|
|
|
803
932
|
PyMODINIT_FUNC PyInit__winrt_windows_media_faceanalysis(void) noexcept
|
|
@@ -829,7 +958,8 @@ PyMODINIT_FUNC PyInit__winrt_windows_media_faceanalysis(void) noexcept
|
|
|
829
958
|
return nullptr;
|
|
830
959
|
}
|
|
831
960
|
|
|
832
|
-
|
|
961
|
+
py::pytype_handle DetectedFace_type{py::register_python_type(module.get(), &type_spec_DetectedFace, object_bases.get(), nullptr)};
|
|
962
|
+
if (!DetectedFace_type)
|
|
833
963
|
{
|
|
834
964
|
return nullptr;
|
|
835
965
|
}
|
|
@@ -840,7 +970,8 @@ PyMODINIT_FUNC PyInit__winrt_windows_media_faceanalysis(void) noexcept
|
|
|
840
970
|
return nullptr;
|
|
841
971
|
}
|
|
842
972
|
|
|
843
|
-
|
|
973
|
+
py::pytype_handle FaceDetector_type{py::register_python_type(module.get(), &type_spec_FaceDetector, object_bases.get(), reinterpret_cast<PyTypeObject*>(type_FaceDetector_Static.get()))};
|
|
974
|
+
if (!FaceDetector_type)
|
|
844
975
|
{
|
|
845
976
|
return nullptr;
|
|
846
977
|
}
|
|
@@ -851,7 +982,8 @@ PyMODINIT_FUNC PyInit__winrt_windows_media_faceanalysis(void) noexcept
|
|
|
851
982
|
return nullptr;
|
|
852
983
|
}
|
|
853
984
|
|
|
854
|
-
|
|
985
|
+
py::pytype_handle FaceTracker_type{py::register_python_type(module.get(), &type_spec_FaceTracker, object_bases.get(), reinterpret_cast<PyTypeObject*>(type_FaceTracker_Static.get()))};
|
|
986
|
+
if (!FaceTracker_type)
|
|
855
987
|
{
|
|
856
988
|
return nullptr;
|
|
857
989
|
}
|
{winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/pyproject.toml
RENAMED
|
@@ -16,7 +16,7 @@ classifiers = [
|
|
|
16
16
|
"Intended Audience :: Developers",
|
|
17
17
|
]
|
|
18
18
|
dynamic = ["version", "dependencies", "optional-dependencies"]
|
|
19
|
-
requires-python = ">=3.9,<3.
|
|
19
|
+
requires-python = ">=3.9,<3.14"
|
|
20
20
|
|
|
21
21
|
[project.urls]
|
|
22
22
|
# Homepage = "https://github.com/pywinrt/pywinrt"
|
|
@@ -36,7 +36,8 @@ optional-dependencies.all = { file = "all-requirements.txt" }
|
|
|
36
36
|
# use local winrt-sdk build dependency
|
|
37
37
|
environment = { PYTHONPATH="../winrt-sdk/src" }
|
|
38
38
|
# don't install winrt-sdk from PyPI
|
|
39
|
-
build-frontend = { name = "build", args = ["--skip-dependency-check", "--no-isolation"] }
|
|
39
|
+
build-frontend = { name = "build[uv]", args = ["--skip-dependency-check", "--no-isolation"] }
|
|
40
|
+
before-build = "uv pip install setuptools"
|
|
40
41
|
# don't build for PyPy
|
|
41
42
|
skip = "pp*"
|
|
42
43
|
# suppress warnings about ARM64 testing
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
2.2.0
|
{winrt_windows_media_faceanalysis-2.0.1 → winrt_windows_media_faceanalysis-2.2.0}/requirements.txt
RENAMED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
# WARNING: Please don't edit this file. It was generated by Python/WinRT v2.0
|
|
1
|
+
# WARNING: Please don't edit this file. It was generated by Python/WinRT v2.2.0
|
|
2
2
|
|
|
3
|
-
winrt-runtime==2.0
|
|
3
|
+
winrt-runtime==2.2.0
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# WARNING: Please don't edit this file. It was generated by Python/WinRT v2.2.0
|
|
2
|
+
|
|
3
|
+
import datetime
|
|
4
|
+
import sys
|
|
5
|
+
import types
|
|
6
|
+
import typing
|
|
7
|
+
import uuid as _uuid
|
|
8
|
+
from builtins import property as _property
|
|
9
|
+
|
|
10
|
+
import winrt._winrt
|
|
11
|
+
import winrt.system
|
|
12
|
+
import winrt.windows.foundation as windows_foundation
|
|
13
|
+
import winrt.windows.foundation.collections as windows_foundation_collections
|
|
14
|
+
import winrt.windows.graphics.imaging as windows_graphics_imaging
|
|
15
|
+
import winrt.windows.media as windows_media
|
|
16
|
+
|
|
17
|
+
Self = typing.TypeVar('Self')
|
|
18
|
+
|
|
19
|
+
@typing.final
|
|
20
|
+
class DetectedFace(winrt.system.Object):
|
|
21
|
+
@staticmethod
|
|
22
|
+
def _from(obj: winrt.system.Object, /) -> DetectedFace: ...
|
|
23
|
+
@_property
|
|
24
|
+
def face_box(self) -> windows_graphics_imaging.BitmapBounds: ...
|
|
25
|
+
|
|
26
|
+
@typing.final
|
|
27
|
+
class FaceDetector_Static(type):
|
|
28
|
+
def create_async(cls) -> windows_foundation.IAsyncOperation[FaceDetector]: ...
|
|
29
|
+
def get_supported_bitmap_pixel_formats(cls) -> typing.Optional[windows_foundation_collections.IVectorView[windows_graphics_imaging.BitmapPixelFormat]]: ...
|
|
30
|
+
def is_bitmap_pixel_format_supported(cls, bitmap_pixel_format: windows_graphics_imaging.BitmapPixelFormat, /) -> bool: ...
|
|
31
|
+
@_property
|
|
32
|
+
def is_supported(cls) -> bool: ...
|
|
33
|
+
|
|
34
|
+
@typing.final
|
|
35
|
+
class FaceDetector(winrt.system.Object, metaclass=FaceDetector_Static):
|
|
36
|
+
@staticmethod
|
|
37
|
+
def _from(obj: winrt.system.Object, /) -> FaceDetector: ...
|
|
38
|
+
@typing.overload
|
|
39
|
+
def detect_faces_async(self, image: typing.Optional[windows_graphics_imaging.SoftwareBitmap], /) -> windows_foundation.IAsyncOperation[windows_foundation_collections.IVector[DetectedFace]]: ...
|
|
40
|
+
@typing.overload
|
|
41
|
+
def detect_faces_async(self, image: typing.Optional[windows_graphics_imaging.SoftwareBitmap], search_area: windows_graphics_imaging.BitmapBounds, /) -> windows_foundation.IAsyncOperation[windows_foundation_collections.IVector[DetectedFace]]: ...
|
|
42
|
+
@_property
|
|
43
|
+
def min_detectable_face_size(self) -> windows_graphics_imaging.BitmapSize: ...
|
|
44
|
+
@min_detectable_face_size.setter
|
|
45
|
+
def min_detectable_face_size(self, value: windows_graphics_imaging.BitmapSize) -> None: ...
|
|
46
|
+
@_property
|
|
47
|
+
def max_detectable_face_size(self) -> windows_graphics_imaging.BitmapSize: ...
|
|
48
|
+
@max_detectable_face_size.setter
|
|
49
|
+
def max_detectable_face_size(self, value: windows_graphics_imaging.BitmapSize) -> None: ...
|
|
50
|
+
|
|
51
|
+
@typing.final
|
|
52
|
+
class FaceTracker_Static(type):
|
|
53
|
+
def create_async(cls) -> windows_foundation.IAsyncOperation[FaceTracker]: ...
|
|
54
|
+
def get_supported_bitmap_pixel_formats(cls) -> typing.Optional[windows_foundation_collections.IVectorView[windows_graphics_imaging.BitmapPixelFormat]]: ...
|
|
55
|
+
def is_bitmap_pixel_format_supported(cls, bitmap_pixel_format: windows_graphics_imaging.BitmapPixelFormat, /) -> bool: ...
|
|
56
|
+
@_property
|
|
57
|
+
def is_supported(cls) -> bool: ...
|
|
58
|
+
|
|
59
|
+
@typing.final
|
|
60
|
+
class FaceTracker(winrt.system.Object, metaclass=FaceTracker_Static):
|
|
61
|
+
@staticmethod
|
|
62
|
+
def _from(obj: winrt.system.Object, /) -> FaceTracker: ...
|
|
63
|
+
def process_next_frame_async(self, video_frame: typing.Optional[windows_media.VideoFrame], /) -> windows_foundation.IAsyncOperation[windows_foundation_collections.IVector[DetectedFace]]: ...
|
|
64
|
+
@_property
|
|
65
|
+
def min_detectable_face_size(self) -> windows_graphics_imaging.BitmapSize: ...
|
|
66
|
+
@min_detectable_face_size.setter
|
|
67
|
+
def min_detectable_face_size(self, value: windows_graphics_imaging.BitmapSize) -> None: ...
|
|
68
|
+
@_property
|
|
69
|
+
def max_detectable_face_size(self) -> windows_graphics_imaging.BitmapSize: ...
|
|
70
|
+
@max_detectable_face_size.setter
|
|
71
|
+
def max_detectable_face_size(self, value: windows_graphics_imaging.BitmapSize) -> None: ...
|
|
72
|
+
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: winrt-Windows.Media.FaceAnalysis
|
|
3
|
-
Version: 2.0
|
|
3
|
+
Version: 2.2.0
|
|
4
4
|
Summary: Python projection of Windows Runtime (WinRT) APIs
|
|
5
5
|
License: MIT
|
|
6
6
|
Project-URL: Documentation, https://pywinrt.readthedocs.io
|
|
@@ -10,14 +10,14 @@ Classifier: Operating System :: Microsoft :: Windows
|
|
|
10
10
|
Classifier: Programming Language :: Python :: 3
|
|
11
11
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
12
12
|
Classifier: Intended Audience :: Developers
|
|
13
|
-
Requires-Python: <3.
|
|
13
|
+
Requires-Python: <3.14,>=3.9
|
|
14
14
|
Description-Content-Type: text/markdown
|
|
15
|
-
Requires-Dist: winrt-runtime==2.0
|
|
15
|
+
Requires-Dist: winrt-runtime==2.2.0
|
|
16
16
|
Provides-Extra: all
|
|
17
|
-
Requires-Dist: winrt-Windows.Foundation[all]==2.0
|
|
18
|
-
Requires-Dist: winrt-Windows.Foundation.Collections[all]==2.0
|
|
19
|
-
Requires-Dist: winrt-Windows.Graphics.Imaging[all]==2.0
|
|
20
|
-
Requires-Dist: winrt-Windows.Media[all]==2.0
|
|
17
|
+
Requires-Dist: winrt-Windows.Foundation[all]==2.2.0; extra == "all"
|
|
18
|
+
Requires-Dist: winrt-Windows.Foundation.Collections[all]==2.2.0; extra == "all"
|
|
19
|
+
Requires-Dist: winrt-Windows.Graphics.Imaging[all]==2.2.0; extra == "all"
|
|
20
|
+
Requires-Dist: winrt-Windows.Media[all]==2.2.0; extra == "all"
|
|
21
21
|
|
|
22
22
|
<!-- warning: Please don't edit this file. It was automatically generated. -->
|
|
23
23
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
2.0.1
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
# WARNING: Please don't edit this file. It was generated by Python/WinRT v2.0.1
|
|
2
|
-
|
|
3
|
-
import datetime
|
|
4
|
-
import sys
|
|
5
|
-
import types
|
|
6
|
-
import typing
|
|
7
|
-
import uuid as _uuid
|
|
8
|
-
from builtins import property as _property
|
|
9
|
-
|
|
10
|
-
import winrt._winrt
|
|
11
|
-
import winrt.system
|
|
12
|
-
import winrt.windows.foundation
|
|
13
|
-
import winrt.windows.foundation.collections
|
|
14
|
-
import winrt.windows.graphics.imaging
|
|
15
|
-
import winrt.windows.media
|
|
16
|
-
|
|
17
|
-
Self = typing.TypeVar('Self')
|
|
18
|
-
|
|
19
|
-
@typing.final
|
|
20
|
-
class DetectedFace(winrt.system.Object):
|
|
21
|
-
@staticmethod
|
|
22
|
-
def _from(obj: winrt.system.Object, /) -> DetectedFace: ...
|
|
23
|
-
@_property
|
|
24
|
-
def face_box(self) -> winrt.windows.graphics.imaging.BitmapBounds: ...
|
|
25
|
-
|
|
26
|
-
@typing.final
|
|
27
|
-
class FaceDetector_Static(type):
|
|
28
|
-
def create_async(cls) -> winrt.windows.foundation.IAsyncOperation[FaceDetector]: ...
|
|
29
|
-
def get_supported_bitmap_pixel_formats(cls) -> typing.Optional[winrt.windows.foundation.collections.IVectorView[winrt.windows.graphics.imaging.BitmapPixelFormat]]: ...
|
|
30
|
-
def is_bitmap_pixel_format_supported(cls, bitmap_pixel_format: winrt.windows.graphics.imaging.BitmapPixelFormat, /) -> bool: ...
|
|
31
|
-
@_property
|
|
32
|
-
def is_supported(cls) -> bool: ...
|
|
33
|
-
|
|
34
|
-
@typing.final
|
|
35
|
-
class FaceDetector(winrt.system.Object, metaclass=FaceDetector_Static):
|
|
36
|
-
@staticmethod
|
|
37
|
-
def _from(obj: winrt.system.Object, /) -> FaceDetector: ...
|
|
38
|
-
@typing.overload
|
|
39
|
-
def detect_faces_async(self, image: typing.Optional[winrt.windows.graphics.imaging.SoftwareBitmap], /) -> winrt.windows.foundation.IAsyncOperation[winrt.windows.foundation.collections.IVector[DetectedFace]]: ...
|
|
40
|
-
@typing.overload
|
|
41
|
-
def detect_faces_async(self, image: typing.Optional[winrt.windows.graphics.imaging.SoftwareBitmap], search_area: winrt.windows.graphics.imaging.BitmapBounds, /) -> winrt.windows.foundation.IAsyncOperation[winrt.windows.foundation.collections.IVector[DetectedFace]]: ...
|
|
42
|
-
@_property
|
|
43
|
-
def min_detectable_face_size(self) -> winrt.windows.graphics.imaging.BitmapSize: ...
|
|
44
|
-
@min_detectable_face_size.setter
|
|
45
|
-
def min_detectable_face_size(self, value: winrt.windows.graphics.imaging.BitmapSize) -> None: ...
|
|
46
|
-
@_property
|
|
47
|
-
def max_detectable_face_size(self) -> winrt.windows.graphics.imaging.BitmapSize: ...
|
|
48
|
-
@max_detectable_face_size.setter
|
|
49
|
-
def max_detectable_face_size(self, value: winrt.windows.graphics.imaging.BitmapSize) -> None: ...
|
|
50
|
-
|
|
51
|
-
@typing.final
|
|
52
|
-
class FaceTracker_Static(type):
|
|
53
|
-
def create_async(cls) -> winrt.windows.foundation.IAsyncOperation[FaceTracker]: ...
|
|
54
|
-
def get_supported_bitmap_pixel_formats(cls) -> typing.Optional[winrt.windows.foundation.collections.IVectorView[winrt.windows.graphics.imaging.BitmapPixelFormat]]: ...
|
|
55
|
-
def is_bitmap_pixel_format_supported(cls, bitmap_pixel_format: winrt.windows.graphics.imaging.BitmapPixelFormat, /) -> bool: ...
|
|
56
|
-
@_property
|
|
57
|
-
def is_supported(cls) -> bool: ...
|
|
58
|
-
|
|
59
|
-
@typing.final
|
|
60
|
-
class FaceTracker(winrt.system.Object, metaclass=FaceTracker_Static):
|
|
61
|
-
@staticmethod
|
|
62
|
-
def _from(obj: winrt.system.Object, /) -> FaceTracker: ...
|
|
63
|
-
def process_next_frame_async(self, video_frame: typing.Optional[winrt.windows.media.VideoFrame], /) -> winrt.windows.foundation.IAsyncOperation[winrt.windows.foundation.collections.IVector[DetectedFace]]: ...
|
|
64
|
-
@_property
|
|
65
|
-
def min_detectable_face_size(self) -> winrt.windows.graphics.imaging.BitmapSize: ...
|
|
66
|
-
@min_detectable_face_size.setter
|
|
67
|
-
def min_detectable_face_size(self, value: winrt.windows.graphics.imaging.BitmapSize) -> None: ...
|
|
68
|
-
@_property
|
|
69
|
-
def max_detectable_face_size(self) -> winrt.windows.graphics.imaging.BitmapSize: ...
|
|
70
|
-
@max_detectable_face_size.setter
|
|
71
|
-
def max_detectable_face_size(self, value: winrt.windows.graphics.imaging.BitmapSize) -> None: ...
|
|
72
|
-
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|