@@ -139,25 +139,18 @@ def __init__(
139
139
None.
140
140
"""
141
141
self ._number = number
142
- self .elements = elements
142
+ self .elements = { e . name : e for e in elements }
143
143
self ._assign_element_numbers ()
144
- self ._callbacks = {e .name : e .callback for e in elements if e .callback }
145
144
super ().__init__ (
146
145
frame_id = number ,
147
146
name = str (number ),
148
147
length = length ,
149
- signals = self . elements ,
148
+ signals = elements ,
150
149
)
151
150
152
- def decode (self , data , ** kwargs ):
153
- decoded = super ().decode (data , ** kwargs )
154
- for k , v in decoded .items ():
155
- if k in self ._callbacks :
156
- self ._callbacks [k ](v )
157
-
158
151
def _assign_element_numbers (self ):
159
152
start_byte = 0
160
- for e in self .elements :
153
+ for e in self .elements . values () :
161
154
e .start_byte = start_byte
162
155
start_byte += e .size
163
156
@@ -166,15 +159,6 @@ def number(self):
166
159
"""Get the ODT number."""
167
160
return self ._number
168
161
169
- @property
170
- def elements (self ):
171
- """Get Element in the ODT."""
172
- return self ._signals
173
-
174
- @elements .setter
175
- def elements (self , value ):
176
- self ._signals = value
177
-
178
162
179
163
class DAQList :
180
164
def __init__ (
@@ -194,13 +178,13 @@ def __init__(
194
178
self .apply ()
195
179
196
180
def update (self ):
197
- elements = (e for odt in self .odts for e in odt .elements )
181
+ elements = (e for odt in self .odts for e in list ( odt .elements . values ()) )
198
182
self .event_channels = {e .event_channel for e in elements }
199
183
200
184
def apply (self ):
201
185
self .update ()
202
186
for i , odt in enumerate (self .odts ):
203
- for j , e in enumerate (odt .elements ):
187
+ for j , e in enumerate (list ( odt .elements . values ()) ):
204
188
self ._node .set_daq_ptr (
205
189
daq_list_number = self .number ,
206
190
odt_number = i ,
0 commit comments