isar 1.11.0__py3-none-any.whl → 1.12.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.

Potentially problematic release.


This version of isar might be problematic. Click here for more details.

@@ -1,24 +1,24 @@
1
1
  isar/__init__.py,sha256=oXTcQpZYQ7jkRIem-Nq3hw9DrveoIV3-8k697XN16rA,190
2
- isar/modules.py,sha256=Xxq32P6oyxm3Vvo7AWnpPOHwxE2tCR62E7A0rJqso4g,6998
2
+ isar/modules.py,sha256=eA4n9_CZ29H7Bt7L3G8ttDLH42WX98dJVtIPHgOeVEI,7041
3
3
  isar/apis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
- isar/apis/api.py,sha256=nMBDxSXrVK77FBEms0GEiiK9PUTCz7DrpTGI9ulPEYM,9103
4
+ isar/apis/api.py,sha256=rLoqA8YXGpZCsQMm3FGXgt9Yfk6_B5Ka6Hsjq02v-D4,11288
5
5
  isar/apis/models/__init__.py,sha256=NI1BYyN__Ogr00Qqe0XJ-9gEVPva2brXo2RJsbrS4tM,52
6
6
  isar/apis/models/models.py,sha256=5LiQWnrlHswRlwbTnIp_RpOfbZ6lFSic7E8XWaoIodk,2212
7
- isar/apis/models/start_mission_definition.py,sha256=PnoIGSRGovUg2JFn9f0gF1gfMSQUz06kRFEvxfkdhjI,3175
7
+ isar/apis/models/start_mission_definition.py,sha256=o_jObQ2Gbr_2uRJ3Lz6CNgPUfUW1y94XBZvBItBGo40,3325
8
8
  isar/apis/schedule/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
9
  isar/apis/schedule/scheduling_controller.py,sha256=PjfHBKw70rpAe1tRkhQn6kVpL2-nC8SLkDn3MGT32dA,8451
10
10
  isar/apis/security/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- isar/apis/security/authentication.py,sha256=5_caIbhylz0a8_U1dfEZhj_o9VbSSFYgqzwU5otQmow,2087
11
+ isar/apis/security/authentication.py,sha256=sn3MgFJEevkBIOHl1nFfFzwZOzdL0jNA4RvHryQ2n8Q,2088
12
12
  isar/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
13
  isar/config/configuration_error.py,sha256=rO6WOhafX6xvVib8WxV-eY483Z0PpN-9PxGsq5ATfKc,46
14
- isar/config/log.py,sha256=ZUtmKcnCK-yP56aPSlK8snmYYFvf_2N70sIrl7W7tOo,926
14
+ isar/config/log.py,sha256=gXbzb4KvxVOD2dVkkTWttQ8w271lEkRd174CeRJ6H8M,2225
15
15
  isar/config/logging.conf,sha256=mYO1xf27gAopEMHhGzY7-mwyfN16rwRLkPNMvy3zn2g,1127
16
- isar/config/settings.env,sha256=UHzCZ1AyvZZdCcIIwQ4LYqJ3kQlt4b5W-NyLSaEByOY,428
17
- isar/config/settings.py,sha256=NPayONNA6utXCaaKrudDNbnQYPmhQbly7-QDZxNz_aw,11513
16
+ isar/config/settings.env,sha256=aG2CAnXzxsZJhxhgx8pCa11clFtkIsXiTxc2FgXZwuw,553
17
+ isar/config/settings.py,sha256=qlpeOqBptgqqzI-hD8beCdTrAvGANjg5cKtRpxKUkcY,12050
18
18
  isar/config/certs/ca-cert.pem,sha256=6XnTSkRxSb9slwXSCWxL4tjeNBprgDzPpEhBraL9RDU,2163
19
19
  isar/config/keyvault/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
20
  isar/config/keyvault/keyvault_error.py,sha256=zvPCsZLjboxsxthYkxpRERCTFxYV8R5WmACewAUQLwk,41
21
- isar/config/keyvault/keyvault_service.py,sha256=7m3vhquSnQjtXmNiXZg4xWKLktcGCFldM3q6YkkbQEM,2662
21
+ isar/config/keyvault/keyvault_service.py,sha256=7M6VdIElAQ_yo0d-VX4i9cqgoH_JIexoRmqS5YGIb2Y,3141
22
22
  isar/config/maps/JSP1_intermediate_deck.json,sha256=fdotzN6MVotyLbqpIjRSrbBYM84vogLkdS585NjBnL8,826
23
23
  isar/config/maps/JSP1_weather_deck.json,sha256=_dG3cSBI8q4_uHqHMOO5kSYqMXn85JL3_9PaH4uk1yQ,832
