spatialdds-ros 0.3.0__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.
- spatialdds_idl18/PROVENANCE.md +66 -0
- spatialdds_idl18/__init__.py +9 -0
- spatialdds_idl18/_field_aliases.py +26 -0
- spatialdds_idl18/builtin/__init__.py +11 -0
- spatialdds_idl18/builtin/_types.py +28 -0
- spatialdds_idl18/spatial/__init__.py +33 -0
- spatialdds_idl18/spatial/anchors/__init__.py +20 -0
- spatialdds_idl18/spatial/anchors/_anchors.py +102 -0
- spatialdds_idl18/spatial/argeo/__init__.py +22 -0
- spatialdds_idl18/spatial/argeo/_argeo.py +97 -0
- spatialdds_idl18/spatial/common/__init__.py +27 -0
- spatialdds_idl18/spatial/common/_types.py +104 -0
- spatialdds_idl18/spatial/core/GnssService/__init__.py +17 -0
- spatialdds_idl18/spatial/core/GnssService/_core.py +27 -0
- spatialdds_idl18/spatial/core/__init__.py +40 -0
- spatialdds_idl18/spatial/core/_core.py +338 -0
- spatialdds_idl18/spatial/disco/__init__.py +34 -0
- spatialdds_idl18/spatial/disco/_discovery.py +252 -0
- spatialdds_idl18/spatial/events/__init__.py +29 -0
- spatialdds_idl18/spatial/events/_events.py +164 -0
- spatialdds_idl18/spatial/events/enums/__init__.py +19 -0
- spatialdds_idl18/spatial/events/enums/crossing_direction_enum/__init__.py +11 -0
- spatialdds_idl18/spatial/events/enums/crossing_direction_enum/_events.py +25 -0
- spatialdds_idl18/spatial/events/enums/event_state_enum/__init__.py +11 -0
- spatialdds_idl18/spatial/events/enums/event_state_enum/_events.py +26 -0
- spatialdds_idl18/spatial/events/enums/event_type_enum/__init__.py +11 -0
- spatialdds_idl18/spatial/events/enums/event_type_enum/_events.py +36 -0
- spatialdds_idl18/spatial/events/enums/severity_enum/__init__.py +11 -0
- spatialdds_idl18/spatial/events/enums/severity_enum/_events.py +26 -0
- spatialdds_idl18/spatial/events/enums/zone_kind_enum/__init__.py +11 -0
- spatialdds_idl18/spatial/events/enums/zone_kind_enum/_events.py +31 -0
- spatialdds_idl18/spatial/mapping/__init__.py +30 -0
- spatialdds_idl18/spatial/mapping/_mapping.py +168 -0
- spatialdds_idl18/spatial/mapping/enums/__init__.py +19 -0
- spatialdds_idl18/spatial/mapping/enums/alignment_method/__init__.py +11 -0
- spatialdds_idl18/spatial/mapping/enums/alignment_method/_mapping.py +31 -0
- spatialdds_idl18/spatial/mapping/enums/edge_type/__init__.py +11 -0
- spatialdds_idl18/spatial/mapping/enums/edge_type/_mapping.py +34 -0
- spatialdds_idl18/spatial/mapping/enums/map_event_kind/__init__.py +11 -0
- spatialdds_idl18/spatial/mapping/enums/map_event_kind/_mapping.py +29 -0
- spatialdds_idl18/spatial/mapping/enums/map_kind/__init__.py +11 -0
- spatialdds_idl18/spatial/mapping/enums/map_kind/_mapping.py +32 -0
- spatialdds_idl18/spatial/mapping/enums/map_status/__init__.py +11 -0
- spatialdds_idl18/spatial/mapping/enums/map_status/_mapping.py +27 -0
- spatialdds_idl18/spatial/owm/__init__.py +22 -0
- spatialdds_idl18/spatial/owm/_owm.py +103 -0
- spatialdds_idl18/spatial/semantics/__init__.py +22 -0
- spatialdds_idl18/spatial/semantics/_semantics.py +174 -0
- spatialdds_idl18/spatial/sensing/__init__.py +21 -0
- spatialdds_idl18/spatial/sensing/common/__init__.py +34 -0
- spatialdds_idl18/spatial/sensing/common/_common.py +192 -0
- spatialdds_idl18/spatial/sensing/lidar/__init__.py +32 -0
- spatialdds_idl18/spatial/sensing/lidar/_lidar.py +135 -0
- spatialdds_idl18/spatial/sensing/rad/__init__.py +33 -0
- spatialdds_idl18/spatial/sensing/rad/_rad.py +191 -0
- spatialdds_idl18/spatial/sensing/radio/__init__.py +22 -0
- spatialdds_idl18/spatial/sensing/radio/_radio.py +141 -0
- spatialdds_idl18/spatial/sensing/rf_beam/__init__.py +25 -0
- spatialdds_idl18/spatial/sensing/rf_beam/_rf_beam.py +117 -0
- spatialdds_idl18/spatial/sensing/vision/__init__.py +36 -0
- spatialdds_idl18/spatial/sensing/vision/_vision.py +170 -0
- spatialdds_idl18/spatial/slam_frontend/__init__.py +22 -0
- spatialdds_idl18/spatial/slam_frontend/_slam_frontend.py +144 -0
- spatialdds_idl18/spatial/vio/__init__.py +20 -0
- spatialdds_idl18/spatial/vio/_vio.py +134 -0
- spatialdds_ros/__init__.py +6 -0
- spatialdds_ros/adapter.py +336 -0
- spatialdds_ros/announce.py +231 -0
- spatialdds_ros/config.py +293 -0
- spatialdds_ros/frames.py +219 -0
- spatialdds_ros/kinematic.py +140 -0
- spatialdds_ros/qos.py +101 -0
- spatialdds_ros/recording.py +167 -0
- spatialdds_ros/robot_node.py +287 -0
- spatialdds_ros/standalone.py +221 -0
- spatialdds_ros/tempo.py +114 -0
- spatialdds_ros/topics.py +64 -0
- spatialdds_ros/transport.py +170 -0
- spatialdds_ros-0.3.0.data/data/share/ament_index/resource_index/packages/spatialdds_ros +0 -0
- spatialdds_ros-0.3.0.data/data/share/spatialdds_ros/package.xml +29 -0
- spatialdds_ros-0.3.0.dist-info/METADATA +331 -0
- spatialdds_ros-0.3.0.dist-info/RECORD +87 -0
- spatialdds_ros-0.3.0.dist-info/WHEEL +5 -0
- spatialdds_ros-0.3.0.dist-info/entry_points.txt +3 -0
- spatialdds_ros-0.3.0.dist-info/licenses/LICENSE +21 -0
- spatialdds_ros-0.3.0.dist-info/top_level.txt +2 -0
- spatialdds_ros-0.3.0.dist-info/zip-safe +1 -0
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.sensing.common
|
|
5
|
+
IDL file: common.idl
|
|
6
|
+
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from dataclasses import dataclass
|
|
10
|
+
from enum import auto
|
|
11
|
+
from typing import TYPE_CHECKING, Optional
|
|
12
|
+
|
|
13
|
+
import cyclonedds.idl as idl
|
|
14
|
+
import cyclonedds.idl.annotations as annotate
|
|
15
|
+
import cyclonedds.idl.types as types
|
|
16
|
+
|
|
17
|
+
# root module import for resolving types
|
|
18
|
+
# generate_types.py: bind the root name the dotted
|
|
19
|
+
# annotations below already use, so get_type_hints works
|
|
20
|
+
import spatialdds_idl18
|
|
21
|
+
from spatialdds_idl18 import spatial
|
|
22
|
+
|
|
23
|
+
if TYPE_CHECKING:
|
|
24
|
+
import builtin
|
|
25
|
+
import spatial.common
|
|
26
|
+
import spatial.core
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
MODULE_ID = "spatial.sensing.common/1.8"
|
|
30
|
+
SZ_TINY = 64
|
|
31
|
+
SZ_SMALL = 256
|
|
32
|
+
SZ_MEDIUM = 2048
|
|
33
|
+
SZ_LARGE = 8192
|
|
34
|
+
SZ_XL = 32768
|
|
35
|
+
Time = types.typedef['spatialdds_idl18.spatial.sensing.common.Time', 'spatialdds_idl18.builtin.Time']
|
|
36
|
+
PoseSE3 = types.typedef['spatialdds_idl18.spatial.sensing.common.PoseSE3', 'spatialdds_idl18.spatial.core.PoseSE3']
|
|
37
|
+
BlobRef = types.typedef['spatialdds_idl18.spatial.sensing.common.BlobRef', 'spatialdds_idl18.spatial.core.BlobRef']
|
|
38
|
+
FrameRef = types.typedef['spatialdds_idl18.spatial.sensing.common.FrameRef', 'spatialdds_idl18.spatial.common.FrameRef']
|
|
39
|
+
@annotate.final
|
|
40
|
+
class AxisEncoding(idl.IdlEnum, typename="spatial.sensing.common.AxisEncoding", default="AXIS_CENTERS"):
|
|
41
|
+
AXIS_CENTERS = 0
|
|
42
|
+
AXIS_LINSPACE = 1
|
|
43
|
+
|
|
44
|
+
@dataclass
|
|
45
|
+
@annotate.appendable
|
|
46
|
+
@annotate.autoid("sequential")
|
|
47
|
+
class Linspace(idl.IdlStruct, typename="spatial.sensing.common.Linspace"):
|
|
48
|
+
start: types.float64
|
|
49
|
+
step: types.float64
|
|
50
|
+
count: types.uint32
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
@annotate.appendable
|
|
55
|
+
class AxisSpec(idl.IdlUnion, discriminator=AxisEncoding, discriminator_is_key=False, typename="spatial.sensing.common.AxisSpec"):
|
|
56
|
+
centers: types.case[[AxisEncoding.AXIS_CENTERS], types.sequence[types.float64, 65535]]
|
|
57
|
+
lin: types.case[[AxisEncoding.AXIS_LINSPACE], 'spatialdds_idl18.spatial.sensing.common.Linspace']
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
@dataclass
|
|
61
|
+
@annotate.appendable
|
|
62
|
+
@annotate.autoid("sequential")
|
|
63
|
+
class Axis(idl.IdlStruct, typename="spatial.sensing.common.Axis"):
|
|
64
|
+
name: str
|
|
65
|
+
unit: str
|
|
66
|
+
spec: 'spatialdds_idl18.spatial.sensing.common.AxisSpec'
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
@dataclass
|
|
70
|
+
@annotate.appendable
|
|
71
|
+
@annotate.autoid("sequential")
|
|
72
|
+
class ROI(idl.IdlStruct, typename="spatial.sensing.common.ROI"):
|
|
73
|
+
has_range: bool
|
|
74
|
+
range_min: types.float32
|
|
75
|
+
range_max: types.float32
|
|
76
|
+
has_azimuth: bool
|
|
77
|
+
az_min: types.float32
|
|
78
|
+
az_max: types.float32
|
|
79
|
+
has_elevation: bool
|
|
80
|
+
el_min: types.float32
|
|
81
|
+
el_max: types.float32
|
|
82
|
+
has_doppler: bool
|
|
83
|
+
dop_min: types.float32
|
|
84
|
+
dop_max: types.float32
|
|
85
|
+
has_image_roi: bool
|
|
86
|
+
u_min: types.int32
|
|
87
|
+
v_min: types.int32
|
|
88
|
+
u_max: types.int32
|
|
89
|
+
v_max: types.int32
|
|
90
|
+
_global: bool
|
|
91
|
+
|
|
92
|
+
@annotate.final
|
|
93
|
+
class Codec(idl.IdlEnum, typename="spatial.sensing.common.Codec", default="CODEC_NONE"):
|
|
94
|
+
CODEC_NONE = 0
|
|
95
|
+
LZ4 = 1
|
|
96
|
+
ZSTD = 2
|
|
97
|
+
GZIP = 3
|
|
98
|
+
DRACO = 10
|
|
99
|
+
JPEG = 20
|
|
100
|
+
H264 = 21
|
|
101
|
+
H265 = 22
|
|
102
|
+
AV1 = 23
|
|
103
|
+
FP8Q = 40
|
|
104
|
+
FP4Q = 41
|
|
105
|
+
AE_V1 = 42
|
|
106
|
+
PNG = 43
|
|
107
|
+
@annotate.final
|
|
108
|
+
class PayloadKind(idl.IdlEnum, typename="spatial.sensing.common.PayloadKind", default="DENSE_TILES"):
|
|
109
|
+
DENSE_TILES = 0
|
|
110
|
+
SPARSE_COO = 1
|
|
111
|
+
LATENT = 2
|
|
112
|
+
BLOB_GEOMETRY = 10
|
|
113
|
+
BLOB_RASTER = 11
|
|
114
|
+
@annotate.final
|
|
115
|
+
class SampleType(idl.IdlEnum, typename="spatial.sensing.common.SampleType", default="U8_MAG"):
|
|
116
|
+
U8_MAG = 0
|
|
117
|
+
F16_MAG = 1
|
|
118
|
+
CF16 = 2
|
|
119
|
+
CF32 = 3
|
|
120
|
+
MAGPHASE_S8 = 4
|
|
121
|
+
|
|
122
|
+
@dataclass
|
|
123
|
+
@annotate.appendable
|
|
124
|
+
@annotate.autoid("sequential")
|
|
125
|
+
class StreamMeta(idl.IdlStruct, typename="spatial.sensing.common.StreamMeta"):
|
|
126
|
+
stream_id: str
|
|
127
|
+
annotate.key("stream_id")
|
|
128
|
+
frame_ref: 'spatialdds_idl18.spatial.sensing.common.FrameRef'
|
|
129
|
+
T_bus_sensor: 'spatialdds_idl18.spatial.sensing.common.PoseSE3'
|
|
130
|
+
nominal_rate_hz: types.float64
|
|
131
|
+
schema_version: str
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
@dataclass
|
|
135
|
+
@annotate.appendable
|
|
136
|
+
@annotate.autoid("sequential")
|
|
137
|
+
class FrameHeader(idl.IdlStruct, typename="spatial.sensing.common.FrameHeader"):
|
|
138
|
+
stream_id: str
|
|
139
|
+
annotate.key("stream_id")
|
|
140
|
+
frame_seq: types.uint64
|
|
141
|
+
t_start: 'spatialdds_idl18.spatial.sensing.common.Time'
|
|
142
|
+
t_end: 'spatialdds_idl18.spatial.sensing.common.Time'
|
|
143
|
+
has_sensor_pose: bool
|
|
144
|
+
sensor_pose: 'spatialdds_idl18.spatial.sensing.common.PoseSE3'
|
|
145
|
+
blobs: types.sequence['spatialdds_idl18.spatial.sensing.common.BlobRef', 256]
|
|
146
|
+
|
|
147
|
+
@annotate.final
|
|
148
|
+
class Health(idl.IdlEnum, typename="spatial.sensing.common.Health", default="OK"):
|
|
149
|
+
OK = 0
|
|
150
|
+
DEGRADED = 1
|
|
151
|
+
ERROR = 2
|
|
152
|
+
|
|
153
|
+
@dataclass
|
|
154
|
+
@annotate.appendable
|
|
155
|
+
@annotate.autoid("sequential")
|
|
156
|
+
class FrameQuality(idl.IdlStruct, typename="spatial.sensing.common.FrameQuality"):
|
|
157
|
+
has_snr_db: bool
|
|
158
|
+
snr_db: types.float32
|
|
159
|
+
percent_valid: types.float32
|
|
160
|
+
health: 'spatialdds_idl18.spatial.sensing.common.Health'
|
|
161
|
+
note: str
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
@dataclass
|
|
165
|
+
@annotate.appendable
|
|
166
|
+
@annotate.autoid("sequential")
|
|
167
|
+
class ROIRequest(idl.IdlStruct, typename="spatial.sensing.common.ROIRequest"):
|
|
168
|
+
stream_id: str
|
|
169
|
+
annotate.key("stream_id")
|
|
170
|
+
request_id: types.uint64
|
|
171
|
+
t_start: 'spatialdds_idl18.spatial.sensing.common.Time'
|
|
172
|
+
t_end: 'spatialdds_idl18.spatial.sensing.common.Time'
|
|
173
|
+
roi: 'spatialdds_idl18.spatial.sensing.common.ROI'
|
|
174
|
+
wants_payload_kind: bool
|
|
175
|
+
desired_payload_kind: 'spatialdds_idl18.spatial.sensing.common.PayloadKind'
|
|
176
|
+
wants_codec: bool
|
|
177
|
+
desired_codec: 'spatialdds_idl18.spatial.sensing.common.Codec'
|
|
178
|
+
wants_sample_type: bool
|
|
179
|
+
desired_sample_type: 'spatialdds_idl18.spatial.sensing.common.SampleType'
|
|
180
|
+
max_bytes: types.int32
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
@dataclass
|
|
184
|
+
@annotate.appendable
|
|
185
|
+
@annotate.autoid("sequential")
|
|
186
|
+
class ROIReply(idl.IdlStruct, typename="spatial.sensing.common.ROIReply"):
|
|
187
|
+
stream_id: str
|
|
188
|
+
annotate.key("stream_id")
|
|
189
|
+
request_id: types.uint64
|
|
190
|
+
frames: types.sequence['spatialdds_idl18.spatial.sensing.common.FrameHeader', 64]
|
|
191
|
+
|
|
192
|
+
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.sensing.lidar
|
|
5
|
+
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from ._lidar import Axis, BlobRef, CloudEncoding, Codec, FrameHeader, FrameQuality, FrameRef, LidarDetection, LidarDetectionSet, LidarFrame, LidarMeta, LidarType, MODULE_ID, PayloadKind, PointLayout, PoseSE3, ROI, ROIReply, ROIRequest, SampleType, StreamMeta, Time
|
|
9
|
+
__all__ = [
|
|
10
|
+
"Axis",
|
|
11
|
+
"BlobRef",
|
|
12
|
+
"CloudEncoding",
|
|
13
|
+
"Codec",
|
|
14
|
+
"FrameHeader",
|
|
15
|
+
"FrameQuality",
|
|
16
|
+
"FrameRef",
|
|
17
|
+
"LidarDetection",
|
|
18
|
+
"LidarDetectionSet",
|
|
19
|
+
"LidarFrame",
|
|
20
|
+
"LidarMeta",
|
|
21
|
+
"LidarType",
|
|
22
|
+
"MODULE_ID",
|
|
23
|
+
"PayloadKind",
|
|
24
|
+
"PointLayout",
|
|
25
|
+
"PoseSE3",
|
|
26
|
+
"ROI",
|
|
27
|
+
"ROIReply",
|
|
28
|
+
"ROIRequest",
|
|
29
|
+
"SampleType",
|
|
30
|
+
"StreamMeta",
|
|
31
|
+
"Time",
|
|
32
|
+
]
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.sensing.lidar
|
|
5
|
+
IDL file: lidar.idl
|
|
6
|
+
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from dataclasses import dataclass
|
|
10
|
+
from enum import auto
|
|
11
|
+
from typing import TYPE_CHECKING, Optional
|
|
12
|
+
|
|
13
|
+
import cyclonedds.idl as idl
|
|
14
|
+
import cyclonedds.idl.annotations as annotate
|
|
15
|
+
import cyclonedds.idl.types as types
|
|
16
|
+
|
|
17
|
+
# root module import for resolving types
|
|
18
|
+
# generate_types.py: bind the root name the dotted
|
|
19
|
+
# annotations below already use, so get_type_hints works
|
|
20
|
+
import spatialdds_idl18
|
|
21
|
+
from spatialdds_idl18 import spatial
|
|
22
|
+
|
|
23
|
+
if TYPE_CHECKING:
|
|
24
|
+
import builtin
|
|
25
|
+
import spatial.common
|
|
26
|
+
import spatial.core
|
|
27
|
+
import spatial.sensing.common
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
MODULE_ID = "spatial.sensing.lidar/1.8"
|
|
31
|
+
Time = types.typedef['spatialdds_idl18.spatial.sensing.lidar.Time', 'spatialdds_idl18.builtin.Time']
|
|
32
|
+
PoseSE3 = types.typedef['spatialdds_idl18.spatial.sensing.lidar.PoseSE3', 'spatialdds_idl18.spatial.core.PoseSE3']
|
|
33
|
+
BlobRef = types.typedef['spatialdds_idl18.spatial.sensing.lidar.BlobRef', 'spatialdds_idl18.spatial.core.BlobRef']
|
|
34
|
+
FrameRef = types.typedef['spatialdds_idl18.spatial.sensing.lidar.FrameRef', 'spatialdds_idl18.spatial.common.FrameRef']
|
|
35
|
+
Codec = types.typedef['spatialdds_idl18.spatial.sensing.lidar.Codec', 'spatialdds_idl18.spatial.sensing.common.Codec']
|
|
36
|
+
PayloadKind = types.typedef['spatialdds_idl18.spatial.sensing.lidar.PayloadKind', 'spatialdds_idl18.spatial.sensing.common.PayloadKind']
|
|
37
|
+
SampleType = types.typedef['spatialdds_idl18.spatial.sensing.lidar.SampleType', 'spatialdds_idl18.spatial.sensing.common.SampleType']
|
|
38
|
+
Axis = types.typedef['spatialdds_idl18.spatial.sensing.lidar.Axis', 'spatialdds_idl18.spatial.sensing.common.Axis']
|
|
39
|
+
ROI = types.typedef['spatialdds_idl18.spatial.sensing.lidar.ROI', 'spatialdds_idl18.spatial.sensing.common.ROI']
|
|
40
|
+
StreamMeta = types.typedef['spatialdds_idl18.spatial.sensing.lidar.StreamMeta', 'spatialdds_idl18.spatial.sensing.common.StreamMeta']
|
|
41
|
+
FrameHeader = types.typedef['spatialdds_idl18.spatial.sensing.lidar.FrameHeader', 'spatialdds_idl18.spatial.sensing.common.FrameHeader']
|
|
42
|
+
FrameQuality = types.typedef['spatialdds_idl18.spatial.sensing.lidar.FrameQuality', 'spatialdds_idl18.spatial.sensing.common.FrameQuality']
|
|
43
|
+
ROIRequest = types.typedef['spatialdds_idl18.spatial.sensing.lidar.ROIRequest', 'spatialdds_idl18.spatial.sensing.common.ROIRequest']
|
|
44
|
+
ROIReply = types.typedef['spatialdds_idl18.spatial.sensing.lidar.ROIReply', 'spatialdds_idl18.spatial.sensing.common.ROIReply']
|
|
45
|
+
@annotate.final
|
|
46
|
+
class LidarType(idl.IdlEnum, typename="spatial.sensing.lidar.LidarType", default="SPINNING_2D"):
|
|
47
|
+
SPINNING_2D = 0
|
|
48
|
+
MULTI_BEAM_3D = 1
|
|
49
|
+
SOLID_STATE = 2
|
|
50
|
+
@annotate.final
|
|
51
|
+
class CloudEncoding(idl.IdlEnum, typename="spatial.sensing.lidar.CloudEncoding", default="PCD"):
|
|
52
|
+
PCD = 0
|
|
53
|
+
PLY = 1
|
|
54
|
+
LAS = 2
|
|
55
|
+
LAZ = 3
|
|
56
|
+
BIN_INTERLEAVED = 4
|
|
57
|
+
GLTF_DRACO = 10
|
|
58
|
+
MPEG_PCC = 20
|
|
59
|
+
CUSTOM_BIN = 255
|
|
60
|
+
@annotate.final
|
|
61
|
+
class PointLayout(idl.IdlEnum, typename="spatial.sensing.lidar.PointLayout", default="XYZ_I"):
|
|
62
|
+
XYZ_I = 0
|
|
63
|
+
XYZ_I_R = 1
|
|
64
|
+
XYZ_I_R_N = 2
|
|
65
|
+
XYZ_I_R_T = 3
|
|
66
|
+
XYZ_I_R_T_N = 4
|
|
67
|
+
|
|
68
|
+
@dataclass
|
|
69
|
+
@annotate.appendable
|
|
70
|
+
@annotate.autoid("sequential")
|
|
71
|
+
class LidarMeta(idl.IdlStruct, typename="spatial.sensing.lidar.LidarMeta"):
|
|
72
|
+
stream_id: str
|
|
73
|
+
annotate.key("stream_id")
|
|
74
|
+
base: 'spatialdds_idl18.spatial.sensing.lidar.StreamMeta'
|
|
75
|
+
type: 'spatialdds_idl18.spatial.sensing.lidar.LidarType'
|
|
76
|
+
n_rings: types.uint16
|
|
77
|
+
has_range_limits: bool
|
|
78
|
+
min_range_m: types.float32
|
|
79
|
+
max_range_m: types.float32
|
|
80
|
+
has_horiz_fov: bool
|
|
81
|
+
horiz_fov_deg_min: types.float32
|
|
82
|
+
horiz_fov_deg_max: types.float32
|
|
83
|
+
has_vert_fov: bool
|
|
84
|
+
vert_fov_deg_min: types.float32
|
|
85
|
+
vert_fov_deg_max: types.float32
|
|
86
|
+
has_wavelength: bool
|
|
87
|
+
wavelength_nm: types.float32
|
|
88
|
+
encoding: 'spatialdds_idl18.spatial.sensing.lidar.CloudEncoding'
|
|
89
|
+
codec: 'spatialdds_idl18.spatial.sensing.lidar.Codec'
|
|
90
|
+
layout: 'spatialdds_idl18.spatial.sensing.lidar.PointLayout'
|
|
91
|
+
schema_version: str
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
@dataclass
|
|
95
|
+
@annotate.appendable
|
|
96
|
+
@annotate.autoid("sequential")
|
|
97
|
+
class LidarFrame(idl.IdlStruct, typename="spatial.sensing.lidar.LidarFrame"):
|
|
98
|
+
stream_id: str
|
|
99
|
+
annotate.key("stream_id")
|
|
100
|
+
frame_seq: types.uint64
|
|
101
|
+
hdr: 'spatialdds_idl18.spatial.sensing.lidar.FrameHeader'
|
|
102
|
+
encoding: 'spatialdds_idl18.spatial.sensing.lidar.CloudEncoding'
|
|
103
|
+
codec: 'spatialdds_idl18.spatial.sensing.lidar.Codec'
|
|
104
|
+
layout: 'spatialdds_idl18.spatial.sensing.lidar.PointLayout'
|
|
105
|
+
has_per_point_timestamps: bool
|
|
106
|
+
has_average_range_m: bool
|
|
107
|
+
average_range_m: types.float32
|
|
108
|
+
has_percent_valid: bool
|
|
109
|
+
percent_valid: types.float32
|
|
110
|
+
has_quality: bool
|
|
111
|
+
quality: 'spatialdds_idl18.spatial.sensing.lidar.FrameQuality'
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
@dataclass
|
|
115
|
+
@annotate.appendable
|
|
116
|
+
@annotate.autoid("sequential")
|
|
117
|
+
class LidarDetection(idl.IdlStruct, typename="spatial.sensing.lidar.LidarDetection"):
|
|
118
|
+
xyz_m: 'spatialdds_idl18.spatial.common.Vec3'
|
|
119
|
+
intensity: types.float32
|
|
120
|
+
ring: types.uint16
|
|
121
|
+
quality: types.float32
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
@dataclass
|
|
125
|
+
@annotate.appendable
|
|
126
|
+
@annotate.autoid("sequential")
|
|
127
|
+
class LidarDetectionSet(idl.IdlStruct, typename="spatial.sensing.lidar.LidarDetectionSet"):
|
|
128
|
+
stream_id: str
|
|
129
|
+
annotate.key("stream_id")
|
|
130
|
+
frame_seq: types.uint64
|
|
131
|
+
frame_ref: 'spatialdds_idl18.spatial.sensing.lidar.FrameRef'
|
|
132
|
+
dets: types.sequence['spatialdds_idl18.spatial.sensing.lidar.LidarDetection', 256]
|
|
133
|
+
stamp: 'spatialdds_idl18.spatial.sensing.lidar.Time'
|
|
134
|
+
|
|
135
|
+
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.sensing.rad
|
|
5
|
+
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from ._rad import Axis, BlobRef, Codec, FrameHeader, FrameQuality, FrameRef, MODULE_ID, PayloadKind, PoseSE3, ROI, ROIReply, ROIRequest, RadDetection, RadDetectionSet, RadDynProp, RadSensorMeta, RadSensorType, RadTensorFrame, RadTensorLayout, RadTensorMeta, SampleType, StreamMeta, Time
|
|
9
|
+
__all__ = [
|
|
10
|
+
"Axis",
|
|
11
|
+
"BlobRef",
|
|
12
|
+
"Codec",
|
|
13
|
+
"FrameHeader",
|
|
14
|
+
"FrameQuality",
|
|
15
|
+
"FrameRef",
|
|
16
|
+
"MODULE_ID",
|
|
17
|
+
"PayloadKind",
|
|
18
|
+
"PoseSE3",
|
|
19
|
+
"ROI",
|
|
20
|
+
"ROIReply",
|
|
21
|
+
"ROIRequest",
|
|
22
|
+
"RadDetection",
|
|
23
|
+
"RadDetectionSet",
|
|
24
|
+
"RadDynProp",
|
|
25
|
+
"RadSensorMeta",
|
|
26
|
+
"RadSensorType",
|
|
27
|
+
"RadTensorFrame",
|
|
28
|
+
"RadTensorLayout",
|
|
29
|
+
"RadTensorMeta",
|
|
30
|
+
"SampleType",
|
|
31
|
+
"StreamMeta",
|
|
32
|
+
"Time",
|
|
33
|
+
]
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.sensing.rad
|
|
5
|
+
IDL file: rad.idl
|
|
6
|
+
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from dataclasses import dataclass
|
|
10
|
+
from enum import auto
|
|
11
|
+
from typing import TYPE_CHECKING, Optional
|
|
12
|
+
|
|
13
|
+
import cyclonedds.idl as idl
|
|
14
|
+
import cyclonedds.idl.annotations as annotate
|
|
15
|
+
import cyclonedds.idl.types as types
|
|
16
|
+
|
|
17
|
+
# root module import for resolving types
|
|
18
|
+
# generate_types.py: bind the root name the dotted
|
|
19
|
+
# annotations below already use, so get_type_hints works
|
|
20
|
+
import spatialdds_idl18
|
|
21
|
+
from spatialdds_idl18 import spatial
|
|
22
|
+
|
|
23
|
+
if TYPE_CHECKING:
|
|
24
|
+
import builtin
|
|
25
|
+
import spatial.common
|
|
26
|
+
import spatial.core
|
|
27
|
+
import spatial.sensing.common
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
MODULE_ID = "spatial.sensing.rad/1.8"
|
|
31
|
+
Time = types.typedef['spatialdds_idl18.spatial.sensing.rad.Time', 'spatialdds_idl18.builtin.Time']
|
|
32
|
+
PoseSE3 = types.typedef['spatialdds_idl18.spatial.sensing.rad.PoseSE3', 'spatialdds_idl18.spatial.core.PoseSE3']
|
|
33
|
+
BlobRef = types.typedef['spatialdds_idl18.spatial.sensing.rad.BlobRef', 'spatialdds_idl18.spatial.core.BlobRef']
|
|
34
|
+
FrameRef = types.typedef['spatialdds_idl18.spatial.sensing.rad.FrameRef', 'spatialdds_idl18.spatial.common.FrameRef']
|
|
35
|
+
Codec = types.typedef['spatialdds_idl18.spatial.sensing.rad.Codec', 'spatialdds_idl18.spatial.sensing.common.Codec']
|
|
36
|
+
StreamMeta = types.typedef['spatialdds_idl18.spatial.sensing.rad.StreamMeta', 'spatialdds_idl18.spatial.sensing.common.StreamMeta']
|
|
37
|
+
FrameHeader = types.typedef['spatialdds_idl18.spatial.sensing.rad.FrameHeader', 'spatialdds_idl18.spatial.sensing.common.FrameHeader']
|
|
38
|
+
FrameQuality = types.typedef['spatialdds_idl18.spatial.sensing.rad.FrameQuality', 'spatialdds_idl18.spatial.sensing.common.FrameQuality']
|
|
39
|
+
Axis = types.typedef['spatialdds_idl18.spatial.sensing.rad.Axis', 'spatialdds_idl18.spatial.sensing.common.Axis']
|
|
40
|
+
SampleType = types.typedef['spatialdds_idl18.spatial.sensing.rad.SampleType', 'spatialdds_idl18.spatial.sensing.common.SampleType']
|
|
41
|
+
PayloadKind = types.typedef['spatialdds_idl18.spatial.sensing.rad.PayloadKind', 'spatialdds_idl18.spatial.sensing.common.PayloadKind']
|
|
42
|
+
ROI = types.typedef['spatialdds_idl18.spatial.sensing.rad.ROI', 'spatialdds_idl18.spatial.sensing.common.ROI']
|
|
43
|
+
ROIRequest = types.typedef['spatialdds_idl18.spatial.sensing.rad.ROIRequest', 'spatialdds_idl18.spatial.sensing.common.ROIRequest']
|
|
44
|
+
ROIReply = types.typedef['spatialdds_idl18.spatial.sensing.rad.ROIReply', 'spatialdds_idl18.spatial.sensing.common.ROIReply']
|
|
45
|
+
@annotate.final
|
|
46
|
+
class RadSensorType(idl.IdlEnum, typename="spatial.sensing.rad.RadSensorType", default="SHORT_RANGE"):
|
|
47
|
+
SHORT_RANGE = 0
|
|
48
|
+
MEDIUM_RANGE = 1
|
|
49
|
+
LONG_RANGE = 2
|
|
50
|
+
IMAGING_4D = 3
|
|
51
|
+
SAR = 4
|
|
52
|
+
OTHER = 255
|
|
53
|
+
@annotate.final
|
|
54
|
+
class RadDynProp(idl.IdlEnum, typename="spatial.sensing.rad.RadDynProp", default="UNKNOWN"):
|
|
55
|
+
UNKNOWN = 0
|
|
56
|
+
MOVING = 1
|
|
57
|
+
STATIONARY = 2
|
|
58
|
+
ONCOMING = 3
|
|
59
|
+
CROSSING_LEFT = 4
|
|
60
|
+
CROSSING_RIGHT = 5
|
|
61
|
+
STOPPED = 6
|
|
62
|
+
|
|
63
|
+
@dataclass
|
|
64
|
+
@annotate.appendable
|
|
65
|
+
@annotate.autoid("sequential")
|
|
66
|
+
class RadSensorMeta(idl.IdlStruct, typename="spatial.sensing.rad.RadSensorMeta"):
|
|
67
|
+
stream_id: str
|
|
68
|
+
annotate.key("stream_id")
|
|
69
|
+
base: 'spatialdds_idl18.spatial.sensing.rad.StreamMeta'
|
|
70
|
+
sensor_type: 'spatialdds_idl18.spatial.sensing.rad.RadSensorType'
|
|
71
|
+
has_range_limits: bool
|
|
72
|
+
min_range_m: types.float32
|
|
73
|
+
max_range_m: types.float32
|
|
74
|
+
has_azimuth_fov: bool
|
|
75
|
+
az_fov_min_deg: types.float32
|
|
76
|
+
az_fov_max_deg: types.float32
|
|
77
|
+
has_elevation_fov: bool
|
|
78
|
+
el_fov_min_deg: types.float32
|
|
79
|
+
el_fov_max_deg: types.float32
|
|
80
|
+
has_velocity_limits: bool
|
|
81
|
+
v_min_mps: types.float32
|
|
82
|
+
v_max_mps: types.float32
|
|
83
|
+
max_detections_per_frame: types.uint32
|
|
84
|
+
proc_chain: str
|
|
85
|
+
schema_version: str
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
@dataclass
|
|
89
|
+
@annotate.appendable
|
|
90
|
+
@annotate.autoid("sequential")
|
|
91
|
+
class RadDetection(idl.IdlStruct, typename="spatial.sensing.rad.RadDetection"):
|
|
92
|
+
xyz_m: 'spatialdds_idl18.spatial.common.Vec3'
|
|
93
|
+
has_velocity_xyz: bool
|
|
94
|
+
velocity_xyz: 'spatialdds_idl18.spatial.common.Vec3'
|
|
95
|
+
has_v_r_mps: bool
|
|
96
|
+
v_r_mps: types.float64
|
|
97
|
+
has_velocity_comp_xyz: bool
|
|
98
|
+
velocity_comp_xyz: 'spatialdds_idl18.spatial.common.Vec3'
|
|
99
|
+
has_rcs_dbm2: bool
|
|
100
|
+
rcs_dbm2: types.float32
|
|
101
|
+
intensity: types.float32
|
|
102
|
+
quality: types.float32
|
|
103
|
+
has_dyn_prop: bool
|
|
104
|
+
dyn_prop: 'spatialdds_idl18.spatial.sensing.rad.RadDynProp'
|
|
105
|
+
has_pos_rms: bool
|
|
106
|
+
x_rms_m: types.float32
|
|
107
|
+
y_rms_m: types.float32
|
|
108
|
+
z_rms_m: types.float32
|
|
109
|
+
has_vel_rms: bool
|
|
110
|
+
vx_rms_mps: types.float32
|
|
111
|
+
vy_rms_mps: types.float32
|
|
112
|
+
vz_rms_mps: types.float32
|
|
113
|
+
has_ambig_state: bool
|
|
114
|
+
ambig_state: types.uint8
|
|
115
|
+
has_false_alarm_prob: bool
|
|
116
|
+
false_alarm_prob: types.float32
|
|
117
|
+
has_sensor_track_id: bool
|
|
118
|
+
sensor_track_id: types.uint32
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
@dataclass
|
|
122
|
+
@annotate.appendable
|
|
123
|
+
@annotate.autoid("sequential")
|
|
124
|
+
class RadDetectionSet(idl.IdlStruct, typename="spatial.sensing.rad.RadDetectionSet"):
|
|
125
|
+
stream_id: str
|
|
126
|
+
annotate.key("stream_id")
|
|
127
|
+
frame_seq: types.uint64
|
|
128
|
+
frame_ref: 'spatialdds_idl18.spatial.sensing.rad.FrameRef'
|
|
129
|
+
dets: types.sequence['spatialdds_idl18.spatial.sensing.rad.RadDetection', 32768]
|
|
130
|
+
stamp: 'spatialdds_idl18.spatial.sensing.rad.Time'
|
|
131
|
+
source_id: str
|
|
132
|
+
seq: types.uint64
|
|
133
|
+
proc_chain: str
|
|
134
|
+
has_quality: bool
|
|
135
|
+
quality: 'spatialdds_idl18.spatial.sensing.rad.FrameQuality'
|
|
136
|
+
|
|
137
|
+
@annotate.final
|
|
138
|
+
class RadTensorLayout(idl.IdlEnum, typename="spatial.sensing.rad.RadTensorLayout", default="RA_D"):
|
|
139
|
+
RA_D = 0
|
|
140
|
+
R_AZ_EL_D = 1
|
|
141
|
+
CH_FAST_SLOW = 2
|
|
142
|
+
CH_R_D = 3
|
|
143
|
+
CUSTOM = 255
|
|
144
|
+
|
|
145
|
+
@dataclass
|
|
146
|
+
@annotate.appendable
|
|
147
|
+
@annotate.autoid("sequential")
|
|
148
|
+
class RadTensorMeta(idl.IdlStruct, typename="spatial.sensing.rad.RadTensorMeta"):
|
|
149
|
+
stream_id: str
|
|
150
|
+
annotate.key("stream_id")
|
|
151
|
+
base: 'spatialdds_idl18.spatial.sensing.rad.StreamMeta'
|
|
152
|
+
sensor_type: 'spatialdds_idl18.spatial.sensing.rad.RadSensorType'
|
|
153
|
+
layout: 'spatialdds_idl18.spatial.sensing.rad.RadTensorLayout'
|
|
154
|
+
axes: types.sequence['spatialdds_idl18.spatial.sensing.rad.Axis', 8]
|
|
155
|
+
voxel_type: 'spatialdds_idl18.spatial.sensing.rad.SampleType'
|
|
156
|
+
physical_meaning: str
|
|
157
|
+
has_antenna_config: bool
|
|
158
|
+
num_tx: types.uint16
|
|
159
|
+
num_rx: types.uint16
|
|
160
|
+
num_virtual_channels: types.uint16
|
|
161
|
+
has_waveform_params: bool
|
|
162
|
+
bandwidth_hz: types.float32
|
|
163
|
+
center_freq_hz: types.float32
|
|
164
|
+
chirp_duration_s: types.float32
|
|
165
|
+
samples_per_chirp: types.uint32
|
|
166
|
+
chirps_per_frame: types.uint32
|
|
167
|
+
payload_kind: 'spatialdds_idl18.spatial.sensing.rad.PayloadKind'
|
|
168
|
+
codec: 'spatialdds_idl18.spatial.sensing.rad.Codec'
|
|
169
|
+
has_quant_scale: bool
|
|
170
|
+
quant_scale: types.float32
|
|
171
|
+
tile_size: types.array[types.uint32, 4]
|
|
172
|
+
schema_version: str
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
@dataclass
|
|
176
|
+
@annotate.appendable
|
|
177
|
+
@annotate.autoid("sequential")
|
|
178
|
+
class RadTensorFrame(idl.IdlStruct, typename="spatial.sensing.rad.RadTensorFrame"):
|
|
179
|
+
stream_id: str
|
|
180
|
+
annotate.key("stream_id")
|
|
181
|
+
frame_seq: types.uint64
|
|
182
|
+
hdr: 'spatialdds_idl18.spatial.sensing.rad.FrameHeader'
|
|
183
|
+
payload_kind: 'spatialdds_idl18.spatial.sensing.rad.PayloadKind'
|
|
184
|
+
codec: 'spatialdds_idl18.spatial.sensing.rad.Codec'
|
|
185
|
+
voxel_type_after_decode: 'spatialdds_idl18.spatial.sensing.rad.SampleType'
|
|
186
|
+
has_quant_scale: bool
|
|
187
|
+
quant_scale: types.float32
|
|
188
|
+
quality: 'spatialdds_idl18.spatial.sensing.rad.FrameQuality'
|
|
189
|
+
proc_chain: str
|
|
190
|
+
|
|
191
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.sensing.radio
|
|
5
|
+
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from ._radio import FrameRef, MODULE_ID, MetaKV, PoseSE3, RadioMeasurementKind, RadioObservation, RadioScan, RadioSensorMeta, RadioType, StreamMeta, Time, WifiBand
|
|
9
|
+
__all__ = [
|
|
10
|
+
"FrameRef",
|
|
11
|
+
"MODULE_ID",
|
|
12
|
+
"MetaKV",
|
|
13
|
+
"PoseSE3",
|
|
14
|
+
"RadioMeasurementKind",
|
|
15
|
+
"RadioObservation",
|
|
16
|
+
"RadioScan",
|
|
17
|
+
"RadioSensorMeta",
|
|
18
|
+
"RadioType",
|
|
19
|
+
"StreamMeta",
|
|
20
|
+
"Time",
|
|
21
|
+
"WifiBand",
|
|
22
|
+
]
|