BioImager  3.9.1
A .NET microscopy imaging library. Supports various microscopes by using imported libraries & GUI automation. Supported libraries include PriorĀ® & ZeissĀ® & all devices supported by Micromanager 2.0 and python-microscope.
Loading...
Searching...
No Matches
microscope.controllers.toptica._iChromeLaser Class Reference
Inheritance diagram for microscope.controllers.toptica._iChromeLaser:
microscope.abc.LightSource microscope.abc.TriggerTargetMixin microscope.abc.Device

Public Member Functions

None __init__ (self, _iChromeConnection conn, int laser_number)
 
typing.List[str] get_status (self)
 
bool get_is_on (self)
 
microscope.TriggerMode trigger_mode (self)
 
microscope.TriggerType trigger_type (self)
 
None set_trigger (self, microscope.TriggerType ttype, microscope.TriggerMode tmode)
 
- Public Member Functions inherited from microscope.abc.LightSource
def __init__ (self, **kwargs)
 
typing.List[str] get_status (self)
 
bool get_is_on (self)
 
float power (self)
 
None power (self, float power)
 
float get_set_power (self)
 
- Public Member Functions inherited from microscope.abc.TriggerTargetMixin
microscope.TriggerMode trigger_mode (self)
 
microscope.TriggerType trigger_type (self)
 
None set_trigger (self, microscope.TriggerType ttype, microscope.TriggerMode tmode)
 
None trigger (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)
 
def get_setting (self, str name)
 
def get_all_settings (self)
 
None set_setting (self, str name, value)
 
def describe_setting (self, str name)
 
def describe_settings (self)
 
def update_settings (self, incoming, bool init=False)
 

Additional Inherited Members

- Public Attributes inherited from microscope.abc.Device
 enabled
 

Detailed Description

Definition at line 170 of file toptica.py.

Constructor & Destructor Documentation

◆ __init__()

None microscope.controllers.toptica._iChromeLaser.__init__ (   self,
_iChromeConnection  conn,
int  laser_number 
)

Reimplemented from microscope.abc.LightSource.

Definition at line 171 of file toptica.py.

171 def __init__(self, conn: _iChromeConnection, laser_number: int) -> None:
172 super().__init__()
173 self._conn = _iChromeLaserConnection(conn, laser_number)
174
175 # FIXME: set values to '0' because we need to pass an int as
176 # values for settings of type str. Probably a bug on
177 # Device.set_setting.
178 self.add_setting("label", "str", self._conn.get_label, None, values=0)
179 self.add_setting("type", "str", self._conn.get_type, None, values=0)
180
181 self.add_setting(
182 "delay", "int", self._conn.get_delay, None, values=tuple()
183 )
184

Member Function Documentation

◆ get_is_on()

bool microscope.controllers.toptica._iChromeLaser.get_is_on (   self)
Return True if the light source is currently able to produce light.

Reimplemented from microscope.abc.LightSource.

Definition at line 188 of file toptica.py.

188 def get_is_on(self) -> bool:
189 if self._conn.get_enable():
190 if self._conn.get_cw():
191 return True
192 else:
193 # There doesn't seem to be command to check whether
194 # the TTL line is currently high, so just return True
195 # if set that way.
196 return self._conn.get_use_ttl()
197 else:
198 return False
199

References microscope.controllers.coolled._CoolLEDChannelConnection._conn, microscope.controllers.coolled._CoolLEDChannel._conn, microscope.controllers.lumencor._LightChannelConnection._conn, microscope.controllers.lumencor._SpectraIIILightChannel._conn, microscope.controllers.prior.ProScanIII._conn, microscope.controllers.prior._ProScanIIIFilterWheel._conn, microscope.controllers.toptica._iChromeLaserConnection._conn, microscope.controllers.toptica._iChromeLaser._conn, microscope.controllers.zaber._ZaberDeviceConnection._conn, microscope.controllers.zaber.ZaberDaisyChain._conn, microscope.lights.toptica.TopticaiBeam._conn, and microscope.stages.ludl.ludlMC2000._conn.

Referenced by microscope.lights.cobolt.CoboltLaser.get_is_on(), microscope.lights.deepstar.DeepstarLaser.get_is_on(), microscope.lights.obis.ObisLaser.get_is_on(), microscope.lights.deepstar.DeepstarLaser.get_status(), microscope.lights.obis.ObisLaser.get_status(), microscope.lights.cobolt.CoboltLaser.initialize(), microscope.lights.obis.ObisLaser.initialize(), and microscope.lights.sapphire.SapphireLaser.initialize().

◆ get_status()

◆ set_trigger()

None microscope.controllers.toptica._iChromeLaser.set_trigger (   self,
microscope.TriggerType  ttype,
microscope.TriggerMode   tmode 
)
Set device for a specific trigger.

Reimplemented from microscope.abc.TriggerTargetMixin.

Definition at line 226 of file toptica.py.

228 ) -> None:
229 if tmode is not microscope.TriggerMode.BULB:
231 "only TriggerMode.BULB mode is supported"
232 )
233
234 # From the manual it seems that cw and ttl parameters are
235 # mutually exclusive but also still need to be set separately.
236 if ttype is microscope.TriggerType.HIGH:
237 self._conn.set_cw(False)
238 self._conn.set_use_ttl(True)
239 elif ttype is microscope.TriggerType.SOFTWARE:
240 self._conn.set_use_ttl(False)
241 self._conn.set_cw(True)
242 else:
244 "only trigger type HIGH and SOFTWARE are supported"
245 )
246

References microscope.controllers.coolled._CoolLEDChannelConnection._conn, microscope.controllers.coolled._CoolLEDChannel._conn, microscope.controllers.lumencor._LightChannelConnection._conn, microscope.controllers.lumencor._SpectraIIILightChannel._conn, microscope.controllers.prior.ProScanIII._conn, microscope.controllers.prior._ProScanIIIFilterWheel._conn, microscope.controllers.toptica._iChromeLaserConnection._conn, microscope.controllers.toptica._iChromeLaser._conn, microscope.controllers.zaber._ZaberDeviceConnection._conn, microscope.controllers.zaber.ZaberDaisyChain._conn, microscope.lights.toptica.TopticaiBeam._conn, and microscope.stages.ludl.ludlMC2000._conn.

Referenced by microscope.cameras.picam.PiCamera.__init__(), microscope.cameras.ximea.XimeaCamera.__init__(), and microscope.cameras.ximea.XimeaCamera.initialize().

◆ trigger_mode()

microscope.TriggerMode microscope.controllers.toptica._iChromeLaser.trigger_mode (   self)

Reimplemented from microscope.abc.TriggerTargetMixin.

Definition at line 216 of file toptica.py.

216 def trigger_mode(self) -> microscope.TriggerMode:
217 return microscope.TriggerMode.BULB
218

Referenced by microscope.cameras.picam.PiCamera.__init__(), and microscope.cameras.ximea.XimeaCamera.__init__().

◆ trigger_type()

microscope.TriggerType microscope.controllers.toptica._iChromeLaser.trigger_type (   self)

Reimplemented from microscope.abc.TriggerTargetMixin.

Definition at line 220 of file toptica.py.

220 def trigger_type(self) -> microscope.TriggerType:
221 if self._conn.get_use_ttl():
222 return microscope.TriggerType.HIGH
223 else:
224 return microscope.TriggerType.SOFTWARE
225

Referenced by microscope.cameras.ximea.XimeaCamera.__init__(), microscope.abc.DeformableMirror.apply_pattern(), and microscope.abc.TriggerTargetMixin.trigger().


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