24
24
  isar/config/maps/default_map.json,sha256=3CdGMr0Qn3PrL4TfUK8I5a-hotMrS_n5DKfaEORJPT4,776
@@ -26,13 +26,16 @@ isar/config/maps/klab_b.json,sha256=qXgWVUYPaTdVuomf6lQL-uRbV3Tsa6CftnzcbT3dY78,
26
26
  isar/config/maps/klab_compressor.json,sha256=1Vrk5u_l4WXjrTtG4YfXlrCPbOoRs4TtYHOm0430u2A,803
27
27
  isar/config/maps/klab_turtlebot.json,sha256=HcB79XFEdY0Wm96EssIFO4TMyAWzc2KENoqN7TbTT0k,823
28
28
  isar/config/maps/turtleworld.json,sha256=EKLMpSK9Gu2lAN-E9l41XOaO3f9Su5n_I97mA6z7sWY,764
29
+ isar/config/predefined_mission_definition/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
30
+ isar/config/predefined_mission_definition/default_mission.json,sha256=i-sjgVRDcXKh2Lx-tauxBI3xLxLAuut_73wmLuYNgNc,3130
31
+ isar/config/predefined_mission_definition/default_turtlebot.json,sha256=tiXgBbE1XOT6G6UR07WChEVvj-Y9oB1qn8VBc8q3ang,4410
29
32
  isar/config/predefined_missions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
30
- isar/config/predefined_missions/default.json,sha256=faNUHXx4g_c8uvyMe7HIsmeFVgnShA_UKbFldROKlQw,1807
33
+ isar/config/predefined_missions/default.json,sha256=mRjW4kREfo-KL1LoYU_MN400tYOR8jaLZQvGE5uiqe0,2757
31
34
  isar/config/predefined_missions/default_turtlebot.json,sha256=3w-w2EXPd3AnJ7W1bjid0QrIZ6o_-QAy4beimHr2ivc,3350
32
35
  isar/config/predefined_poses/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
36
  isar/config/predefined_poses/predefined_poses.py,sha256=fhq8JF00feDLFKNBlyWeFoLfvfs5dVb__C7CmiVbwmQ,25779
34
37
  isar/mission_planner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
- isar/mission_planner/echo_planner.py,sha256=28doIA9kgvauWAspSxnbzZgFvlvc1fzgiLgutsYBw90,5680
38
+ isar/mission_planner/echo_planner.py,sha256=xavICAZJYfnZqwAB_bTtRge_QMwrZ8H-JZPw1pZ1sSY,5674
36
39
  isar/mission_planner/local_planner.py,sha256=QGJ3PNea6z0A0XsDfF8qm9O1H8n6xWYWeQLuB9l4_74,3067
37
40
  isar/mission_planner/mission_planner_interface.py,sha256=5zmwtLAmtnfaQLsvx9o0Qy1YqWBZ2NVnUCV_XkTg1cE,466
38
41
  isar/mission_planner/sequential_task_selector.py,sha256=DkEVDmmmQ-bCswN21tJlmxocj6IURhsYWNZ73dmc_Hk,624
@@ -47,16 +50,16 @@ isar/models/communication/queues/queues.py,sha256=FzoqlT4AQ4Q5Jufh6yRPV2uq5iUZd1
47
50
  isar/models/communication/queues/status_queue.py,sha256=K_i01uzCu1eciDt9QlDXLBINJnuRLqm6fzrM-PY6qD0,467
48
51
  isar/models/mission/__init__.py,sha256=OQMLlRLJl5QIPrCtUi3trGtoy_2vSqeL_aaI_JJPQ7M,81
49
52
  isar/models/mission/mission.py,sha256=k4pJuUFwxB5JfUiPYgkskUJmd7ROOnzkdZ_p0mUc-uo,4533
50
- isar/models/mission/status.py,sha256=UTa8_0OtiZTmQ6sj7pNKZJ2bAnNgQgW1RTovrjdlVZ0,556
53
+ isar/models/mission/status.py,sha256=-vwRX6O_bljR0q7LET8qVY195XTKpniNSiOQ--1STu4,583
51
54
  isar/models/mission_metadata/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
52
- isar/models/mission_metadata/mission_metadata.py,sha256=GFVleJ221ywaaNVwQV2L84WSuKip63flf6V-2zWRBI0,801
55
+ isar/models/mission_metadata/mission_metadata.py,sha256=gsGl68i6lBodJuCn8jvAY33NDQ4ovFgU5wiWqKYCiPY,898
53
56
  isar/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
