Esempio n. 1
0
    def init(self):
        """ Initialize hardware """
        AbstractBeam.init(self)
        self._definer_type = self.get_property("definer")

        self._aperture = self.get_object_by_role("aperture")
        _bliss_obj = self.get_object_by_role("bliss")

        _slits = self.get_property("slits")
        if _slits:
            for name in _slits.split():
                _key, _val = name.split(":")
                self._slits.update({_key: _bliss_obj.__getattribute__(_val)})

        self._complex = self.get_object_by_role("complex")

        beam_position = self.ge_property("beam_position")

        if beam_position:
            self._beam_position_on_screen = tuple(map(float, beam_position.split()))

        if self._aperture:
            self._aperture.connect("valueChanged", self._re_emit_values)
            self._aperture.connect("stateChanged", self._re_emit_values)

        if self._complex:
            self._complex.connect("valueChanged", self._re_emit_values)
            self._complex.connect("stateChanged", self._re_emit_values)
Esempio n. 2
0
    def __init__(self, name):
        AbstractBeam.__init__(self, name)

        self._beam_size_dict["slits"] = [9999, 9999]
        self._beam_size_dict["aperture"] = [9999, 9999]
        self._beam_position_on_screen = [1024 / 2, 1024 / 2]
        self._beam_divergence = (0, 0)
Esempio n. 3
0
    def init(self):
        AbstractBeam.init(self)

        self._beam_position_on_screen = [318, 238]

        self._aperture = self.get_object_by_role("aperture")
        if self._aperture is not None:
            self.connect(
                self._aperture,
                "diameterIndexChanged",
                self.aperture_diameter_changed,
            )

            ad = self._aperture.get_diameter_size() / 1000.0
            self._beam_size_dict["aperture"] = [ad, ad]

        self._slits = self.get_object_by_role("slits")
        if self._slits is not None:
            self.connect(self._slits, "valueChanged", self.slits_gap_changed)

            sx, sy = self._slits.get_gaps()
            self._beam_size_dict["slits"] = [sx, sy]

        self.evaluate_beam_info()
        self.re_emit_values()
        self.emit("beamPosChanged", (self._beam_position_on_screen, ))
Esempio n. 4
0
 def init(self):
     """ Initialize hardware """
     AbstractBeam.init(self)
     self._aperture = self.getObjectByRole("aperture")
     _bliss_obj = self.getObjectByRole("bliss")
     _slits = self.getProperty("slits")
     if _slits:
         for name in _slits.split():
             _key, _val = name.split(":")
             self._slits.update({_key: _bliss_obj.__getattribute__(_val)})
     self._complex = self.getObjectByRole("complex")
     self.definer = self.getProperty("definer")
     beam_position = self.getProperty("beam_position")
     if beam_position:
         self.beam_position = tuple(map(float, beam_position.split()))
Esempio n. 5
0
 def __init__(self, name):
     AbstractBeam.__init__(self, name)
     self._aperture = None
     self._slits = {}
     self._complex = None
     self._definer_type = None
Esempio n. 6
0
    def __init__(self, name):
        AbstractBeam.__init__(self, name)

        self._beam_size_dict["slits"] = [9999, 9999]
        self._beam_size_dict["aperture"] = [9999, 9999]