wandelbots-isaacsim-api 2.2.2__py3-none-any.whl

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.
Files changed (85) hide show
  1. wandelbots_isaacsim_api/__init__.py +50 -0
  2. wandelbots_isaacsim_api/api/__init__.py +25 -0
  3. wandelbots_isaacsim_api/api/collision_world_api.py +316 -0
  4. wandelbots_isaacsim_api/api/default_api.py +800 -0
  5. wandelbots_isaacsim_api/api/manipulators_motion_group_api.py +1619 -0
  6. wandelbots_isaacsim_api/api/periphery_camera_api.py +3434 -0
  7. wandelbots_isaacsim_api/api/prims_api.py +4963 -0
  8. wandelbots_isaacsim_api/api/stage_api.py +2351 -0
  9. wandelbots_isaacsim_api/api/teaching_api.py +1312 -0
  10. wandelbots_isaacsim_api/api/trajectory_api.py +1686 -0
  11. wandelbots_isaacsim_api/api/ui_api.py +562 -0
  12. wandelbots_isaacsim_api/api_client.py +800 -0
  13. wandelbots_isaacsim_api/api_response.py +21 -0
  14. wandelbots_isaacsim_api/collision/__init__.py +0 -0
  15. wandelbots_isaacsim_api/collision/utils.py +99 -0
  16. wandelbots_isaacsim_api/configuration.py +561 -0
  17. wandelbots_isaacsim_api/exceptions.py +216 -0
  18. wandelbots_isaacsim_api/models/__init__.py +135 -0
  19. wandelbots_isaacsim_api/models/auth0_credentials.py +100 -0
  20. wandelbots_isaacsim_api/models/body_apply_relative_pose.py +99 -0
  21. wandelbots_isaacsim_api/models/body_assign_default_poses.py +91 -0
  22. wandelbots_isaacsim_api/models/body_reset_to_default_poses.py +91 -0
  23. wandelbots_isaacsim_api/models/body_set_joint_state.py +93 -0
  24. wandelbots_isaacsim_api/models/body_set_prim_metadata.py +97 -0
  25. wandelbots_isaacsim_api/models/body_set_prim_visibility.py +103 -0
  26. wandelbots_isaacsim_api/models/body_set_semantic_label.py +93 -0
  27. wandelbots_isaacsim_api/models/body_update_colliders.py +93 -0
  28. wandelbots_isaacsim_api/models/body_update_pose.py +97 -0
  29. wandelbots_isaacsim_api/models/bounding_box2_d.py +98 -0
  30. wandelbots_isaacsim_api/models/bounding_box3_d.py +100 -0
  31. wandelbots_isaacsim_api/models/box.py +119 -0
  32. wandelbots_isaacsim_api/models/box_sweep_parameters.py +111 -0
  33. wandelbots_isaacsim_api/models/capsule.py +105 -0
  34. wandelbots_isaacsim_api/models/collider.py +101 -0
  35. wandelbots_isaacsim_api/models/convex_hull.py +103 -0
  36. wandelbots_isaacsim_api/models/create_ghost_object.py +102 -0
  37. wandelbots_isaacsim_api/models/custom_prim.py +100 -0
  38. wandelbots_isaacsim_api/models/custom_prim_data.py +93 -0
  39. wandelbots_isaacsim_api/models/cylinder.py +105 -0
  40. wandelbots_isaacsim_api/models/ghost_object.py +106 -0
  41. wandelbots_isaacsim_api/models/ghost_object_source.py +93 -0
  42. wandelbots_isaacsim_api/models/gizmo_prim.py +98 -0
  43. wandelbots_isaacsim_api/models/http_validation_error.py +108 -0
  44. wandelbots_isaacsim_api/models/instance_segmentation_data.py +97 -0
  45. wandelbots_isaacsim_api/models/instance_segmentation_info.py +91 -0
  46. wandelbots_isaacsim_api/models/motion_group_configuration.py +99 -0
  47. wandelbots_isaacsim_api/models/motion_stream_configuration.py +101 -0
  48. wandelbots_isaacsim_api/models/patch_trajectory_data.py +107 -0
  49. wandelbots_isaacsim_api/models/plane.py +101 -0
  50. wandelbots_isaacsim_api/models/point_cloud.py +95 -0
  51. wandelbots_isaacsim_api/models/pose.py +137 -0
  52. wandelbots_isaacsim_api/models/pose_position_inner.py +138 -0
  53. wandelbots_isaacsim_api/models/prim.py +165 -0
  54. wandelbots_isaacsim_api/models/prim_selection.py +91 -0
  55. wandelbots_isaacsim_api/models/quat_pose.py +92 -0
  56. wandelbots_isaacsim_api/models/relative_pose_mode.py +39 -0
  57. wandelbots_isaacsim_api/models/response_get_pose.py +134 -0
  58. wandelbots_isaacsim_api/models/response_get_relative_pose.py +134 -0
  59. wandelbots_isaacsim_api/models/response_list_default_poses_value.py +140 -0
  60. wandelbots_isaacsim_api/models/semantic_segmentation_data.py +97 -0
  61. wandelbots_isaacsim_api/models/semantic_segmentation_info.py +91 -0
  62. wandelbots_isaacsim_api/models/shape.py +194 -0
  63. wandelbots_isaacsim_api/models/simulation_state.py +101 -0
  64. wandelbots_isaacsim_api/models/sphere.py +103 -0
  65. wandelbots_isaacsim_api/models/sphere_sweep_parameters.py +107 -0
  66. wandelbots_isaacsim_api/models/stage_units.py +91 -0
  67. wandelbots_isaacsim_api/models/sweep_arguments.py +134 -0
  68. wandelbots_isaacsim_api/models/tcp_source.py +99 -0
  69. wandelbots_isaacsim_api/models/trajectory_data.py +101 -0
  70. wandelbots_isaacsim_api/models/trajectory_marker.py +97 -0
  71. wandelbots_isaacsim_api/models/trajectory_object.py +101 -0
  72. wandelbots_isaacsim_api/models/trajectory_options.py +94 -0
  73. wandelbots_isaacsim_api/models/usd_stage_model.py +91 -0
  74. wandelbots_isaacsim_api/models/validation_error.py +112 -0
  75. wandelbots_isaacsim_api/models/validation_error_loc_inner.py +138 -0
  76. wandelbots_isaacsim_api/models/ws_pose.py +92 -0
  77. wandelbots_isaacsim_api/py.typed +0 -0
  78. wandelbots_isaacsim_api/rest.py +212 -0
  79. wandelbots_isaacsim_api/trajectory/__init__.py +17 -0
  80. wandelbots_isaacsim_api/trajectory/trajectory_viewer.py +111 -0
  81. wandelbots_isaacsim_api/trajectory/utils.py +154 -0
  82. wandelbots_isaacsim_api-2.2.2.dist-info/LICENSE +201 -0
  83. wandelbots_isaacsim_api-2.2.2.dist-info/METADATA +60 -0
  84. wandelbots_isaacsim_api-2.2.2.dist-info/RECORD +85 -0
  85. wandelbots_isaacsim_api-2.2.2.dist-info/WHEEL +4 -0
@@ -0,0 +1,1686 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Wandelbots Omniservice
5
+
6
+ A microservice-based framework for managing Omniverse functionalities
7
+
8
+ The version of the OpenAPI document: 2.2.2
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from furl import furl
16
+ import json
17
+ import humps
18
+ import re
19
+ import warnings
20
+ import websockets
21
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
22
+ from typing import Any, AsyncGenerator, Callable, Dict, List, Optional, Tuple, Union
23
+ from typing_extensions import Annotated
24
+ from urllib.parse import quote
25
+
26
+ from pydantic import Field, StrictStr
27
+ from typing import List
28
+ from typing_extensions import Annotated
29
+ from wandelbots_isaacsim_api.models.patch_trajectory_data import PatchTrajectoryData
30
+ from wandelbots_isaacsim_api.models.trajectory_data import TrajectoryData
31
+ from wandelbots_isaacsim_api.models.trajectory_marker import TrajectoryMarker
32
+ from wandelbots_isaacsim_api.models.trajectory_object import TrajectoryObject
33
+
34
+ from wandelbots_isaacsim_api.api_client import ApiClient, RequestSerialized
35
+ from wandelbots_isaacsim_api.api_response import ApiResponse
36
+ from wandelbots_isaacsim_api.rest import RESTResponseType
37
+
38
+ class TrajectoryApi:
39
+ """NOTE: This class is auto generated by OpenAPI Generator
40
+ Ref: https://openapi-generator.tech
41
+
42
+ Do not edit the class manually.
43
+ """
44
+
45
+ def __init__(self, api_client=None) -> None:
46
+ if api_client is None:
47
+ api_client = ApiClient.get_default()
48
+ self.api_client = api_client
49
+
50
+ @validate_call
51
+ async def create_trajectory(
52
+ self,
53
+ trajectory_data: TrajectoryData,
54
+ _request_timeout: Union[
55
+ None,
56
+ Annotated[StrictFloat, Field(gt=0)],
57
+ Tuple[
58
+ Annotated[StrictFloat, Field(gt=0)],
59
+ Annotated[StrictFloat, Field(gt=0)]
60
+ ]
61
+ ] = None,
62
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
63
+ _content_type: Optional[StrictStr] = None,
64
+ _headers: Optional[Dict[StrictStr, Any]] = None,
65
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
66
+ ) -> TrajectoryObject:
67
+ """Create Trajectory
68
+
69
+ Creates a new trajectory in the scene.
70
+
71
+ :param trajectory_data: (required)
72
+ :type trajectory_data: TrajectoryData
73
+ :param _request_timeout: timeout setting for this request. If one
74
+ number provided, it will be total request
75
+ timeout. It can also be a pair (tuple) of
76
+ (connection, read) timeouts.
77
+ :type _request_timeout: int, tuple(int, int), optional
78
+ :param _request_auth: set to override the auth_settings for an a single
79
+ request; this effectively ignores the
80
+ authentication in the spec for a single request.
81
+ :type _request_auth: dict, optional
82
+ :param _content_type: force content-type for the request.
83
+ :type _content_type: str, Optional
84
+ :param _headers: set to override the headers for a single
85
+ request; this effectively ignores the headers
86
+ in the spec for a single request.
87
+ :type _headers: dict, optional
88
+ :param _host_index: set to override the host_index for a single
89
+ request; this effectively ignores the host_index
90
+ in the spec for a single request.
91
+ :type _host_index: int, optional
92
+ :return: Returns the result object.
93
+ """ # noqa: E501
94
+
95
+ _param = self._create_trajectory_serialize(
96
+ trajectory_data=trajectory_data,
97
+ _request_auth=_request_auth,
98
+ _content_type=_content_type,
99
+ _headers=_headers,
100
+ _host_index=_host_index
101
+ )
102
+
103
+ _response_types_map: Dict[str, Optional[str]] = {
104
+ '201': "TrajectoryObject",
105
+ '409': None,
106
+ '500': None,
107
+ '422': "HTTPValidationError",
108
+ }
109
+ response_data = await self.api_client.call_api(
110
+ *_param,
111
+ _request_timeout=_request_timeout
112
+ )
113
+ await response_data.read()
114
+ return self.api_client.response_deserialize(
115
+ response_data=response_data,
116
+ response_types_map=_response_types_map,
117
+ ).data
118
+
119
+
120
+ @validate_call
121
+ async def create_trajectory_with_http_info(
122
+ self,
123
+ trajectory_data: TrajectoryData,
124
+ _request_timeout: Union[
125
+ None,
126
+ Annotated[StrictFloat, Field(gt=0)],
127
+ Tuple[
128
+ Annotated[StrictFloat, Field(gt=0)],
129
+ Annotated[StrictFloat, Field(gt=0)]
130
+ ]
131
+ ] = None,
132
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
133
+ _content_type: Optional[StrictStr] = None,
134
+ _headers: Optional[Dict[StrictStr, Any]] = None,
135
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
136
+ ) -> ApiResponse[TrajectoryObject]:
137
+ """Create Trajectory
138
+
139
+ Creates a new trajectory in the scene.
140
+
141
+ :param trajectory_data: (required)
142
+ :type trajectory_data: TrajectoryData
143
+ :param _request_timeout: timeout setting for this request. If one
144
+ number provided, it will be total request
145
+ timeout. It can also be a pair (tuple) of
146
+ (connection, read) timeouts.
147
+ :type _request_timeout: int, tuple(int, int), optional
148
+ :param _request_auth: set to override the auth_settings for an a single
149
+ request; this effectively ignores the
150
+ authentication in the spec for a single request.
151
+ :type _request_auth: dict, optional
152
+ :param _content_type: force content-type for the request.
153
+ :type _content_type: str, Optional
154
+ :param _headers: set to override the headers for a single
155
+ request; this effectively ignores the headers
156
+ in the spec for a single request.
157
+ :type _headers: dict, optional
158
+ :param _host_index: set to override the host_index for a single
159
+ request; this effectively ignores the host_index
160
+ in the spec for a single request.
161
+ :type _host_index: int, optional
162
+ :return: Returns the result object.
163
+ """ # noqa: E501
164
+
165
+ _param = self._create_trajectory_serialize(
166
+ trajectory_data=trajectory_data,
167
+ _request_auth=_request_auth,
168
+ _content_type=_content_type,
169
+ _headers=_headers,
170
+ _host_index=_host_index
171
+ )
172
+
173
+ _response_types_map: Dict[str, Optional[str]] = {
174
+ '201': "TrajectoryObject",
175
+ '409': None,
176
+ '500': None,
177
+ '422': "HTTPValidationError",
178
+ }
179
+ response_data = await self.api_client.call_api(
180
+ *_param,
181
+ _request_timeout=_request_timeout
182
+ )
183
+ await response_data.read()
184
+ return self.api_client.response_deserialize(
185
+ response_data=response_data,
186
+ response_types_map=_response_types_map,
187
+ )
188
+
189
+
190
+ @validate_call
191
+ async def create_trajectory_without_preload_content(
192
+ self,
193
+ trajectory_data: TrajectoryData,
194
+ _request_timeout: Union[
195
+ None,
196
+ Annotated[StrictFloat, Field(gt=0)],
197
+ Tuple[
198
+ Annotated[StrictFloat, Field(gt=0)],
199
+ Annotated[StrictFloat, Field(gt=0)]
200
+ ]
201
+ ] = None,
202
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
203
+ _content_type: Optional[StrictStr] = None,
204
+ _headers: Optional[Dict[StrictStr, Any]] = None,
205
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
206
+ ) -> RESTResponseType:
207
+ """Create Trajectory
208
+
209
+ Creates a new trajectory in the scene.
210
+
211
+ :param trajectory_data: (required)
212
+ :type trajectory_data: TrajectoryData
213
+ :param _request_timeout: timeout setting for this request. If one
214
+ number provided, it will be total request
215
+ timeout. It can also be a pair (tuple) of
216
+ (connection, read) timeouts.
217
+ :type _request_timeout: int, tuple(int, int), optional
218
+ :param _request_auth: set to override the auth_settings for an a single
219
+ request; this effectively ignores the
220
+ authentication in the spec for a single request.
221
+ :type _request_auth: dict, optional
222
+ :param _content_type: force content-type for the request.
223
+ :type _content_type: str, Optional
224
+ :param _headers: set to override the headers for a single
225
+ request; this effectively ignores the headers
226
+ in the spec for a single request.
227
+ :type _headers: dict, optional
228
+ :param _host_index: set to override the host_index for a single
229
+ request; this effectively ignores the host_index
230
+ in the spec for a single request.
231
+ :type _host_index: int, optional
232
+ :return: Returns the result object.
233
+ """ # noqa: E501
234
+
235
+ _param = self._create_trajectory_serialize(
236
+ trajectory_data=trajectory_data,
237
+ _request_auth=_request_auth,
238
+ _content_type=_content_type,
239
+ _headers=_headers,
240
+ _host_index=_host_index
241
+ )
242
+
243
+ _response_types_map: Dict[str, Optional[str]] = {
244
+ '201': "TrajectoryObject",
245
+ '409': None,
246
+ '500': None,
247
+ '422': "HTTPValidationError",
248
+ }
249
+ response_data = await self.api_client.call_api(
250
+ *_param,
251
+ _request_timeout=_request_timeout
252
+ )
253
+ return response_data.response
254
+
255
+
256
+ def _create_trajectory_serialize(
257
+ self,
258
+ trajectory_data,
259
+ _request_auth,
260
+ _content_type,
261
+ _headers,
262
+ _host_index,
263
+ ) -> RequestSerialized:
264
+
265
+ _host = None
266
+
267
+ _collection_formats: Dict[str, str] = {
268
+ }
269
+
270
+ _path_params: Dict[str, str] = {}
271
+ _query_params: List[Tuple[str, str]] = []
272
+ _header_params: Dict[str, Optional[str]] = _headers or {}
273
+ _form_params: List[Tuple[str, str]] = []
274
+ _files: Dict[str, Union[str, bytes]] = {}
275
+ _body_params: Optional[bytes] = None
276
+
277
+ # process the path parameters
278
+ # process the query parameters
279
+ # process the header parameters
280
+ # process the form parameters
281
+ # process the body parameter
282
+ if trajectory_data is not None:
283
+ _body_params = trajectory_data
284
+
285
+
286
+ # set the HTTP header `Accept`
287
+ _header_params['Accept'] = self.api_client.select_header_accept(
288
+ [
289
+ 'application/json'
290
+ ]
291
+ )
292
+
293
+ # set the HTTP header `Content-Type`
294
+ if _content_type:
295
+ _header_params['Content-Type'] = _content_type
296
+ else:
297
+ _default_content_type = (
298
+ self.api_client.select_header_content_type(
299
+ [
300
+ 'application/json'
301
+ ]
302
+ )
303
+ )
304
+ if _default_content_type is not None:
305
+ _header_params['Content-Type'] = _default_content_type
306
+
307
+ # authentication setting
308
+ _auth_settings: List[str] = [
309
+ ]
310
+
311
+ return self.api_client.param_serialize(
312
+ method='POST',
313
+ resource_path='/trajectories/',
314
+ path_params=_path_params,
315
+ query_params=_query_params,
316
+ header_params=_header_params,
317
+ body=_body_params,
318
+ post_params=_form_params,
319
+ files=_files,
320
+ auth_settings=_auth_settings,
321
+ collection_formats=_collection_formats,
322
+ _host=_host,
323
+ _request_auth=_request_auth
324
+ )
325
+
326
+
327
+
328
+ @validate_call
329
+ async def create_trajectory_markers(
330
+ self,
331
+ name: Annotated[StrictStr, Field(description="Name of the trajectory to add markers to")],
332
+ trajectory_marker: TrajectoryMarker,
333
+ _request_timeout: Union[
334
+ None,
335
+ Annotated[StrictFloat, Field(gt=0)],
336
+ Tuple[
337
+ Annotated[StrictFloat, Field(gt=0)],
338
+ Annotated[StrictFloat, Field(gt=0)]
339
+ ]
340
+ ] = None,
341
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
342
+ _content_type: Optional[StrictStr] = None,
343
+ _headers: Optional[Dict[StrictStr, Any]] = None,
344
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
345
+ ) -> None:
346
+ """Create Markers
347
+
348
+ Adds visual markers along a trajectory.
349
+
350
+ :param name: Name of the trajectory to add markers to (required)
351
+ :type name: str
352
+ :param trajectory_marker: (required)
353
+ :type trajectory_marker: TrajectoryMarker
354
+ :param _request_timeout: timeout setting for this request. If one
355
+ number provided, it will be total request
356
+ timeout. It can also be a pair (tuple) of
357
+ (connection, read) timeouts.
358
+ :type _request_timeout: int, tuple(int, int), optional
359
+ :param _request_auth: set to override the auth_settings for an a single
360
+ request; this effectively ignores the
361
+ authentication in the spec for a single request.
362
+ :type _request_auth: dict, optional
363
+ :param _content_type: force content-type for the request.
364
+ :type _content_type: str, Optional
365
+ :param _headers: set to override the headers for a single
366
+ request; this effectively ignores the headers
367
+ in the spec for a single request.
368
+ :type _headers: dict, optional
369
+ :param _host_index: set to override the host_index for a single
370
+ request; this effectively ignores the host_index
371
+ in the spec for a single request.
372
+ :type _host_index: int, optional
373
+ :return: Returns the result object.
374
+ """ # noqa: E501
375
+
376
+ _param = self._create_trajectory_markers_serialize(
377
+ name=name,
378
+ trajectory_marker=trajectory_marker,
379
+ _request_auth=_request_auth,
380
+ _content_type=_content_type,
381
+ _headers=_headers,
382
+ _host_index=_host_index
383
+ )
384
+
385
+ _response_types_map: Dict[str, Optional[str]] = {
386
+ '204': None,
387
+ '404': None,
388
+ '500': None,
389
+ '422': "HTTPValidationError",
390
+ }
391
+ response_data = await self.api_client.call_api(
392
+ *_param,
393
+ _request_timeout=_request_timeout
394
+ )
395
+ await response_data.read()
396
+ return self.api_client.response_deserialize(
397
+ response_data=response_data,
398
+ response_types_map=_response_types_map,
399
+ ).data
400
+
401
+
402
+ @validate_call
403
+ async def create_trajectory_markers_with_http_info(
404
+ self,
405
+ name: Annotated[StrictStr, Field(description="Name of the trajectory to add markers to")],
406
+ trajectory_marker: TrajectoryMarker,
407
+ _request_timeout: Union[
408
+ None,
409
+ Annotated[StrictFloat, Field(gt=0)],
410
+ Tuple[
411
+ Annotated[StrictFloat, Field(gt=0)],
412
+ Annotated[StrictFloat, Field(gt=0)]
413
+ ]
414
+ ] = None,
415
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
416
+ _content_type: Optional[StrictStr] = None,
417
+ _headers: Optional[Dict[StrictStr, Any]] = None,
418
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
419
+ ) -> ApiResponse[None]:
420
+ """Create Markers
421
+
422
+ Adds visual markers along a trajectory.
423
+
424
+ :param name: Name of the trajectory to add markers to (required)
425
+ :type name: str
426
+ :param trajectory_marker: (required)
427
+ :type trajectory_marker: TrajectoryMarker
428
+ :param _request_timeout: timeout setting for this request. If one
429
+ number provided, it will be total request
430
+ timeout. It can also be a pair (tuple) of
431
+ (connection, read) timeouts.
432
+ :type _request_timeout: int, tuple(int, int), optional
433
+ :param _request_auth: set to override the auth_settings for an a single
434
+ request; this effectively ignores the
435
+ authentication in the spec for a single request.
436
+ :type _request_auth: dict, optional
437
+ :param _content_type: force content-type for the request.
438
+ :type _content_type: str, Optional
439
+ :param _headers: set to override the headers for a single
440
+ request; this effectively ignores the headers
441
+ in the spec for a single request.
442
+ :type _headers: dict, optional
443
+ :param _host_index: set to override the host_index for a single
444
+ request; this effectively ignores the host_index
445
+ in the spec for a single request.
446
+ :type _host_index: int, optional
447
+ :return: Returns the result object.
448
+ """ # noqa: E501
449
+
450
+ _param = self._create_trajectory_markers_serialize(
451
+ name=name,
452
+ trajectory_marker=trajectory_marker,
453
+ _request_auth=_request_auth,
454
+ _content_type=_content_type,
455
+ _headers=_headers,
456
+ _host_index=_host_index
457
+ )
458
+
459
+ _response_types_map: Dict[str, Optional[str]] = {
460
+ '204': None,
461
+ '404': None,
462
+ '500': None,
463
+ '422': "HTTPValidationError",
464
+ }
465
+ response_data = await self.api_client.call_api(
466
+ *_param,
467
+ _request_timeout=_request_timeout
468
+ )
469
+ await response_data.read()
470
+ return self.api_client.response_deserialize(
471
+ response_data=response_data,
472
+ response_types_map=_response_types_map,
473
+ )
474
+
475
+
476
+ @validate_call
477
+ async def create_trajectory_markers_without_preload_content(
478
+ self,
479
+ name: Annotated[StrictStr, Field(description="Name of the trajectory to add markers to")],
480
+ trajectory_marker: TrajectoryMarker,
481
+ _request_timeout: Union[
482
+ None,
483
+ Annotated[StrictFloat, Field(gt=0)],
484
+ Tuple[
485
+ Annotated[StrictFloat, Field(gt=0)],
486
+ Annotated[StrictFloat, Field(gt=0)]
487
+ ]
488
+ ] = None,
489
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
490
+ _content_type: Optional[StrictStr] = None,
491
+ _headers: Optional[Dict[StrictStr, Any]] = None,
492
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
493
+ ) -> RESTResponseType:
494
+ """Create Markers
495
+
496
+ Adds visual markers along a trajectory.
497
+
498
+ :param name: Name of the trajectory to add markers to (required)
499
+ :type name: str
500
+ :param trajectory_marker: (required)
501
+ :type trajectory_marker: TrajectoryMarker
502
+ :param _request_timeout: timeout setting for this request. If one
503
+ number provided, it will be total request
504
+ timeout. It can also be a pair (tuple) of
505
+ (connection, read) timeouts.
506
+ :type _request_timeout: int, tuple(int, int), optional
507
+ :param _request_auth: set to override the auth_settings for an a single
508
+ request; this effectively ignores the
509
+ authentication in the spec for a single request.
510
+ :type _request_auth: dict, optional
511
+ :param _content_type: force content-type for the request.
512
+ :type _content_type: str, Optional
513
+ :param _headers: set to override the headers for a single
514
+ request; this effectively ignores the headers
515
+ in the spec for a single request.
516
+ :type _headers: dict, optional
517
+ :param _host_index: set to override the host_index for a single
518
+ request; this effectively ignores the host_index
519
+ in the spec for a single request.
520
+ :type _host_index: int, optional
521
+ :return: Returns the result object.
522
+ """ # noqa: E501
523
+
524
+ _param = self._create_trajectory_markers_serialize(
525
+ name=name,
526
+ trajectory_marker=trajectory_marker,
527
+ _request_auth=_request_auth,
528
+ _content_type=_content_type,
529
+ _headers=_headers,
530
+ _host_index=_host_index
531
+ )
532
+
533
+ _response_types_map: Dict[str, Optional[str]] = {
534
+ '204': None,
535
+ '404': None,
536
+ '500': None,
537
+ '422': "HTTPValidationError",
538
+ }
539
+ response_data = await self.api_client.call_api(
540
+ *_param,
541
+ _request_timeout=_request_timeout
542
+ )
543
+ return response_data.response
544
+
545
+
546
+ def _create_trajectory_markers_serialize(
547
+ self,
548
+ name,
549
+ trajectory_marker,
550
+ _request_auth,
551
+ _content_type,
552
+ _headers,
553
+ _host_index,
554
+ ) -> RequestSerialized:
555
+
556
+ _host = None
557
+
558
+ _collection_formats: Dict[str, str] = {
559
+ }
560
+
561
+ _path_params: Dict[str, str] = {}
562
+ _query_params: List[Tuple[str, str]] = []
563
+ _header_params: Dict[str, Optional[str]] = _headers or {}
564
+ _form_params: List[Tuple[str, str]] = []
565
+ _files: Dict[str, Union[str, bytes]] = {}
566
+ _body_params: Optional[bytes] = None
567
+
568
+ # process the path parameters
569
+ if name is not None:
570
+ _path_params['name'] = name
571
+ # process the query parameters
572
+ # process the header parameters
573
+ # process the form parameters
574
+ # process the body parameter
575
+ if trajectory_marker is not None:
576
+ _body_params = trajectory_marker
577
+
578
+
579
+ # set the HTTP header `Accept`
580
+ _header_params['Accept'] = self.api_client.select_header_accept(
581
+ [
582
+ 'application/json'
583
+ ]
584
+ )
585
+
586
+ # set the HTTP header `Content-Type`
587
+ if _content_type:
588
+ _header_params['Content-Type'] = _content_type
589
+ else:
590
+ _default_content_type = (
591
+ self.api_client.select_header_content_type(
592
+ [
593
+ 'application/json'
594
+ ]
595
+ )
596
+ )
597
+ if _default_content_type is not None:
598
+ _header_params['Content-Type'] = _default_content_type
599
+
600
+ # authentication setting
601
+ _auth_settings: List[str] = [
602
+ ]
603
+
604
+ return self.api_client.param_serialize(
605
+ method='POST',
606
+ resource_path='/trajectories/{name}/markers',
607
+ path_params=_path_params,
608
+ query_params=_query_params,
609
+ header_params=_header_params,
610
+ body=_body_params,
611
+ post_params=_form_params,
612
+ files=_files,
613
+ auth_settings=_auth_settings,
614
+ collection_formats=_collection_formats,
615
+ _host=_host,
616
+ _request_auth=_request_auth
617
+ )
618
+
619
+
620
+
621
+ @validate_call
622
+ async def list_trajectories(
623
+ self,
624
+ _request_timeout: Union[
625
+ None,
626
+ Annotated[StrictFloat, Field(gt=0)],
627
+ Tuple[
628
+ Annotated[StrictFloat, Field(gt=0)],
629
+ Annotated[StrictFloat, Field(gt=0)]
630
+ ]
631
+ ] = None,
632
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
633
+ _content_type: Optional[StrictStr] = None,
634
+ _headers: Optional[Dict[StrictStr, Any]] = None,
635
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
636
+ ) -> List[TrajectoryObject]:
637
+ """List Trajectories
638
+
639
+ Lists all available trajectories within the stage.
640
+
641
+ :param _request_timeout: timeout setting for this request. If one
642
+ number provided, it will be total request
643
+ timeout. It can also be a pair (tuple) of
644
+ (connection, read) timeouts.
645
+ :type _request_timeout: int, tuple(int, int), optional
646
+ :param _request_auth: set to override the auth_settings for an a single
647
+ request; this effectively ignores the
648
+ authentication in the spec for a single request.
649
+ :type _request_auth: dict, optional
650
+ :param _content_type: force content-type for the request.
651
+ :type _content_type: str, Optional
652
+ :param _headers: set to override the headers for a single
653
+ request; this effectively ignores the headers
654
+ in the spec for a single request.
655
+ :type _headers: dict, optional
656
+ :param _host_index: set to override the host_index for a single
657
+ request; this effectively ignores the host_index
658
+ in the spec for a single request.
659
+ :type _host_index: int, optional
660
+ :return: Returns the result object.
661
+ """ # noqa: E501
662
+
663
+ _param = self._list_trajectories_serialize(
664
+ _request_auth=_request_auth,
665
+ _content_type=_content_type,
666
+ _headers=_headers,
667
+ _host_index=_host_index
668
+ )
669
+
670
+ _response_types_map: Dict[str, Optional[str]] = {
671
+ '200': "List[TrajectoryObject]",
672
+ '500': None,
673
+ }
674
+ response_data = await self.api_client.call_api(
675
+ *_param,
676
+ _request_timeout=_request_timeout
677
+ )
678
+ await response_data.read()
679
+ return self.api_client.response_deserialize(
680
+ response_data=response_data,
681
+ response_types_map=_response_types_map,
682
+ ).data
683
+
684
+
685
+ @validate_call
686
+ async def list_trajectories_with_http_info(
687
+ self,
688
+ _request_timeout: Union[
689
+ None,
690
+ Annotated[StrictFloat, Field(gt=0)],
691
+ Tuple[
692
+ Annotated[StrictFloat, Field(gt=0)],
693
+ Annotated[StrictFloat, Field(gt=0)]
694
+ ]
695
+ ] = None,
696
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
697
+ _content_type: Optional[StrictStr] = None,
698
+ _headers: Optional[Dict[StrictStr, Any]] = None,
699
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
700
+ ) -> ApiResponse[List[TrajectoryObject]]:
701
+ """List Trajectories
702
+
703
+ Lists all available trajectories within the stage.
704
+
705
+ :param _request_timeout: timeout setting for this request. If one
706
+ number provided, it will be total request
707
+ timeout. It can also be a pair (tuple) of
708
+ (connection, read) timeouts.
709
+ :type _request_timeout: int, tuple(int, int), optional
710
+ :param _request_auth: set to override the auth_settings for an a single
711
+ request; this effectively ignores the
712
+ authentication in the spec for a single request.
713
+ :type _request_auth: dict, optional
714
+ :param _content_type: force content-type for the request.
715
+ :type _content_type: str, Optional
716
+ :param _headers: set to override the headers for a single
717
+ request; this effectively ignores the headers
718
+ in the spec for a single request.
719
+ :type _headers: dict, optional
720
+ :param _host_index: set to override the host_index for a single
721
+ request; this effectively ignores the host_index
722
+ in the spec for a single request.
723
+ :type _host_index: int, optional
724
+ :return: Returns the result object.
725
+ """ # noqa: E501
726
+
727
+ _param = self._list_trajectories_serialize(
728
+ _request_auth=_request_auth,
729
+ _content_type=_content_type,
730
+ _headers=_headers,
731
+ _host_index=_host_index
732
+ )
733
+
734
+ _response_types_map: Dict[str, Optional[str]] = {
735
+ '200': "List[TrajectoryObject]",
736
+ '500': None,
737
+ }
738
+ response_data = await self.api_client.call_api(
739
+ *_param,
740
+ _request_timeout=_request_timeout
741
+ )
742
+ await response_data.read()
743
+ return self.api_client.response_deserialize(
744
+ response_data=response_data,
745
+ response_types_map=_response_types_map,
746
+ )
747
+
748
+
749
+ @validate_call
750
+ async def list_trajectories_without_preload_content(
751
+ self,
752
+ _request_timeout: Union[
753
+ None,
754
+ Annotated[StrictFloat, Field(gt=0)],
755
+ Tuple[
756
+ Annotated[StrictFloat, Field(gt=0)],
757
+ Annotated[StrictFloat, Field(gt=0)]
758
+ ]
759
+ ] = None,
760
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
761
+ _content_type: Optional[StrictStr] = None,
762
+ _headers: Optional[Dict[StrictStr, Any]] = None,
763
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
764
+ ) -> RESTResponseType:
765
+ """List Trajectories
766
+
767
+ Lists all available trajectories within the stage.
768
+
769
+ :param _request_timeout: timeout setting for this request. If one
770
+ number provided, it will be total request
771
+ timeout. It can also be a pair (tuple) of
772
+ (connection, read) timeouts.
773
+ :type _request_timeout: int, tuple(int, int), optional
774
+ :param _request_auth: set to override the auth_settings for an a single
775
+ request; this effectively ignores the
776
+ authentication in the spec for a single request.
777
+ :type _request_auth: dict, optional
778
+ :param _content_type: force content-type for the request.
779
+ :type _content_type: str, Optional
780
+ :param _headers: set to override the headers for a single
781
+ request; this effectively ignores the headers
782
+ in the spec for a single request.
783
+ :type _headers: dict, optional
784
+ :param _host_index: set to override the host_index for a single
785
+ request; this effectively ignores the host_index
786
+ in the spec for a single request.
787
+ :type _host_index: int, optional
788
+ :return: Returns the result object.
789
+ """ # noqa: E501
790
+
791
+ _param = self._list_trajectories_serialize(
792
+ _request_auth=_request_auth,
793
+ _content_type=_content_type,
794
+ _headers=_headers,
795
+ _host_index=_host_index
796
+ )
797
+
798
+ _response_types_map: Dict[str, Optional[str]] = {
799
+ '200': "List[TrajectoryObject]",
800
+ '500': None,
801
+ }
802
+ response_data = await self.api_client.call_api(
803
+ *_param,
804
+ _request_timeout=_request_timeout
805
+ )
806
+ return response_data.response
807
+
808
+
809
+ def _list_trajectories_serialize(
810
+ self,
811
+ _request_auth,
812
+ _content_type,
813
+ _headers,
814
+ _host_index,
815
+ ) -> RequestSerialized:
816
+
817
+ _host = None
818
+
819
+ _collection_formats: Dict[str, str] = {
820
+ }
821
+
822
+ _path_params: Dict[str, str] = {}
823
+ _query_params: List[Tuple[str, str]] = []
824
+ _header_params: Dict[str, Optional[str]] = _headers or {}
825
+ _form_params: List[Tuple[str, str]] = []
826
+ _files: Dict[str, Union[str, bytes]] = {}
827
+ _body_params: Optional[bytes] = None
828
+
829
+ # process the path parameters
830
+ # process the query parameters
831
+ # process the header parameters
832
+ # process the form parameters
833
+ # process the body parameter
834
+
835
+
836
+ # set the HTTP header `Accept`
837
+ _header_params['Accept'] = self.api_client.select_header_accept(
838
+ [
839
+ 'application/json'
840
+ ]
841
+ )
842
+
843
+
844
+ # authentication setting
845
+ _auth_settings: List[str] = [
846
+ ]
847
+
848
+ return self.api_client.param_serialize(
849
+ method='GET',
850
+ resource_path='/trajectories/',
851
+ path_params=_path_params,
852
+ query_params=_query_params,
853
+ header_params=_header_params,
854
+ body=_body_params,
855
+ post_params=_form_params,
856
+ files=_files,
857
+ auth_settings=_auth_settings,
858
+ collection_formats=_collection_formats,
859
+ _host=_host,
860
+ _request_auth=_request_auth
861
+ )
862
+
863
+
864
+
865
+ @validate_call
866
+ async def remove_trajectory(
867
+ self,
868
+ name: Annotated[StrictStr, Field(description="Name of the trajectory to delete")],
869
+ _request_timeout: Union[
870
+ None,
871
+ Annotated[StrictFloat, Field(gt=0)],
872
+ Tuple[
873
+ Annotated[StrictFloat, Field(gt=0)],
874
+ Annotated[StrictFloat, Field(gt=0)]
875
+ ]
876
+ ] = None,
877
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
878
+ _content_type: Optional[StrictStr] = None,
879
+ _headers: Optional[Dict[StrictStr, Any]] = None,
880
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
881
+ ) -> None:
882
+ """Remove Trajectory
883
+
884
+ Deletes a trajectory by name.
885
+
886
+ :param name: Name of the trajectory to delete (required)
887
+ :type name: str
888
+ :param _request_timeout: timeout setting for this request. If one
889
+ number provided, it will be total request
890
+ timeout. It can also be a pair (tuple) of
891
+ (connection, read) timeouts.
892
+ :type _request_timeout: int, tuple(int, int), optional
893
+ :param _request_auth: set to override the auth_settings for an a single
894
+ request; this effectively ignores the
895
+ authentication in the spec for a single request.
896
+ :type _request_auth: dict, optional
897
+ :param _content_type: force content-type for the request.
898
+ :type _content_type: str, Optional
899
+ :param _headers: set to override the headers for a single
900
+ request; this effectively ignores the headers
901
+ in the spec for a single request.
902
+ :type _headers: dict, optional
903
+ :param _host_index: set to override the host_index for a single
904
+ request; this effectively ignores the host_index
905
+ in the spec for a single request.
906
+ :type _host_index: int, optional
907
+ :return: Returns the result object.
908
+ """ # noqa: E501
909
+
910
+ _param = self._remove_trajectory_serialize(
911
+ name=name,
912
+ _request_auth=_request_auth,
913
+ _content_type=_content_type,
914
+ _headers=_headers,
915
+ _host_index=_host_index
916
+ )
917
+
918
+ _response_types_map: Dict[str, Optional[str]] = {
919
+ '204': None,
920
+ '404': None,
921
+ '500': None,
922
+ '422': "HTTPValidationError",
923
+ }
924
+ response_data = await self.api_client.call_api(
925
+ *_param,
926
+ _request_timeout=_request_timeout
927
+ )
928
+ await response_data.read()
929
+ return self.api_client.response_deserialize(
930
+ response_data=response_data,
931
+ response_types_map=_response_types_map,
932
+ ).data
933
+
934
+
935
+ @validate_call
936
+ async def remove_trajectory_with_http_info(
937
+ self,
938
+ name: Annotated[StrictStr, Field(description="Name of the trajectory to delete")],
939
+ _request_timeout: Union[
940
+ None,
941
+ Annotated[StrictFloat, Field(gt=0)],
942
+ Tuple[
943
+ Annotated[StrictFloat, Field(gt=0)],
944
+ Annotated[StrictFloat, Field(gt=0)]
945
+ ]
946
+ ] = None,
947
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
948
+ _content_type: Optional[StrictStr] = None,
949
+ _headers: Optional[Dict[StrictStr, Any]] = None,
950
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
951
+ ) -> ApiResponse[None]:
952
+ """Remove Trajectory
953
+
954
+ Deletes a trajectory by name.
955
+
956
+ :param name: Name of the trajectory to delete (required)
957
+ :type name: str
958
+ :param _request_timeout: timeout setting for this request. If one
959
+ number provided, it will be total request
960
+ timeout. It can also be a pair (tuple) of
961
+ (connection, read) timeouts.
962
+ :type _request_timeout: int, tuple(int, int), optional
963
+ :param _request_auth: set to override the auth_settings for an a single
964
+ request; this effectively ignores the
965
+ authentication in the spec for a single request.
966
+ :type _request_auth: dict, optional
967
+ :param _content_type: force content-type for the request.
968
+ :type _content_type: str, Optional
969
+ :param _headers: set to override the headers for a single
970
+ request; this effectively ignores the headers
971
+ in the spec for a single request.
972
+ :type _headers: dict, optional
973
+ :param _host_index: set to override the host_index for a single
974
+ request; this effectively ignores the host_index
975
+ in the spec for a single request.
976
+ :type _host_index: int, optional
977
+ :return: Returns the result object.
978
+ """ # noqa: E501
979
+
980
+ _param = self._remove_trajectory_serialize(
981
+ name=name,
982
+ _request_auth=_request_auth,
983
+ _content_type=_content_type,
984
+ _headers=_headers,
985
+ _host_index=_host_index
986
+ )
987
+
988
+ _response_types_map: Dict[str, Optional[str]] = {
989
+ '204': None,
990
+ '404': None,
991
+ '500': None,
992
+ '422': "HTTPValidationError",
993
+ }
994
+ response_data = await self.api_client.call_api(
995
+ *_param,
996
+ _request_timeout=_request_timeout
997
+ )
998
+ await response_data.read()
999
+ return self.api_client.response_deserialize(
1000
+ response_data=response_data,
1001
+ response_types_map=_response_types_map,
1002
+ )
1003
+
1004
+
1005
+ @validate_call
1006
+ async def remove_trajectory_without_preload_content(
1007
+ self,
1008
+ name: Annotated[StrictStr, Field(description="Name of the trajectory to delete")],
1009
+ _request_timeout: Union[
1010
+ None,
1011
+ Annotated[StrictFloat, Field(gt=0)],
1012
+ Tuple[
1013
+ Annotated[StrictFloat, Field(gt=0)],
1014
+ Annotated[StrictFloat, Field(gt=0)]
1015
+ ]
1016
+ ] = None,
1017
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1018
+ _content_type: Optional[StrictStr] = None,
1019
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1020
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1021
+ ) -> RESTResponseType:
1022
+ """Remove Trajectory
1023
+
1024
+ Deletes a trajectory by name.
1025
+
1026
+ :param name: Name of the trajectory to delete (required)
1027
+ :type name: str
1028
+ :param _request_timeout: timeout setting for this request. If one
1029
+ number provided, it will be total request
1030
+ timeout. It can also be a pair (tuple) of
1031
+ (connection, read) timeouts.
1032
+ :type _request_timeout: int, tuple(int, int), optional
1033
+ :param _request_auth: set to override the auth_settings for an a single
1034
+ request; this effectively ignores the
1035
+ authentication in the spec for a single request.
1036
+ :type _request_auth: dict, optional
1037
+ :param _content_type: force content-type for the request.
1038
+ :type _content_type: str, Optional
1039
+ :param _headers: set to override the headers for a single
1040
+ request; this effectively ignores the headers
1041
+ in the spec for a single request.
1042
+ :type _headers: dict, optional
1043
+ :param _host_index: set to override the host_index for a single
1044
+ request; this effectively ignores the host_index
1045
+ in the spec for a single request.
1046
+ :type _host_index: int, optional
1047
+ :return: Returns the result object.
1048
+ """ # noqa: E501
1049
+
1050
+ _param = self._remove_trajectory_serialize(
1051
+ name=name,
1052
+ _request_auth=_request_auth,
1053
+ _content_type=_content_type,
1054
+ _headers=_headers,
1055
+ _host_index=_host_index
1056
+ )
1057
+
1058
+ _response_types_map: Dict[str, Optional[str]] = {
1059
+ '204': None,
1060
+ '404': None,
1061
+ '500': None,
1062
+ '422': "HTTPValidationError",
1063
+ }
1064
+ response_data = await self.api_client.call_api(
1065
+ *_param,
1066
+ _request_timeout=_request_timeout
1067
+ )
1068
+ return response_data.response
1069
+
1070
+
1071
+ def _remove_trajectory_serialize(
1072
+ self,
1073
+ name,
1074
+ _request_auth,
1075
+ _content_type,
1076
+ _headers,
1077
+ _host_index,
1078
+ ) -> RequestSerialized:
1079
+
1080
+ _host = None
1081
+
1082
+ _collection_formats: Dict[str, str] = {
1083
+ }
1084
+
1085
+ _path_params: Dict[str, str] = {}
1086
+ _query_params: List[Tuple[str, str]] = []
1087
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1088
+ _form_params: List[Tuple[str, str]] = []
1089
+ _files: Dict[str, Union[str, bytes]] = {}
1090
+ _body_params: Optional[bytes] = None
1091
+
1092
+ # process the path parameters
1093
+ if name is not None:
1094
+ _path_params['name'] = name
1095
+ # process the query parameters
1096
+ # process the header parameters
1097
+ # process the form parameters
1098
+ # process the body parameter
1099
+
1100
+
1101
+ # set the HTTP header `Accept`
1102
+ _header_params['Accept'] = self.api_client.select_header_accept(
1103
+ [
1104
+ 'application/json'
1105
+ ]
1106
+ )
1107
+
1108
+
1109
+ # authentication setting
1110
+ _auth_settings: List[str] = [
1111
+ ]
1112
+
1113
+ return self.api_client.param_serialize(
1114
+ method='DELETE',
1115
+ resource_path='/trajectories/{name}',
1116
+ path_params=_path_params,
1117
+ query_params=_query_params,
1118
+ header_params=_header_params,
1119
+ body=_body_params,
1120
+ post_params=_form_params,
1121
+ files=_files,
1122
+ auth_settings=_auth_settings,
1123
+ collection_formats=_collection_formats,
1124
+ _host=_host,
1125
+ _request_auth=_request_auth
1126
+ )
1127
+
1128
+
1129
+
1130
+ @validate_call
1131
+ async def remove_trajectory_markers(
1132
+ self,
1133
+ name: Annotated[StrictStr, Field(description="Name of the trajectory to delete markers from")],
1134
+ _request_timeout: Union[
1135
+ None,
1136
+ Annotated[StrictFloat, Field(gt=0)],
1137
+ Tuple[
1138
+ Annotated[StrictFloat, Field(gt=0)],
1139
+ Annotated[StrictFloat, Field(gt=0)]
1140
+ ]
1141
+ ] = None,
1142
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1143
+ _content_type: Optional[StrictStr] = None,
1144
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1145
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1146
+ ) -> None:
1147
+ """Remove Markers
1148
+
1149
+ Removes all markers associated with a trajectory.
1150
+
1151
+ :param name: Name of the trajectory to delete markers from (required)
1152
+ :type name: str
1153
+ :param _request_timeout: timeout setting for this request. If one
1154
+ number provided, it will be total request
1155
+ timeout. It can also be a pair (tuple) of
1156
+ (connection, read) timeouts.
1157
+ :type _request_timeout: int, tuple(int, int), optional
1158
+ :param _request_auth: set to override the auth_settings for an a single
1159
+ request; this effectively ignores the
1160
+ authentication in the spec for a single request.
1161
+ :type _request_auth: dict, optional
1162
+ :param _content_type: force content-type for the request.
1163
+ :type _content_type: str, Optional
1164
+ :param _headers: set to override the headers for a single
1165
+ request; this effectively ignores the headers
1166
+ in the spec for a single request.
1167
+ :type _headers: dict, optional
1168
+ :param _host_index: set to override the host_index for a single
1169
+ request; this effectively ignores the host_index
1170
+ in the spec for a single request.
1171
+ :type _host_index: int, optional
1172
+ :return: Returns the result object.
1173
+ """ # noqa: E501
1174
+
1175
+ _param = self._remove_trajectory_markers_serialize(
1176
+ name=name,
1177
+ _request_auth=_request_auth,
1178
+ _content_type=_content_type,
1179
+ _headers=_headers,
1180
+ _host_index=_host_index
1181
+ )
1182
+
1183
+ _response_types_map: Dict[str, Optional[str]] = {
1184
+ '204': None,
1185
+ '404': None,
1186
+ '500': None,
1187
+ '422': "HTTPValidationError",
1188
+ }
1189
+ response_data = await self.api_client.call_api(
1190
+ *_param,
1191
+ _request_timeout=_request_timeout
1192
+ )
1193
+ await response_data.read()
1194
+ return self.api_client.response_deserialize(
1195
+ response_data=response_data,
1196
+ response_types_map=_response_types_map,
1197
+ ).data
1198
+
1199
+
1200
+ @validate_call
1201
+ async def remove_trajectory_markers_with_http_info(
1202
+ self,
1203
+ name: Annotated[StrictStr, Field(description="Name of the trajectory to delete markers from")],
1204
+ _request_timeout: Union[
1205
+ None,
1206
+ Annotated[StrictFloat, Field(gt=0)],
1207
+ Tuple[
1208
+ Annotated[StrictFloat, Field(gt=0)],
1209
+ Annotated[StrictFloat, Field(gt=0)]
1210
+ ]
1211
+ ] = None,
1212
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1213
+ _content_type: Optional[StrictStr] = None,
1214
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1215
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1216
+ ) -> ApiResponse[None]:
1217
+ """Remove Markers
1218
+
1219
+ Removes all markers associated with a trajectory.
1220
+
1221
+ :param name: Name of the trajectory to delete markers from (required)
1222
+ :type name: str
1223
+ :param _request_timeout: timeout setting for this request. If one
1224
+ number provided, it will be total request
1225
+ timeout. It can also be a pair (tuple) of
1226
+ (connection, read) timeouts.
1227
+ :type _request_timeout: int, tuple(int, int), optional
1228
+ :param _request_auth: set to override the auth_settings for an a single
1229
+ request; this effectively ignores the
1230
+ authentication in the spec for a single request.
1231
+ :type _request_auth: dict, optional
1232
+ :param _content_type: force content-type for the request.
1233
+ :type _content_type: str, Optional
1234
+ :param _headers: set to override the headers for a single
1235
+ request; this effectively ignores the headers
1236
+ in the spec for a single request.
1237
+ :type _headers: dict, optional
1238
+ :param _host_index: set to override the host_index for a single
1239
+ request; this effectively ignores the host_index
1240
+ in the spec for a single request.
1241
+ :type _host_index: int, optional
1242
+ :return: Returns the result object.
1243
+ """ # noqa: E501
1244
+
1245
+ _param = self._remove_trajectory_markers_serialize(
1246
+ name=name,
1247
+ _request_auth=_request_auth,
1248
+ _content_type=_content_type,
1249
+ _headers=_headers,
1250
+ _host_index=_host_index
1251
+ )
1252
+
1253
+ _response_types_map: Dict[str, Optional[str]] = {
1254
+ '204': None,
1255
+ '404': None,
1256
+ '500': None,
1257
+ '422': "HTTPValidationError",
1258
+ }
1259
+ response_data = await self.api_client.call_api(
1260
+ *_param,
1261
+ _request_timeout=_request_timeout
1262
+ )
1263
+ await response_data.read()
1264
+ return self.api_client.response_deserialize(
1265
+ response_data=response_data,
1266
+ response_types_map=_response_types_map,
1267
+ )
1268
+
1269
+
1270
+ @validate_call
1271
+ async def remove_trajectory_markers_without_preload_content(
1272
+ self,
1273
+ name: Annotated[StrictStr, Field(description="Name of the trajectory to delete markers from")],
1274
+ _request_timeout: Union[
1275
+ None,
1276
+ Annotated[StrictFloat, Field(gt=0)],
1277
+ Tuple[
1278
+ Annotated[StrictFloat, Field(gt=0)],
1279
+ Annotated[StrictFloat, Field(gt=0)]
1280
+ ]
1281
+ ] = None,
1282
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1283
+ _content_type: Optional[StrictStr] = None,
1284
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1285
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1286
+ ) -> RESTResponseType:
1287
+ """Remove Markers
1288
+
1289
+ Removes all markers associated with a trajectory.
1290
+
1291
+ :param name: Name of the trajectory to delete markers from (required)
1292
+ :type name: str
1293
+ :param _request_timeout: timeout setting for this request. If one
1294
+ number provided, it will be total request
1295
+ timeout. It can also be a pair (tuple) of
1296
+ (connection, read) timeouts.
1297
+ :type _request_timeout: int, tuple(int, int), optional
1298
+ :param _request_auth: set to override the auth_settings for an a single
1299
+ request; this effectively ignores the
1300
+ authentication in the spec for a single request.
1301
+ :type _request_auth: dict, optional
1302
+ :param _content_type: force content-type for the request.
1303
+ :type _content_type: str, Optional
1304
+ :param _headers: set to override the headers for a single
1305
+ request; this effectively ignores the headers
1306
+ in the spec for a single request.
1307
+ :type _headers: dict, optional
1308
+ :param _host_index: set to override the host_index for a single
1309
+ request; this effectively ignores the host_index
1310
+ in the spec for a single request.
1311
+ :type _host_index: int, optional
1312
+ :return: Returns the result object.
1313
+ """ # noqa: E501
1314
+
1315
+ _param = self._remove_trajectory_markers_serialize(
1316
+ name=name,
1317
+ _request_auth=_request_auth,
1318
+ _content_type=_content_type,
1319
+ _headers=_headers,
1320
+ _host_index=_host_index
1321
+ )
1322
+
1323
+ _response_types_map: Dict[str, Optional[str]] = {
1324
+ '204': None,
1325
+ '404': None,
1326
+ '500': None,
1327
+ '422': "HTTPValidationError",
1328
+ }
1329
+ response_data = await self.api_client.call_api(
1330
+ *_param,
1331
+ _request_timeout=_request_timeout
1332
+ )
1333
+ return response_data.response
1334
+
1335
+
1336
+ def _remove_trajectory_markers_serialize(
1337
+ self,
1338
+ name,
1339
+ _request_auth,
1340
+ _content_type,
1341
+ _headers,
1342
+ _host_index,
1343
+ ) -> RequestSerialized:
1344
+
1345
+ _host = None
1346
+
1347
+ _collection_formats: Dict[str, str] = {
1348
+ }
1349
+
1350
+ _path_params: Dict[str, str] = {}
1351
+ _query_params: List[Tuple[str, str]] = []
1352
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1353
+ _form_params: List[Tuple[str, str]] = []
1354
+ _files: Dict[str, Union[str, bytes]] = {}
1355
+ _body_params: Optional[bytes] = None
1356
+
1357
+ # process the path parameters
1358
+ if name is not None:
1359
+ _path_params['name'] = name
1360
+ # process the query parameters
1361
+ # process the header parameters
1362
+ # process the form parameters
1363
+ # process the body parameter
1364
+
1365
+
1366
+ # set the HTTP header `Accept`
1367
+ _header_params['Accept'] = self.api_client.select_header_accept(
1368
+ [
1369
+ 'application/json'
1370
+ ]
1371
+ )
1372
+
1373
+
1374
+ # authentication setting
1375
+ _auth_settings: List[str] = [
1376
+ ]
1377
+
1378
+ return self.api_client.param_serialize(
1379
+ method='DELETE',
1380
+ resource_path='/trajectories/{name}/markers',
1381
+ path_params=_path_params,
1382
+ query_params=_query_params,
1383
+ header_params=_header_params,
1384
+ body=_body_params,
1385
+ post_params=_form_params,
1386
+ files=_files,
1387
+ auth_settings=_auth_settings,
1388
+ collection_formats=_collection_formats,
1389
+ _host=_host,
1390
+ _request_auth=_request_auth
1391
+ )
1392
+
1393
+
1394
+
1395
+ @validate_call
1396
+ async def update_trajectory(
1397
+ self,
1398
+ name: Annotated[StrictStr, Field(description="Name of the trajectory to update")],
1399
+ patch_trajectory_data: PatchTrajectoryData,
1400
+ _request_timeout: Union[
1401
+ None,
1402
+ Annotated[StrictFloat, Field(gt=0)],
1403
+ Tuple[
1404
+ Annotated[StrictFloat, Field(gt=0)],
1405
+ Annotated[StrictFloat, Field(gt=0)]
1406
+ ]
1407
+ ] = None,
1408
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1409
+ _content_type: Optional[StrictStr] = None,
1410
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1411
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1412
+ ) -> TrajectoryObject:
1413
+ """Update Trajectory
1414
+
1415
+ Updates an existing trajectory with new motion data.
1416
+
1417
+ :param name: Name of the trajectory to update (required)
1418
+ :type name: str
1419
+ :param patch_trajectory_data: (required)
1420
+ :type patch_trajectory_data: PatchTrajectoryData
1421
+ :param _request_timeout: timeout setting for this request. If one
1422
+ number provided, it will be total request
1423
+ timeout. It can also be a pair (tuple) of
1424
+ (connection, read) timeouts.
1425
+ :type _request_timeout: int, tuple(int, int), optional
1426
+ :param _request_auth: set to override the auth_settings for an a single
1427
+ request; this effectively ignores the
1428
+ authentication in the spec for a single request.
1429
+ :type _request_auth: dict, optional
1430
+ :param _content_type: force content-type for the request.
1431
+ :type _content_type: str, Optional
1432
+ :param _headers: set to override the headers for a single
1433
+ request; this effectively ignores the headers
1434
+ in the spec for a single request.
1435
+ :type _headers: dict, optional
1436
+ :param _host_index: set to override the host_index for a single
1437
+ request; this effectively ignores the host_index
1438
+ in the spec for a single request.
1439
+ :type _host_index: int, optional
1440
+ :return: Returns the result object.
1441
+ """ # noqa: E501
1442
+
1443
+ _param = self._update_trajectory_serialize(
1444
+ name=name,
1445
+ patch_trajectory_data=patch_trajectory_data,
1446
+ _request_auth=_request_auth,
1447
+ _content_type=_content_type,
1448
+ _headers=_headers,
1449
+ _host_index=_host_index
1450
+ )
1451
+
1452
+ _response_types_map: Dict[str, Optional[str]] = {
1453
+ '200': "TrajectoryObject",
1454
+ '404': None,
1455
+ '500': None,
1456
+ '422': "HTTPValidationError",
1457
+ }
1458
+ response_data = await self.api_client.call_api(
1459
+ *_param,
1460
+ _request_timeout=_request_timeout
1461
+ )
1462
+ await response_data.read()
1463
+ return self.api_client.response_deserialize(
1464
+ response_data=response_data,
1465
+ response_types_map=_response_types_map,
1466
+ ).data
1467
+
1468
+
1469
+ @validate_call
1470
+ async def update_trajectory_with_http_info(
1471
+ self,
1472
+ name: Annotated[StrictStr, Field(description="Name of the trajectory to update")],
1473
+ patch_trajectory_data: PatchTrajectoryData,
1474
+ _request_timeout: Union[
1475
+ None,
1476
+ Annotated[StrictFloat, Field(gt=0)],
1477
+ Tuple[
1478
+ Annotated[StrictFloat, Field(gt=0)],
1479
+ Annotated[StrictFloat, Field(gt=0)]
1480
+ ]
1481
+ ] = None,
1482
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1483
+ _content_type: Optional[StrictStr] = None,
1484
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1485
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1486
+ ) -> ApiResponse[TrajectoryObject]:
1487
+ """Update Trajectory
1488
+
1489
+ Updates an existing trajectory with new motion data.
1490
+
1491
+ :param name: Name of the trajectory to update (required)
1492
+ :type name: str
1493
+ :param patch_trajectory_data: (required)
1494
+ :type patch_trajectory_data: PatchTrajectoryData
1495
+ :param _request_timeout: timeout setting for this request. If one
1496
+ number provided, it will be total request
1497
+ timeout. It can also be a pair (tuple) of
1498
+ (connection, read) timeouts.
1499
+ :type _request_timeout: int, tuple(int, int), optional
1500
+ :param _request_auth: set to override the auth_settings for an a single
1501
+ request; this effectively ignores the
1502
+ authentication in the spec for a single request.
1503
+ :type _request_auth: dict, optional
1504
+ :param _content_type: force content-type for the request.
1505
+ :type _content_type: str, Optional
1506
+ :param _headers: set to override the headers for a single
1507
+ request; this effectively ignores the headers
1508
+ in the spec for a single request.
1509
+ :type _headers: dict, optional
1510
+ :param _host_index: set to override the host_index for a single
1511
+ request; this effectively ignores the host_index
1512
+ in the spec for a single request.
1513
+ :type _host_index: int, optional
1514
+ :return: Returns the result object.
1515
+ """ # noqa: E501
1516
+
1517
+ _param = self._update_trajectory_serialize(
1518
+ name=name,
1519
+ patch_trajectory_data=patch_trajectory_data,
1520
+ _request_auth=_request_auth,
1521
+ _content_type=_content_type,
1522
+ _headers=_headers,
1523
+ _host_index=_host_index
1524
+ )
1525
+
1526
+ _response_types_map: Dict[str, Optional[str]] = {
1527
+ '200': "TrajectoryObject",
1528
+ '404': None,
1529
+ '500': None,
1530
+ '422': "HTTPValidationError",
1531
+ }
1532
+ response_data = await self.api_client.call_api(
1533
+ *_param,
1534
+ _request_timeout=_request_timeout
1535
+ )
1536
+ await response_data.read()
1537
+ return self.api_client.response_deserialize(
1538
+ response_data=response_data,
1539
+ response_types_map=_response_types_map,
1540
+ )
1541
+
1542
+
1543
+ @validate_call
1544
+ async def update_trajectory_without_preload_content(
1545
+ self,
1546
+ name: Annotated[StrictStr, Field(description="Name of the trajectory to update")],
1547
+ patch_trajectory_data: PatchTrajectoryData,
1548
+ _request_timeout: Union[
1549
+ None,
1550
+ Annotated[StrictFloat, Field(gt=0)],
1551
+ Tuple[
1552
+ Annotated[StrictFloat, Field(gt=0)],
1553
+ Annotated[StrictFloat, Field(gt=0)]
1554
+ ]
1555
+ ] = None,
1556
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1557
+ _content_type: Optional[StrictStr] = None,
1558
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1559
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1560
+ ) -> RESTResponseType:
1561
+ """Update Trajectory
1562
+
1563
+ Updates an existing trajectory with new motion data.
1564
+
1565
+ :param name: Name of the trajectory to update (required)
1566
+ :type name: str
1567
+ :param patch_trajectory_data: (required)
1568
+ :type patch_trajectory_data: PatchTrajectoryData
1569
+ :param _request_timeout: timeout setting for this request. If one
1570
+ number provided, it will be total request
1571
+ timeout. It can also be a pair (tuple) of
1572
+ (connection, read) timeouts.
1573
+ :type _request_timeout: int, tuple(int, int), optional
1574
+ :param _request_auth: set to override the auth_settings for an a single
1575
+ request; this effectively ignores the
1576
+ authentication in the spec for a single request.
1577
+ :type _request_auth: dict, optional
1578
+ :param _content_type: force content-type for the request.
1579
+ :type _content_type: str, Optional
1580
+ :param _headers: set to override the headers for a single
1581
+ request; this effectively ignores the headers
1582
+ in the spec for a single request.
1583
+ :type _headers: dict, optional
1584
+ :param _host_index: set to override the host_index for a single
1585
+ request; this effectively ignores the host_index
1586
+ in the spec for a single request.
1587
+ :type _host_index: int, optional
1588
+ :return: Returns the result object.
1589
+ """ # noqa: E501
1590
+
1591
+ _param = self._update_trajectory_serialize(
1592
+ name=name,
1593
+ patch_trajectory_data=patch_trajectory_data,
1594
+ _request_auth=_request_auth,
1595
+ _content_type=_content_type,
1596
+ _headers=_headers,
1597
+ _host_index=_host_index
1598
+ )
1599
+
1600
+ _response_types_map: Dict[str, Optional[str]] = {
1601
+ '200': "TrajectoryObject",
1602
+ '404': None,
1603
+ '500': None,
1604
+ '422': "HTTPValidationError",
1605
+ }
1606
+ response_data = await self.api_client.call_api(
1607
+ *_param,
1608
+ _request_timeout=_request_timeout
1609
+ )
1610
+ return response_data.response
1611
+
1612
+
1613
+ def _update_trajectory_serialize(
1614
+ self,
1615
+ name,
1616
+ patch_trajectory_data,
1617
+ _request_auth,
1618
+ _content_type,
1619
+ _headers,
1620
+ _host_index,
1621
+ ) -> RequestSerialized:
1622
+
1623
+ _host = None
1624
+
1625
+ _collection_formats: Dict[str, str] = {
1626
+ }
1627
+
1628
+ _path_params: Dict[str, str] = {}
1629
+ _query_params: List[Tuple[str, str]] = []
1630
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1631
+ _form_params: List[Tuple[str, str]] = []
1632
+ _files: Dict[str, Union[str, bytes]] = {}
1633
+ _body_params: Optional[bytes] = None
1634
+
1635
+ # process the path parameters
1636
+ if name is not None:
1637
+ _path_params['name'] = name
1638
+ # process the query parameters
1639
+ # process the header parameters
1640
+ # process the form parameters
1641
+ # process the body parameter
1642
+ if patch_trajectory_data is not None:
1643
+ _body_params = patch_trajectory_data
1644
+
1645
+
1646
+ # set the HTTP header `Accept`
1647
+ _header_params['Accept'] = self.api_client.select_header_accept(
1648
+ [
1649
+ 'application/json'
1650
+ ]
1651
+ )
1652
+
1653
+ # set the HTTP header `Content-Type`
1654
+ if _content_type:
1655
+ _header_params['Content-Type'] = _content_type
1656
+ else:
1657
+ _default_content_type = (
1658
+ self.api_client.select_header_content_type(
1659
+ [
1660
+ 'application/json'
1661
+ ]
1662
+ )
1663
+ )
1664
+ if _default_content_type is not None:
1665
+ _header_params['Content-Type'] = _default_content_type
1666
+
1667
+ # authentication setting
1668
+ _auth_settings: List[str] = [
1669
+ ]
1670
+
1671
+ return self.api_client.param_serialize(
1672
+ method='PATCH',
1673
+ resource_path='/trajectories/{name}',
1674
+ path_params=_path_params,
1675
+ query_params=_query_params,
1676
+ header_params=_header_params,
1677
+ body=_body_params,
1678
+ post_params=_form_params,
1679
+ files=_files,
1680
+ auth_settings=_auth_settings,
1681
+ collection_formats=_collection_formats,
1682
+ _host=_host,
1683
+ _request_auth=_request_auth
1684
+ )
1685
+
1686
+