54
57
  isar/services/auth/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
55
58
  isar/services/auth/azure_credentials.py,sha256=9PlwGe5FrPRbW2dp0go7LMp8_l_FRvL8xOXotXwzRDo,364
56
59
  isar/services/readers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
57
60
  isar/services/readers/base_reader.py,sha256=_fNd5fb5dFeMtOvfWzIAGO-KIgl3zT19iEuzSjeZNPc,987
58
61
  isar/services/service_connections/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
- isar/services/service_connections/request_handler.py,sha256=L3kmbnL1d5CHWOtrZHxhJYzitNjeE__3hL378rvhrLk,4249
62
+ isar/services/service_connections/request_handler.py,sha256=0LxC0lu_HXeEf_xmJWjfEsh14oAUI97cpG1IWtBlcs4,4278
60
63
  isar/services/service_connections/mqtt/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
61
64
  isar/services/service_connections/mqtt/mqtt_client.py,sha256=g5RJ85_dsZlHgj6saG2w0sTSetvGFWI4PW4zsb0j9DE,3516
62
65
  isar/services/service_connections/mqtt/robot_info_publisher.py,sha256=7g4N1557ZrxnD3dXXbsI6XLvctTLiRmJOvPlEBr2PGk,1226
@@ -68,7 +71,7 @@ isar/services/utilities/queue_utilities.py,sha256=Pw3hehSwkXJNeDv-bDVDfs58VOwtt3
68
71
  isar/services/utilities/scheduling_utilities.py,sha256=6EQ5G9KpBPf2dM6owH3NmxATzZe6I2oUuC7lxs3dKyM,8371
69
72
  isar/services/utilities/threaded_request.py,sha256=py4G-_RjnIdHljmKFAcQ6ddqMmp-ZYV39Ece-dqRqjs,1874
70
73
  isar/state_machine/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
71
- isar/state_machine/state_machine.py,sha256=wG1ecYuO3BZJ4kVyG2-PSG7C_JM-1pQzWbnQ2A1uPk0,19036
74
+ isar/state_machine/state_machine.py,sha256=SSVPxn0OrfKTL3oOzB6RJcULZWVRot_h2UL6js94UOQ,19379
72
75
  isar/state_machine/states_enum.py,sha256=HVg2xjZTbiqdesr0rhwl1nlj97GzgI3YQNAr3O7rcMk,272
73
76
  isar/state_machine/states/__init__.py,sha256=7JdcGIUexNK-7nkm4vkVhgWJqjZ5VDcbc0FkmZr5jfo,207
74
77
  isar/state_machine/states/idle.py,sha256=_0MtK8Wb305agTg4J9t2x-eUq3cnXg3KSP6J6HOM3ps,1229
@@ -81,10 +84,10 @@ isar/state_machine/states/stop_step.py,sha256=nU49HfGHFBSadLCoFn7MYecyR1OytHvDS4
81
84
  isar/storage/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
82
85
  isar/storage/blob_storage.py,sha256=LbOIK1J_rQAq_xbe5wdFSWYmmvUDRmTgEWpVzXkmzDc,2899
83
86
  isar/storage/local_storage.py,sha256=6hgGYI3l-VrHAnNHp8_UT7ANrknHQuAzCNfeic1eVX0,1843
84
- isar/storage/slimm_storage.py,sha256=_pQ9d9pDablpPsb-aemsbSf__jUXjEhzmWHEH31r2GI,5449
87
+ isar/storage/slimm_storage.py,sha256=eOOyeJTitxyACD9WlURsTEym30dnYA7eAR2gplb6JSs,8670
85
88
  isar/storage/storage_interface.py,sha256=GsfTjSW-dJrp4N9WlxopsN7ElMfLnvP5FCJSFfT09vM,741
86
89
  isar/storage/uploader.py,sha256=NNvXYq9RIHf-w8XNdocgNamgzMNrOCfFwAOENi11klE,4719
87
- isar/storage/utilities.py,sha256=UyfFQhJaTIsD77rSelZqXV8jdvgM2jcW6_qizGbghaw,3611
90
+ isar/storage/utilities.py,sha256=k7DmNfB7Een3LQF117UNigkLkdU0VZBBFA-k9CtsxFE,2827
88
91
  robot_interface/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
89
92
  robot_interface/robot_interface.py,sha256=ovOcfzGF3HLNpaI4lm5rOrC4GuqnwvIaJT0_ceRQSVU,4143
90
93
  robot_interface/test_robot_interface.py,sha256=FV1urn7SbsMyWBIcTKjsBwAG4IsXeZ6pLHE0mA9EGGs,692
