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,141 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.sensing.radio
|
|
5
|
+
IDL file: radio.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.radio/1.8"
|
|
31
|
+
Time = types.typedef['spatialdds_idl18.spatial.sensing.radio.Time', 'spatialdds_idl18.builtin.Time']
|
|
32
|
+
PoseSE3 = types.typedef['spatialdds_idl18.spatial.sensing.radio.PoseSE3', 'spatialdds_idl18.spatial.core.PoseSE3']
|
|
33
|
+
FrameRef = types.typedef['spatialdds_idl18.spatial.sensing.radio.FrameRef', 'spatialdds_idl18.spatial.common.FrameRef']
|
|
34
|
+
MetaKV = types.typedef['spatialdds_idl18.spatial.sensing.radio.MetaKV', 'spatialdds_idl18.spatial.common.MetaKV']
|
|
35
|
+
StreamMeta = types.typedef['spatialdds_idl18.spatial.sensing.radio.StreamMeta', 'spatialdds_idl18.spatial.sensing.common.StreamMeta']
|
|
36
|
+
@annotate.final
|
|
37
|
+
class RadioType(idl.IdlEnum, typename="spatial.sensing.radio.RadioType", default="WIFI"):
|
|
38
|
+
WIFI = 0
|
|
39
|
+
BLE = 1
|
|
40
|
+
BT_CLASSIC = 2
|
|
41
|
+
UWB = 3
|
|
42
|
+
CELLULAR = 4
|
|
43
|
+
LORA = 5
|
|
44
|
+
OTHER_RADIO = 255
|
|
45
|
+
@annotate.final
|
|
46
|
+
class WifiBand(idl.IdlEnum, typename="spatial.sensing.radio.WifiBand", default="BAND_UNKNOWN"):
|
|
47
|
+
BAND_UNKNOWN = 0
|
|
48
|
+
BAND_2_4GHZ = 1
|
|
49
|
+
BAND_5GHZ = 2
|
|
50
|
+
BAND_6GHZ = 3
|
|
51
|
+
BAND_60GHZ = 4
|
|
52
|
+
@annotate.final
|
|
53
|
+
class RadioMeasurementKind(idl.IdlEnum, typename="spatial.sensing.radio.RadioMeasurementKind", default="RSSI"):
|
|
54
|
+
RSSI = 0
|
|
55
|
+
RTT_NS = 1
|
|
56
|
+
AOA_DEG = 2
|
|
57
|
+
RANGE_M = 3
|
|
58
|
+
RSRP = 4
|
|
59
|
+
CSI_REF = 5
|
|
60
|
+
OTHER_MEASURE = 255
|
|
61
|
+
|
|
62
|
+
@dataclass
|
|
63
|
+
@annotate.appendable
|
|
64
|
+
@annotate.autoid("sequential")
|
|
65
|
+
class RadioObservation(idl.IdlStruct, typename="spatial.sensing.radio.RadioObservation"):
|
|
66
|
+
identifier: str
|
|
67
|
+
measurement_kind: 'spatialdds_idl18.spatial.sensing.radio.RadioMeasurementKind'
|
|
68
|
+
value: types.float32
|
|
69
|
+
has_frequency: bool
|
|
70
|
+
frequency_mhz: types.float32
|
|
71
|
+
has_band: bool
|
|
72
|
+
band: 'spatialdds_idl18.spatial.sensing.radio.WifiBand'
|
|
73
|
+
has_ssid: bool
|
|
74
|
+
ssid: str
|
|
75
|
+
has_channel: bool
|
|
76
|
+
channel: types.uint16
|
|
77
|
+
has_major_minor: bool
|
|
78
|
+
major: types.uint16
|
|
79
|
+
minor: types.uint16
|
|
80
|
+
has_tx_power: bool
|
|
81
|
+
tx_power_dbm: types.int8
|
|
82
|
+
has_range: bool
|
|
83
|
+
range_m: types.float32
|
|
84
|
+
has_range_std: bool
|
|
85
|
+
range_std_m: types.float32
|
|
86
|
+
has_aoa_azimuth: bool
|
|
87
|
+
aoa_azimuth_deg: types.float32
|
|
88
|
+
has_aoa_elevation: bool
|
|
89
|
+
aoa_elevation_deg: types.float32
|
|
90
|
+
has_noise_floor: bool
|
|
91
|
+
noise_floor_dbm: types.float32
|
|
92
|
+
has_measurement_count: bool
|
|
93
|
+
measurement_count: types.uint8
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
@dataclass
|
|
97
|
+
@annotate.appendable
|
|
98
|
+
@annotate.autoid("sequential")
|
|
99
|
+
class RadioScan(idl.IdlStruct, typename="spatial.sensing.radio.RadioScan"):
|
|
100
|
+
sensor_id: str
|
|
101
|
+
annotate.key("sensor_id")
|
|
102
|
+
radio_type: 'spatialdds_idl18.spatial.sensing.radio.RadioType'
|
|
103
|
+
scan_seq: types.uint64
|
|
104
|
+
stamp: 'spatialdds_idl18.spatial.sensing.radio.Time'
|
|
105
|
+
has_scan_duration: bool
|
|
106
|
+
scan_duration_s: types.float32
|
|
107
|
+
observations: types.sequence['spatialdds_idl18.spatial.sensing.radio.RadioObservation', 256]
|
|
108
|
+
has_aggregation_window: bool
|
|
109
|
+
aggregation_window_s: types.float32
|
|
110
|
+
source_id: str
|
|
111
|
+
has_sensor_pose: bool
|
|
112
|
+
sensor_pose: 'spatialdds_idl18.spatial.sensing.radio.PoseSE3'
|
|
113
|
+
pose_frame_ref: 'spatialdds_idl18.spatial.sensing.radio.FrameRef'
|
|
114
|
+
schema_version: str
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
@dataclass
|
|
118
|
+
@annotate.appendable
|
|
119
|
+
@annotate.autoid("sequential")
|
|
120
|
+
class RadioSensorMeta(idl.IdlStruct, typename="spatial.sensing.radio.RadioSensorMeta"):
|
|
121
|
+
sensor_id: str
|
|
122
|
+
annotate.key("sensor_id")
|
|
123
|
+
base: 'spatialdds_idl18.spatial.sensing.radio.StreamMeta'
|
|
124
|
+
radio_type: 'spatialdds_idl18.spatial.sensing.radio.RadioType'
|
|
125
|
+
has_rssi: bool
|
|
126
|
+
has_rtt: bool
|
|
127
|
+
has_aoa: bool
|
|
128
|
+
has_csi: bool
|
|
129
|
+
has_wifi_bands: bool
|
|
130
|
+
supported_bands: types.sequence['spatialdds_idl18.spatial.sensing.radio.WifiBand', 4]
|
|
131
|
+
has_ble_version: bool
|
|
132
|
+
ble_version: str
|
|
133
|
+
device_model: str
|
|
134
|
+
platform: str
|
|
135
|
+
has_max_observations: bool
|
|
136
|
+
max_observations: types.uint16
|
|
137
|
+
has_typical_scan_duration: bool
|
|
138
|
+
typical_scan_duration_s: types.float32
|
|
139
|
+
schema_version: str
|
|
140
|
+
|
|
141
|
+
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.sensing.rf_beam
|
|
5
|
+
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from ._rf_beam import BeamSweepType, BlobRef, Codec, FrameHeader, FrameQuality, FrameRef, MODULE_ID, PoseSE3, PowerUnit, RfBeamArraySet, RfBeamFrame, RfBeamMeta, SampleType, StreamMeta, Time
|
|
9
|
+
__all__ = [
|
|
10
|
+
"BeamSweepType",
|
|
11
|
+
"BlobRef",
|
|
12
|
+
"Codec",
|
|
13
|
+
"FrameHeader",
|
|
14
|
+
"FrameQuality",
|
|
15
|
+
"FrameRef",
|
|
16
|
+
"MODULE_ID",
|
|
17
|
+
"PoseSE3",
|
|
18
|
+
"PowerUnit",
|
|
19
|
+
"RfBeamArraySet",
|
|
20
|
+
"RfBeamFrame",
|
|
21
|
+
"RfBeamMeta",
|
|
22
|
+
"SampleType",
|
|
23
|
+
"StreamMeta",
|
|
24
|
+
"Time",
|
|
25
|
+
]
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.sensing.rf_beam
|
|
5
|
+
IDL file: rf_beam.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.rf_beam/1.8"
|
|
31
|
+
Time = types.typedef['spatialdds_idl18.spatial.sensing.rf_beam.Time', 'spatialdds_idl18.builtin.Time']
|
|
32
|
+
PoseSE3 = types.typedef['spatialdds_idl18.spatial.sensing.rf_beam.PoseSE3', 'spatialdds_idl18.spatial.core.PoseSE3']
|
|
33
|
+
BlobRef = types.typedef['spatialdds_idl18.spatial.sensing.rf_beam.BlobRef', 'spatialdds_idl18.spatial.core.BlobRef']
|
|
34
|
+
FrameRef = types.typedef['spatialdds_idl18.spatial.sensing.rf_beam.FrameRef', 'spatialdds_idl18.spatial.common.FrameRef']
|
|
35
|
+
StreamMeta = types.typedef['spatialdds_idl18.spatial.sensing.rf_beam.StreamMeta', 'spatialdds_idl18.spatial.sensing.common.StreamMeta']
|
|
36
|
+
FrameHeader = types.typedef['spatialdds_idl18.spatial.sensing.rf_beam.FrameHeader', 'spatialdds_idl18.spatial.sensing.common.FrameHeader']
|
|
37
|
+
FrameQuality = types.typedef['spatialdds_idl18.spatial.sensing.rf_beam.FrameQuality', 'spatialdds_idl18.spatial.sensing.common.FrameQuality']
|
|
38
|
+
Codec = types.typedef['spatialdds_idl18.spatial.sensing.rf_beam.Codec', 'spatialdds_idl18.spatial.sensing.common.Codec']
|
|
39
|
+
SampleType = types.typedef['spatialdds_idl18.spatial.sensing.rf_beam.SampleType', 'spatialdds_idl18.spatial.sensing.common.SampleType']
|
|
40
|
+
@annotate.final
|
|
41
|
+
class BeamSweepType(idl.IdlEnum, typename="spatial.sensing.rf_beam.BeamSweepType", default="EXHAUSTIVE"):
|
|
42
|
+
EXHAUSTIVE = 0
|
|
43
|
+
HIERARCHICAL = 1
|
|
44
|
+
TRACKING = 2
|
|
45
|
+
PARTIAL = 3
|
|
46
|
+
OTHER = 255
|
|
47
|
+
@annotate.final
|
|
48
|
+
class PowerUnit(idl.IdlEnum, typename="spatial.sensing.rf_beam.PowerUnit", default="DBM"):
|
|
49
|
+
DBM = 0
|
|
50
|
+
LINEAR_MW = 1
|
|
51
|
+
RSRP = 2
|
|
52
|
+
OTHER_UNIT = 255
|
|
53
|
+
|
|
54
|
+
@dataclass
|
|
55
|
+
@annotate.appendable
|
|
56
|
+
@annotate.autoid("sequential")
|
|
57
|
+
class RfBeamMeta(idl.IdlStruct, typename="spatial.sensing.rf_beam.RfBeamMeta"):
|
|
58
|
+
stream_id: str
|
|
59
|
+
annotate.key("stream_id")
|
|
60
|
+
base: 'spatialdds_idl18.spatial.sensing.rf_beam.StreamMeta'
|
|
61
|
+
center_freq_ghz: types.float32
|
|
62
|
+
has_bandwidth: bool
|
|
63
|
+
bandwidth_ghz: types.float32
|
|
64
|
+
n_elements: types.uint16
|
|
65
|
+
n_beams: types.uint16
|
|
66
|
+
fov_az_deg: types.float32
|
|
67
|
+
has_fov_el: bool
|
|
68
|
+
fov_el_deg: types.float32
|
|
69
|
+
has_array_index: bool
|
|
70
|
+
array_index: types.uint8
|
|
71
|
+
array_label: str
|
|
72
|
+
codebook_type: str
|
|
73
|
+
has_mimo_config: bool
|
|
74
|
+
n_tx: types.uint16
|
|
75
|
+
n_rx: types.uint16
|
|
76
|
+
power_unit: 'spatialdds_idl18.spatial.sensing.rf_beam.PowerUnit'
|
|
77
|
+
schema_version: str
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
@dataclass
|
|
81
|
+
@annotate.appendable
|
|
82
|
+
@annotate.autoid("sequential")
|
|
83
|
+
class RfBeamFrame(idl.IdlStruct, typename="spatial.sensing.rf_beam.RfBeamFrame"):
|
|
84
|
+
stream_id: str
|
|
85
|
+
annotate.key("stream_id")
|
|
86
|
+
frame_seq: types.uint64
|
|
87
|
+
hdr: 'spatialdds_idl18.spatial.sensing.rf_beam.FrameHeader'
|
|
88
|
+
sweep_type: 'spatialdds_idl18.spatial.sensing.rf_beam.BeamSweepType'
|
|
89
|
+
power: types.sequence[types.float32, 1024]
|
|
90
|
+
beam_indices: types.sequence[types.uint16, 1024]
|
|
91
|
+
has_best_beam: bool
|
|
92
|
+
best_beam_idx: types.uint16
|
|
93
|
+
best_beam_power: types.float32
|
|
94
|
+
has_blockage_state: bool
|
|
95
|
+
is_blocked: bool
|
|
96
|
+
blockage_confidence: types.float32
|
|
97
|
+
has_snr_db: bool
|
|
98
|
+
snr_db: types.float32
|
|
99
|
+
has_quality: bool
|
|
100
|
+
quality: 'spatialdds_idl18.spatial.sensing.rf_beam.FrameQuality'
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
@dataclass
|
|
104
|
+
@annotate.appendable
|
|
105
|
+
@annotate.autoid("sequential")
|
|
106
|
+
class RfBeamArraySet(idl.IdlStruct, typename="spatial.sensing.rf_beam.RfBeamArraySet"):
|
|
107
|
+
set_id: str
|
|
108
|
+
annotate.key("set_id")
|
|
109
|
+
frame_seq: types.uint64
|
|
110
|
+
stamp: 'spatialdds_idl18.spatial.sensing.rf_beam.Time'
|
|
111
|
+
arrays: types.sequence['spatialdds_idl18.spatial.sensing.rf_beam.RfBeamFrame', 8]
|
|
112
|
+
has_overall_best: bool
|
|
113
|
+
overall_best_array_idx: types.uint16
|
|
114
|
+
overall_best_beam_idx: types.uint16
|
|
115
|
+
overall_best_power: types.float32
|
|
116
|
+
|
|
117
|
+
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.sensing.vision
|
|
5
|
+
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from ._vision import Axis, BlobRef, CamIntrinsics, CamModel, Codec, ColorSpace, Distortion, FrameHeader, FrameQuality, FrameRef, Keypoint2D, MODULE_ID, PayloadKind, PixFormat, PoseSE3, ROI, ROIReply, ROIRequest, RigRole, SampleType, StreamMeta, Time, Track2D, VisionDetections, VisionFrame, VisionMeta
|
|
9
|
+
__all__ = [
|
|
10
|
+
"Axis",
|
|
11
|
+
"BlobRef",
|
|
12
|
+
"CamIntrinsics",
|
|
13
|
+
"CamModel",
|
|
14
|
+
"Codec",
|
|
15
|
+
"ColorSpace",
|
|
16
|
+
"Distortion",
|
|
17
|
+
"FrameHeader",
|
|
18
|
+
"FrameQuality",
|
|
19
|
+
"FrameRef",
|
|
20
|
+
"Keypoint2D",
|
|
21
|
+
"MODULE_ID",
|
|
22
|
+
"PayloadKind",
|
|
23
|
+
"PixFormat",
|
|
24
|
+
"PoseSE3",
|
|
25
|
+
"ROI",
|
|
26
|
+
"ROIReply",
|
|
27
|
+
"ROIRequest",
|
|
28
|
+
"RigRole",
|
|
29
|
+
"SampleType",
|
|
30
|
+
"StreamMeta",
|
|
31
|
+
"Time",
|
|
32
|
+
"Track2D",
|
|
33
|
+
"VisionDetections",
|
|
34
|
+
"VisionFrame",
|
|
35
|
+
"VisionMeta",
|
|
36
|
+
]
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.sensing.vision
|
|
5
|
+
IDL file: vision.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.vision/1.8"
|
|
31
|
+
Time = types.typedef['spatialdds_idl18.spatial.sensing.vision.Time', 'spatialdds_idl18.builtin.Time']
|
|
32
|
+
PoseSE3 = types.typedef['spatialdds_idl18.spatial.sensing.vision.PoseSE3', 'spatialdds_idl18.spatial.core.PoseSE3']
|
|
33
|
+
BlobRef = types.typedef['spatialdds_idl18.spatial.sensing.vision.BlobRef', 'spatialdds_idl18.spatial.core.BlobRef']
|
|
34
|
+
FrameRef = types.typedef['spatialdds_idl18.spatial.sensing.vision.FrameRef', 'spatialdds_idl18.spatial.common.FrameRef']
|
|
35
|
+
Codec = types.typedef['spatialdds_idl18.spatial.sensing.vision.Codec', 'spatialdds_idl18.spatial.sensing.common.Codec']
|
|
36
|
+
PayloadKind = types.typedef['spatialdds_idl18.spatial.sensing.vision.PayloadKind', 'spatialdds_idl18.spatial.sensing.common.PayloadKind']
|
|
37
|
+
SampleType = types.typedef['spatialdds_idl18.spatial.sensing.vision.SampleType', 'spatialdds_idl18.spatial.sensing.common.SampleType']
|
|
38
|
+
Axis = types.typedef['spatialdds_idl18.spatial.sensing.vision.Axis', 'spatialdds_idl18.spatial.sensing.common.Axis']
|
|
39
|
+
ROI = types.typedef['spatialdds_idl18.spatial.sensing.vision.ROI', 'spatialdds_idl18.spatial.sensing.common.ROI']
|
|
40
|
+
StreamMeta = types.typedef['spatialdds_idl18.spatial.sensing.vision.StreamMeta', 'spatialdds_idl18.spatial.sensing.common.StreamMeta']
|
|
41
|
+
FrameHeader = types.typedef['spatialdds_idl18.spatial.sensing.vision.FrameHeader', 'spatialdds_idl18.spatial.sensing.common.FrameHeader']
|
|
42
|
+
FrameQuality = types.typedef['spatialdds_idl18.spatial.sensing.vision.FrameQuality', 'spatialdds_idl18.spatial.sensing.common.FrameQuality']
|
|
43
|
+
ROIRequest = types.typedef['spatialdds_idl18.spatial.sensing.vision.ROIRequest', 'spatialdds_idl18.spatial.sensing.common.ROIRequest']
|
|
44
|
+
ROIReply = types.typedef['spatialdds_idl18.spatial.sensing.vision.ROIReply', 'spatialdds_idl18.spatial.sensing.common.ROIReply']
|
|
45
|
+
@annotate.final
|
|
46
|
+
class CamModel(idl.IdlEnum, typename="spatial.sensing.vision.CamModel", default="PINHOLE"):
|
|
47
|
+
PINHOLE = 0
|
|
48
|
+
FISHEYE_EQUIDISTANT = 1
|
|
49
|
+
KB_4 = 2
|
|
50
|
+
OMNI = 3
|
|
51
|
+
@annotate.final
|
|
52
|
+
class Distortion(idl.IdlEnum, typename="spatial.sensing.vision.Distortion", default="NONE"):
|
|
53
|
+
NONE = 0
|
|
54
|
+
RADTAN = 1
|
|
55
|
+
KANNALA_BRANDT = 2
|
|
56
|
+
@annotate.final
|
|
57
|
+
class PixFormat(idl.IdlEnum, typename="spatial.sensing.vision.PixFormat", default="UNKNOWN"):
|
|
58
|
+
UNKNOWN = 0
|
|
59
|
+
YUV420 = 1
|
|
60
|
+
RGB8 = 2
|
|
61
|
+
BGR8 = 3
|
|
62
|
+
RGBA8 = 4
|
|
63
|
+
DEPTH16 = 5
|
|
64
|
+
RAW10 = 10
|
|
65
|
+
RAW12 = 12
|
|
66
|
+
RAW16 = 16
|
|
67
|
+
@annotate.final
|
|
68
|
+
class ColorSpace(idl.IdlEnum, typename="spatial.sensing.vision.ColorSpace", default="SRGB"):
|
|
69
|
+
SRGB = 0
|
|
70
|
+
REC709 = 1
|
|
71
|
+
REC2020 = 2
|
|
72
|
+
LINEAR = 10
|
|
73
|
+
@annotate.final
|
|
74
|
+
class RigRole(idl.IdlEnum, typename="spatial.sensing.vision.RigRole", default="LEFT"):
|
|
75
|
+
LEFT = 0
|
|
76
|
+
RIGHT = 1
|
|
77
|
+
CENTER = 2
|
|
78
|
+
FRONT = 3
|
|
79
|
+
FRONT_LEFT = 4
|
|
80
|
+
FRONT_RIGHT = 5
|
|
81
|
+
BACK = 6
|
|
82
|
+
BACK_LEFT = 7
|
|
83
|
+
BACK_RIGHT = 8
|
|
84
|
+
AUX = 9
|
|
85
|
+
PANORAMIC = 10
|
|
86
|
+
EQUIRECTANGULAR = 11
|
|
87
|
+
|
|
88
|
+
@dataclass
|
|
89
|
+
@annotate.appendable
|
|
90
|
+
@annotate.autoid("sequential")
|
|
91
|
+
class CamIntrinsics(idl.IdlStruct, typename="spatial.sensing.vision.CamIntrinsics"):
|
|
92
|
+
model: 'spatialdds_idl18.spatial.sensing.vision.CamModel'
|
|
93
|
+
width: types.uint16
|
|
94
|
+
height: types.uint16
|
|
95
|
+
fx: types.float32
|
|
96
|
+
fy: types.float32
|
|
97
|
+
cx: types.float32
|
|
98
|
+
cy: types.float32
|
|
99
|
+
dist: 'spatialdds_idl18.spatial.sensing.vision.Distortion'
|
|
100
|
+
dist_params: types.sequence[types.float32, 16]
|
|
101
|
+
shutter_us: types.float32
|
|
102
|
+
readout_us: types.float32
|
|
103
|
+
pix: 'spatialdds_idl18.spatial.sensing.vision.PixFormat'
|
|
104
|
+
color: 'spatialdds_idl18.spatial.sensing.vision.ColorSpace'
|
|
105
|
+
calib_version: str
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
@dataclass
|
|
109
|
+
@annotate.appendable
|
|
110
|
+
@annotate.autoid("sequential")
|
|
111
|
+
class VisionMeta(idl.IdlStruct, typename="spatial.sensing.vision.VisionMeta"):
|
|
112
|
+
stream_id: str
|
|
113
|
+
annotate.key("stream_id")
|
|
114
|
+
base: 'spatialdds_idl18.spatial.sensing.vision.StreamMeta'
|
|
115
|
+
K: 'spatialdds_idl18.spatial.sensing.vision.CamIntrinsics'
|
|
116
|
+
role: 'spatialdds_idl18.spatial.sensing.vision.RigRole'
|
|
117
|
+
rig_id: str
|
|
118
|
+
codec: 'spatialdds_idl18.spatial.sensing.vision.Codec'
|
|
119
|
+
pix: 'spatialdds_idl18.spatial.sensing.vision.PixFormat'
|
|
120
|
+
color: 'spatialdds_idl18.spatial.sensing.vision.ColorSpace'
|
|
121
|
+
schema_version: str
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
@dataclass
|
|
125
|
+
@annotate.appendable
|
|
126
|
+
@annotate.autoid("sequential")
|
|
127
|
+
class VisionFrame(idl.IdlStruct, typename="spatial.sensing.vision.VisionFrame"):
|
|
128
|
+
stream_id: str
|
|
129
|
+
annotate.key("stream_id")
|
|
130
|
+
frame_seq: types.uint64
|
|
131
|
+
hdr: 'spatialdds_idl18.spatial.sensing.vision.FrameHeader'
|
|
132
|
+
codec: 'spatialdds_idl18.spatial.sensing.vision.Codec'
|
|
133
|
+
pix: 'spatialdds_idl18.spatial.sensing.vision.PixFormat'
|
|
134
|
+
color: 'spatialdds_idl18.spatial.sensing.vision.ColorSpace'
|
|
135
|
+
has_line_readout_us: bool
|
|
136
|
+
line_readout_us: types.float32
|
|
137
|
+
rectified: bool
|
|
138
|
+
is_key_frame: bool
|
|
139
|
+
quality: 'spatialdds_idl18.spatial.sensing.vision.FrameQuality'
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
@dataclass
|
|
143
|
+
@annotate.appendable
|
|
144
|
+
@annotate.autoid("sequential")
|
|
145
|
+
class Keypoint2D(idl.IdlStruct, typename="spatial.sensing.vision.Keypoint2D"):
|
|
146
|
+
u: types.float32
|
|
147
|
+
v: types.float32
|
|
148
|
+
score: types.float32
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
@dataclass
|
|
152
|
+
@annotate.appendable
|
|
153
|
+
@annotate.autoid("sequential")
|
|
154
|
+
class Track2D(idl.IdlStruct, typename="spatial.sensing.vision.Track2D"):
|
|
155
|
+
id: types.uint64
|
|
156
|
+
trail: types.sequence['spatialdds_idl18.spatial.sensing.vision.Keypoint2D', 8192]
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
@dataclass
|
|
160
|
+
@annotate.appendable
|
|
161
|
+
@annotate.autoid("sequential")
|
|
162
|
+
class VisionDetections(idl.IdlStruct, typename="spatial.sensing.vision.VisionDetections"):
|
|
163
|
+
stream_id: str
|
|
164
|
+
annotate.key("stream_id")
|
|
165
|
+
frame_seq: types.uint64
|
|
166
|
+
stamp: 'spatialdds_idl18.spatial.sensing.vision.Time'
|
|
167
|
+
keypoints: types.sequence['spatialdds_idl18.spatial.sensing.vision.Keypoint2D', 8192]
|
|
168
|
+
tracks: types.sequence['spatialdds_idl18.spatial.sensing.vision.Track2D', 2048]
|
|
169
|
+
|
|
170
|
+
|
|
@@ -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.slam_frontend
|
|
5
|
+
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from ._slam_frontend import CameraInfo, DistortionModelKind, Feature2D, FeatureMatch, FrameRef, KeyframeFeatures, Landmark, MODULE_ID, MatchSet, Time, TrackObs, Tracklet
|
|
9
|
+
__all__ = [
|
|
10
|
+
"CameraInfo",
|
|
11
|
+
"DistortionModelKind",
|
|
12
|
+
"Feature2D",
|
|
13
|
+
"FeatureMatch",
|
|
14
|
+
"FrameRef",
|
|
15
|
+
"KeyframeFeatures",
|
|
16
|
+
"Landmark",
|
|
17
|
+
"MODULE_ID",
|
|
18
|
+
"MatchSet",
|
|
19
|
+
"Time",
|
|
20
|
+
"TrackObs",
|
|
21
|
+
"Tracklet",
|
|
22
|
+
]
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.slam_frontend
|
|
5
|
+
IDL file: slam_frontend.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
|
+
|
|
27
|
+
|
|
28
|
+
MODULE_ID = "spatial.slam_frontend/1.8"
|
|
29
|
+
Time = types.typedef['spatialdds_idl18.spatial.slam_frontend.Time', 'spatialdds_idl18.builtin.Time']
|
|
30
|
+
FrameRef = types.typedef['spatialdds_idl18.spatial.slam_frontend.FrameRef', 'spatialdds_idl18.spatial.common.FrameRef']
|
|
31
|
+
@annotate.final
|
|
32
|
+
class DistortionModelKind(idl.IdlEnum, typename="spatial.slam_frontend.DistortionModelKind", default="NONE"):
|
|
33
|
+
NONE = 0
|
|
34
|
+
RADTAN = 1
|
|
35
|
+
EQUIDISTANT = 2
|
|
36
|
+
KANNALA_BRANDT = 3
|
|
37
|
+
|
|
38
|
+
@dataclass
|
|
39
|
+
@annotate.appendable
|
|
40
|
+
@annotate.autoid("sequential")
|
|
41
|
+
class CameraInfo(idl.IdlStruct, typename="spatial.slam_frontend.CameraInfo"):
|
|
42
|
+
camera_id: str
|
|
43
|
+
annotate.key("camera_id")
|
|
44
|
+
width: types.uint32
|
|
45
|
+
height: types.uint32
|
|
46
|
+
fx: types.float64
|
|
47
|
+
fy: types.float64
|
|
48
|
+
cx: types.float64
|
|
49
|
+
cy: types.float64
|
|
50
|
+
dist_kind: 'spatialdds_idl18.spatial.slam_frontend.DistortionModelKind'
|
|
51
|
+
dist: types.sequence[types.float64, 8]
|
|
52
|
+
frame_ref: 'spatialdds_idl18.spatial.slam_frontend.FrameRef'
|
|
53
|
+
stamp: 'spatialdds_idl18.spatial.slam_frontend.Time'
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
@dataclass
|
|
57
|
+
@annotate.appendable
|
|
58
|
+
@annotate.autoid("sequential")
|
|
59
|
+
class Feature2D(idl.IdlStruct, typename="spatial.slam_frontend.Feature2D"):
|
|
60
|
+
u: types.float64
|
|
61
|
+
v: types.float64
|
|
62
|
+
scale: types.float32
|
|
63
|
+
angle: types.float32
|
|
64
|
+
score: types.float32
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
@dataclass
|
|
68
|
+
@annotate.appendable
|
|
69
|
+
@annotate.autoid("sequential")
|
|
70
|
+
class KeyframeFeatures(idl.IdlStruct, typename="spatial.slam_frontend.KeyframeFeatures"):
|
|
71
|
+
node_id: str
|
|
72
|
+
annotate.key("node_id")
|
|
73
|
+
camera_id: str
|
|
74
|
+
desc_type: str
|
|
75
|
+
desc_len: types.uint32
|
|
76
|
+
row_major: bool
|
|
77
|
+
keypoints: types.sequence['spatialdds_idl18.spatial.slam_frontend.Feature2D', 4096]
|
|
78
|
+
descriptors: types.sequence[types.uint8, 65535]
|
|
79
|
+
stamp: 'spatialdds_idl18.spatial.slam_frontend.Time'
|
|
80
|
+
source_id: str
|
|
81
|
+
seq: types.uint64
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
@dataclass
|
|
85
|
+
@annotate.appendable
|
|
86
|
+
@annotate.autoid("sequential")
|
|
87
|
+
class FeatureMatch(idl.IdlStruct, typename="spatial.slam_frontend.FeatureMatch"):
|
|
88
|
+
node_id_a: str
|
|
89
|
+
idx_a: types.uint32
|
|
90
|
+
node_id_b: str
|
|
91
|
+
idx_b: types.uint32
|
|
92
|
+
score: types.float32
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
@dataclass
|
|
96
|
+
@annotate.appendable
|
|
97
|
+
@annotate.autoid("sequential")
|
|
98
|
+
class MatchSet(idl.IdlStruct, typename="spatial.slam_frontend.MatchSet"):
|
|
99
|
+
match_id: str
|
|
100
|
+
annotate.key("match_id")
|
|
101
|
+
matches: types.sequence['spatialdds_idl18.spatial.slam_frontend.FeatureMatch', 8192]
|
|
102
|
+
stamp: 'spatialdds_idl18.spatial.slam_frontend.Time'
|
|
103
|
+
source_id: str
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
@dataclass
|
|
107
|
+
@annotate.appendable
|
|
108
|
+
@annotate.autoid("sequential")
|
|
109
|
+
class Landmark(idl.IdlStruct, typename="spatial.slam_frontend.Landmark"):
|
|
110
|
+
lm_id: str
|
|
111
|
+
annotate.key("lm_id")
|
|
112
|
+
map_id: str
|
|
113
|
+
p: 'spatialdds_idl18.spatial.common.Vec3'
|
|
114
|
+
has_cov: bool
|
|
115
|
+
cov: 'spatialdds_idl18.spatial.common.Mat3x3'
|
|
116
|
+
desc: types.sequence[types.uint8, 4096]
|
|
117
|
+
desc_type: str
|
|
118
|
+
stamp: 'spatialdds_idl18.spatial.slam_frontend.Time'
|
|
119
|
+
source_id: str
|
|
120
|
+
seq: types.uint64
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
@dataclass
|
|
124
|
+
@annotate.appendable
|
|
125
|
+
@annotate.autoid("sequential")
|
|
126
|
+
class TrackObs(idl.IdlStruct, typename="spatial.slam_frontend.TrackObs"):
|
|
127
|
+
node_id: str
|
|
128
|
+
u: types.float64
|
|
129
|
+
v: types.float64
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
@dataclass
|
|
133
|
+
@annotate.appendable
|
|
134
|
+
@annotate.autoid("sequential")
|
|
135
|
+
class Tracklet(idl.IdlStruct, typename="spatial.slam_frontend.Tracklet"):
|
|
136
|
+
track_id: str
|
|
137
|
+
annotate.key("track_id")
|
|
138
|
+
has_lm_id: bool
|
|
139
|
+
lm_id: str
|
|
140
|
+
obs: types.sequence['spatialdds_idl18.spatial.slam_frontend.TrackObs', 64]
|
|
141
|
+
source_id: str
|
|
142
|
+
stamp: 'spatialdds_idl18.spatial.slam_frontend.Time'
|
|
143
|
+
|
|
144
|
+
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by Eclipse Cyclone DDS idlc Python Backend
|
|
3
|
+
Cyclone DDS IDL version: v11.0.1
|
|
4
|
+
Module: spatial.vio
|
|
5
|
+
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from ._vio import FrameRef, FusedState, FusionMode, FusionSourceKind, ImuInfo, ImuSample, MODULE_ID, MagnetometerSample, SensorFusionSample, Time
|
|
9
|
+
__all__ = [
|
|
10
|
+
"FrameRef",
|
|
11
|
+
"FusedState",
|
|
12
|
+
"FusionMode",
|
|
13
|
+
"FusionSourceKind",
|
|
14
|
+
"ImuInfo",
|
|
15
|
+
"ImuSample",
|
|
16
|
+
"MODULE_ID",
|
|
17
|
+
"MagnetometerSample",
|
|
18
|
+
"SensorFusionSample",
|
|
19
|
+
"Time",
|
|
20
|
+
]
|