Ejemplo n.º 1
0
    def __init__(self,
                 name,
                 groupName,
                 callbacks,
                 exposureMode,
                 trigHandler=None,
                 trigLine=None):
        # Note we assume that cameras are eligible for experiments.
        deviceHandler.DeviceHandler.__init__(self, name, groupName, True,
                                             callbacks, depot.CAMERA)
        ## True if the camera is currently receiving images.
        self.isEnabled = False
        self._exposureMode = exposureMode
        self.wavelength = None
        self.dye = None
        # Set up trigger handling.
        if trigHandler and trigLine:
            h = trigHandler.registerDigital(self, trigLine)
            self.triggerNow = h.triggerNow
        else:
            softTrigger = self.callbacks.get('softTrigger', None)
            self.triggerNow = lambda: softTrigger
            if softTrigger:
                depot.addHandler(
                    cockpit.handlers.imager.ImagerHandler(
                        "%s imager" % name, "imager",
                        {'takeImage': softTrigger}))

        #subscribe to save and load setting calls to enabvle saving and
        #loading of configurations.
        events.subscribe('save exposure settings', self.onSaveSettings)
        events.subscribe('load exposure settings', self.onLoadSettings)
Ejemplo n.º 2
0
 def __init__(self,
              name,
              groupName,
              callbacks,
              exposureMode,
              trigHandler=None,
              trigLine=None):
     # Note we assume that cameras are eligible for experiments.
     super().__init__(name, groupName, True, callbacks, depot.CAMERA)
     ## True if the camera is currently receiving images.
     self.isEnabled = False
     self._exposureMode = exposureMode
     self.wavelength = None
     self.dye = None
     # Set up trigger handling.
     if trigHandler and trigLine:
         h = trigHandler.registerDigital(self, trigLine)
         self.triggerNow = h.triggerNow
     else:
         softTrigger = self.callbacks.get('softTrigger', None)
         self.triggerNow = lambda: softTrigger
         if softTrigger:
             depot.addHandler(
                 cockpit.handlers.imager.ImagerHandler(
                     "%s imager" % name, "imager",
                     {'takeImage': softTrigger}))