@@ -94,10 +97,10 @@ robot_interface/models/exceptions/robot_exceptions.py,sha256=EN-3oIEptqMUpyMscoT
94
97
  robot_interface/models/initialize/__init__.py,sha256=rz5neEDr59GDbzzI_FF0DId-C-I-50l113P-h-C_QBY,48
95
98
  robot_interface/models/initialize/initialize_params.py,sha256=UcsBm8aFgxIojgYMadaa6yOhvYXxTkCuCbjGuZexfuI,171
96
99
  robot_interface/models/inspection/__init__.py,sha256=tMn-ka5JxcIDm-So-gUuS5Xod4uwiCMJkcnxsLaRv3k,256
97
- robot_interface/models/inspection/inspection.py,sha256=UdGZIDxvnLpOxHIrT18RNod6IOTnVCky73i4kPggJOg,1869
100
+ robot_interface/models/inspection/inspection.py,sha256=oQ--NRTctg7NKa3FtSj537doHkbljhZ3u6WSaJEMs8s,1410
98
101
  robot_interface/models/mission/__init__.py,sha256=A-o1zkVBCS4wmAUTg6jYW-Md67nKY8nBFFDfIjCG1WE,201
99
102
  robot_interface/models/mission/status.py,sha256=0-HVdMmxDIqDRdtlxe9Z-1KIcZu5baixnrMP6fgYZ-Y,332
100
- robot_interface/models/mission/step.py,sha256=GZULAbLzvRB8eBFjT0nV9RrorAVOui_5L5PdzRJIGGw,4367
103
+ robot_interface/models/mission/step.py,sha256=ZzR8DM1TCvobyq47kdIZx3SB3ez9DpVVbMDL_xtuH4k,3952
101
104
  robot_interface/models/robots/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
102
105
  robot_interface/models/robots/robot_model.py,sha256=pZQsqhn9hh6XE3EjMZhWMzYqg5oJ4CJ4CXeOASKvEf8,452
103
106
  robot_interface/telemetry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -105,8 +108,8 @@ robot_interface/telemetry/mqtt_client.py,sha256=zDDbnPiBCWNnTJQWBG03Y_HutOs_ag5W
105
108
  robot_interface/telemetry/payloads.py,sha256=1Y_RPue9plHmgVA6GZ4wRHXfTGghYGaQndMMdtrmFJg,960
106
109
  robot_interface/utilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
107
110
  robot_interface/utilities/json_service.py,sha256=nU2Q_3P9Fq9hs6F_wtUjWtHfl_g1Siy-yDhXXSKwHwg,1018
108
- isar-1.11.0.dist-info/LICENSE,sha256=3fc2-ebLwHWwzfQbulGNRdcNob3SBQeCfEVUDYxsuqw,14058
109
- isar-1.11.0.dist-info/METADATA,sha256=DH_NA-LFmiuXdeyrImuUaeg-DUzJ38JnXKSsnNj_Jfw,14577
110
- isar-1.11.0.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
111
- isar-1.11.0.dist-info/top_level.txt,sha256=UwIML2RtuQKCyJJkatcSnyp6-ldDjboB9k9JgKipO-U,21
112
- isar-1.11.0.dist-info/RECORD,,
111
+ isar-1.12.0.dist-info/LICENSE,sha256=3fc2-ebLwHWwzfQbulGNRdcNob3SBQeCfEVUDYxsuqw,14058
112
+ isar-1.12.0.dist-info/METADATA,sha256=Ot81RoweIL0xjx6Edeg8VewWnF9JW76d_we5DH5a_tg,14690
113
+ isar-1.12.0.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
114
+ isar-1.12.0.dist-info/top_level.txt,sha256=UwIML2RtuQKCyJJkatcSnyp6-ldDjboB9k9JgKipO-U,21
115
+ isar-1.12.0.dist-info/RECORD,,
File without changes
@@ -1,7 +1,7 @@
1
1
  from abc import ABC
2
2
  from dataclasses import dataclass, field
3
3
  from datetime import datetime
4
- from typing import Optional, Type
4
+ from typing import List, Optional, Type
5
5
  from uuid import UUID, uuid4
6
6
 
7
7
  from alitra import Pose
@@ -18,8 +18,9 @@ class InspectionMetadata(ABC):
18
18
  start_time: datetime
19
19
  time_indexed_pose: TimeIndexedPose
20
20
  file_type: str
21
+ analysis: Optional[List] = field(default_factory=list, init=False)
21
22
  tag_id: Optional[str] = field(default=None, init=False)
