BioImager  4.9.0
A .NET microscopy imaging application based on Bio library. Supports various microscopes by using imported libraries & GUI automation. Supports XInput game controllers to move stage, take images, run ImageJ macros on images or Bio C# scripts.
Loading...
Searching...
No Matches
microscope.abc.Controller Class Reference
Inheritance diagram for microscope.abc.Controller:
microscope.abc.Device microscope.controllers.coolled.CoolLED microscope.controllers.lumencor.SpectraIIILightEngine microscope.controllers.prior.ProScanIII microscope.controllers.toptica.iChromeMLE microscope.controllers.zaber.ZaberDaisyChain microscope.controllers.zaber._ZaberLEDController microscope.simulators.SimulatedController microscope.stages.ludl.ludlMC2000

Public Member Functions

typing.Mapping[str, Devicedevices (self)
 
- Public Member Functions inherited from microscope.abc.Device
None __init__ (self)
 
None __del__ (self)
 
bool get_is_enabled (self)
 
None disable (self)
 
None enable (self)
 
None initialize (self)
 
None shutdown (self)
 
None add_setting (self, name, dtype, get_func, set_func, values, typing.Optional[typing.Callable[[], bool]] readonly=None)
 
 get_setting (self, str name)
 
 get_all_settings (self)
 
None set_setting (self, str name, value)
 
 describe_setting (self, str name)
 
 describe_settings (self)
 
 update_settings (self, incoming, bool init=False)
 

Protected Member Functions

None _do_shutdown (self)
 
- Protected Member Functions inherited from microscope.abc.Device
 _do_disable (self)
 
 _do_enable (self)
 

Additional Inherited Members

- Public Attributes inherited from microscope.abc.Device
bool enabled = False
 
- Protected Attributes inherited from microscope.abc.Device
dict _settings = {}
 

Detailed Description

Device that controls multiple devices.

Controller devices usually control multiple stage devices,
typically a XY and Z stage, a filterwheel, and a light source.
Controller devices also include multi light source engines.

Each of the controlled devices requires a name.  The choice of
name and its documentation is left to the concrete class.

Shutting down a controller device must shutdown the controlled
devices.  Concrete classes should be careful to prevent that the
shutdown of a controlled device does not shutdown the controller
and the other controlled devices.  This might require that
controlled devices do nothing as part of their shutdown.

Definition at line 1322 of file abc.py.

Member Function Documentation

◆ _do_shutdown()

None microscope.abc.Controller._do_shutdown ( self)
protected
Private method - actual shutdown of the device.

Users should be calling :meth:`shutdown` and not this method.
Concrete implementations should implement this method instead
of `shutdown`.

Reimplemented from microscope.abc.Device.

Definition at line 1346 of file abc.py.

1346 def _do_shutdown(self) -> None:
1347 for d in self.devices.values():
1348 d.shutdown()
1349
1350

◆ devices()

typing.Mapping[str, Device] microscope.abc.Controller.devices ( self)
Map of names to the controlled devices.

Reimplemented in microscope.controllers.coolled.CoolLED, microscope.controllers.lumencor.SpectraIIILightEngine, microscope.controllers.prior.ProScanIII, microscope.controllers.toptica.iChromeMLE, microscope.controllers.zaber._ZaberLEDController, microscope.controllers.zaber.ZaberDaisyChain, microscope.simulators.SimulatedController, and microscope.stages.ludl.ludlMC2000.

Definition at line 1342 of file abc.py.

1342 def devices(self) -> typing.Mapping[str, Device]:
1343 """Map of names to the controlled devices."""
1344 raise NotImplementedError()
1345

The documentation for this class was generated from the following file: