@@ -108,17 +108,6 @@ def __post_init__(self):
108
108
else :
109
109
self .frames_dict = dict (enumerate (self .frames ))
110
110
111
- # TODO: move validation to scene upload
112
- assert isinstance (self .frames , List ), "frames must be a list"
113
- for frame in self .frames :
114
- assert isinstance (
115
- frame , Frame
116
- ), "each element of frames must be a Frame object"
117
- assert len (self .frames ) > 0 , "frames must have length of at least 1"
118
- assert isinstance (
119
- self .reference_id , str
120
- ), "reference_id must be a string"
121
-
122
111
def check_valid_frame_indices (self ):
123
112
infer_from_list_position = all (
124
113
(frame .index is None for frame in self .frames )
@@ -129,6 +118,18 @@ def check_valid_frame_indices(self):
129
118
assert (
130
119
infer_from_list_position or explicit_frame_order
131
120
), "Must specify index explicitly for all frames or implicitly for all frames (inferred from list position)"
121
+
122
+ # TODO: move validation to scene upload
123
+ def validate_scene (self ):
124
+ assert isinstance (self .frames , List ), "frames must be a list"
125
+ assert len (self .frames ) > 0 , "frames must have length of at least 1"
126
+ for frame in self .frames :
127
+ assert isinstance (
128
+ frame , Frame
129
+ ), "each element of frames must be a Frame object"
130
+ assert isinstance (
131
+ self .reference_id , str
132
+ ), "reference_id must be a string"
132
133
133
134
def add_item (self , item : SceneDatasetItem , index : int , sensor_name : str ):
134
135
if index not in self .frames_dict :
0 commit comments