22
- additional: Optional[dict] = field(default=None, init=False)
23
+ additional: Optional[dict] = field(default_factory=dict, init=False)
23
24
 
24
25
 
25
26
  @dataclass
@@ -48,42 +49,22 @@ class Inspection:
48
49
  metadata: InspectionMetadata
49
50
  data: Optional[bytes] = field(default=None, init=False)
50
51
 
51
- @staticmethod
52
- def get_metadata_type() -> Type[InspectionMetadata]:
53
- return InspectionMetadata
54
-
55
52
 
56
53
  @dataclass
57
54
  class Image(Inspection):
58
55
  metadata: ImageMetadata
59
56
 
60
- @staticmethod
61
- def get_metadata_type() -> Type[InspectionMetadata]:
62
- return ImageMetadata
63
-
64
57
 
65
58
  @dataclass
66
59
  class ThermalImage(Inspection):
67
60
  metadata: ThermalImageMetadata
68
61
 
69
- @staticmethod
70
- def get_metadata_type() -> Type[InspectionMetadata]:
71
- return ThermalImageMetadata
72
-
73
62
 
74
63
  @dataclass
75
64
  class Video(Inspection):
76
65
  metadata: VideoMetadata
77
66
 
78
- @staticmethod
79
- def get_metadata_type() -> Type[InspectionMetadata]:
80
- return VideoMetadata
81
-
82
67
 
83
68
  @dataclass
84
69
  class ThermalVideo(Inspection):
85
70
  metadata: ThermalVideoMetadata
86
-
87
- @staticmethod
88
- def get_metadata_type() -> Type[InspectionMetadata]:
89
- return ThermalVideoMetadata
@@ -1,16 +1,10 @@
1
1
  from dataclasses import dataclass, field
2
- from typing import Any, List, Literal, Optional, Type, Union
2
+ from typing import Any, List, Literal, Optional, Union
3
3
  from uuid import UUID, uuid4
4
4
 
5
5
  from alitra import Pose, Position
6
6
 
7
- from robot_interface.models.inspection.inspection import (
8
- Image,
9
- Inspection,
10
- ThermalImage,
11
- ThermalVideo,
12
- Video,
13
- )
7
+ from robot_interface.models.inspection.inspection import Inspection
14
8
  from robot_interface.models.mission.status import StepStatus
15
9
 
16
10
 
@@ -63,12 +57,8 @@ class InspectionStep(Step):
63
57
  inspections: List[Inspection] = field(default_factory=list, init=False)
64
58
  tag_id: Optional[str] = field(default=None, init=False)
65
59
  type = "inspection_type"
66
-
67
- @staticmethod
68
- def get_inspection_type() -> Type[Inspection]:
69
- return Inspection
70
-
71
- pass
60
+ analysis: Optional[List] = field(default_factory=list, init=False)
61
+ metadata: Optional[dict] = field(default_factory=dict, init=False)
72
62
 
73
63
 
74
64
  @dataclass
@@ -118,10 +108,6 @@ class TakeImage(InspectionStep):
118
108
  target: Position
119
109
  type: Literal["take_image"] = "take_image"
120
110
 
121
- @staticmethod
122
- def get_inspection_type() -> Type[Inspection]:
123
- return Image
124
-
125
111
 
126
112
  @dataclass
127
113
  class TakeThermalImage(InspectionStep):
@@ -132,10 +118,6 @@ class TakeThermalImage(InspectionStep):
132
118
  target: Position
133
119
  type: Literal["take_thermal_image"] = "take_thermal_image"
134
120
 
135
- @staticmethod
136
- def get_inspection_type() -> Type[Inspection]:
137
- return ThermalImage
138
-
139
121
 
140
122
  @dataclass
141
123
  class TakeVideo(InspectionStep):
@@ -149,10 +131,6 @@ class TakeVideo(InspectionStep):
149
131
  duration: float
150
132
  type: Literal["take_video"] = "take_video"
151
133
 
152
- @staticmethod
153
- def get_inspection_type() -> Type[Inspection]:
154
- return Video
155
-
156
134
 
157
135
  @dataclass
158
136
  class TakeThermalVideo(InspectionStep):
@@ -166,10 +144,6 @@ class TakeThermalVideo(InspectionStep):
166
144
  duration: float
167
145
  type: Literal["take_thermal_video"] = "take_thermal_video"
168
146
 
169
- @staticmethod
170
- def get_inspection_type() -> Type[Inspection]:
171
- return ThermalVideo
172
-
173
147
 
174
148
  STEPS = Union[
175
149
  DriveToPose,