File tree Expand file tree Collapse file tree 1 file changed +40
-0
lines changed
Expand file tree Collapse file tree 1 file changed +40
-0
lines changed Original file line number Diff line number Diff line change 4141 Wheel ,
4242)
4343
44+ devices = [Calibration ,
45+ CameraAssembly ,
46+ DAQDevice ,
47+ Detector ,
48+ Device ,
49+ DigitalMicromirrorDevice ,
50+ Disc ,
51+ EphysAssembly ,
52+ Filter ,
53+ HarpDevice ,
54+ Laser ,
55+ LaserAssembly ,
56+ Lens ,
57+ LightEmittingDiode ,
58+ Monitor ,
59+ NeuropixelsBasestation ,
60+ Objective ,
61+ Olfactometer ,
62+ OpenEphysAcquisitionBoard ,
63+ Patch ,
64+ PockelsCell ,
65+ PolygonalScanner ,
66+ RewardDelivery ,
67+ Speaker ,
68+ StickMicroscopeAssembly ,
69+ Treadmill ,
70+ Tube ,
71+ Wheel ,
72+ ]
4473
4574class Rig (AindCoreModel ):
4675 """Description of a rig"""
@@ -97,17 +126,28 @@ def validate_device_names(cls, values): # noqa: C901
97126 actually exist
98127 """
99128
129+ model_types = [type (model ) for model in devices ]
130+
131+ to_check = [field for field in values .keys () if any (isinstance (values .get (field ), model ) for model in devices )]
132+
100133 cameras = values .get ("cameras" )
101134 ephys_assemblies = values .get ("ephys_assemblies" )
102135 laser_assemblies = values .get ("laser_assemblies" )
103136 mouse_platform = values .get ("mouse_platform" )
104137 daqs = values .get ("daqs" )
105138
139+
140+
106141 if daqs is None :
107142 return values
108143
109144 device_names = [None ]
110145
146+ for field in to_check :
147+ if values .get (field ) is not None :
148+ print (values .get (field ))
149+ device_names += [device .name for device in values .get (field )]
150+
111151 if cameras is not None :
112152 device_names += [c .camera .name for c in cameras ]
113153
You can’t perform that action at this time.
0 commit comments