diff --git a/src/PilatusXM.py b/src/PilatusXM.py index b4a401f0bf070ae43af7b53c438e36ada00fff50..7648c16dc2c3401249f5ac8ee2dace59d3b318d8 100755 --- a/src/PilatusXM.py +++ b/src/PilatusXM.py @@ -6,7 +6,7 @@ # license : # ============================================================================ # -# File : PilatusXM.pyf +# File : PilatusXM.py # # Project : Interface class for the Pilatus detectors # @@ -1009,8 +1009,8 @@ class PilatusXM (PyTango.LatestDeviceImpl): self.read_ExposurePeriod(expPeriodAttr) expTimeAttr = fakeAttr() self.read_ExposureTime(expTimeAttr) - if (expPeriodAttr.value < (expTimeAttr.value + 0.003) ): - expPeriodAttr.set_value(expTimeAttr.value + 0.003) + if (expPeriodAttr.value < (expTimeAttr.value + self.ReadOutTime) ): + expPeriodAttr.set_value(expTimeAttr.value + self.ReadOutTime) self.write_ExposurePeriod(expPeriodAttr) fullname = "%s%05d%s" % (self.attr_FilePrefix_read,self.attr_FileStartNum_read,self.attr_FilePostfix_read) trgModes = {0:"exposure", 1:"extenable",2:"exttrigger",3:"extmtrigger"} @@ -1098,11 +1098,16 @@ class PilatusXMClass(PyTango.DeviceClass): 'ServerAddress': [PyTango.DevString, "The IP address of the PilatusXM camserver.", + True, [] ], 'Simulation': [PyTango.DevBoolean, '', [False]], + 'ReadOutTime': + [PyTango.DevFloat, + "Minimum ReadOUt influences the minimum difference between ExposurePeriod and ExposureTime.", + [0.003]], } diff --git a/src/PilatusXM.xmi b/src/PilatusXM.xmi index ddcf7766623c8aa83de86dc9b36104109bab789e..271482b186cf19d3f30fd41686cabd10dabf82ac 100644 --- a/src/PilatusXM.xmi +++ b/src/PilatusXM.xmi @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="ASCII"?> <pogoDsl:PogoSystem xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:pogoDsl="http://www.esrf.fr/tango/pogo/PogoDsl"> <classes name="PilatusXM" pogoRevision="9.6"> - <description description="Pilatus detectors are a series pixel detecors build by DECTRIS
<br />
http://www.dectris.com.
<br />
All detectors of this series can talk to the outside world via a socket
connection. An ASCI protocol is used on this sockect connection to
communicate with the detector.
<p>
The server process which handles the socket on the detecor PC is
called camserver. Only one client can commumicate with camserver.
If the native client tvx is connected, the device server cannot connect until
tvx gets disconnected.
</p>" title="Interface class for the Pilatus detectors" sourcePath="/home/roberto.borghes/devel/spe/ds/PilatusXM" language="Python" filestogenerate="XMI file,Code files,Protected Regions" license="GPL" hasMandatoryProperty="true" hasConcreteProperty="true" hasAbstractCommand="false" hasAbstractAttribute="false"> + <description description="Pilatus detectors are a series pixel detecors build by DECTRIS
<br />
http://www.dectris.com.
<br />
All detectors of this series can talk to the outside world via a socket
connection. An ASCI protocol is used on this sockect connection to
communicate with the detector.
<p>
The server process which handles the socket on the detecor PC is
called camserver. Only one client can commumicate with camserver.
If the native client tvx is connected, the device server cannot connect until
tvx gets disconnected.
</p>" title="Interface class for the Pilatus detectors" sourcePath="/home/roberto.borghes/devel/spe/ds/PilatusXM/src" language="Python" filestogenerate="XMI file,Code files,Protected Regions" license="GPL" hasMandatoryProperty="true" hasConcreteProperty="true" hasAbstractCommand="false" hasAbstractAttribute="false"> <inheritances classname="Device_4Impl" sourcePath=""/> <identification contact="at elettra.eu - sci.comp" author="sci.comp" emailDomain="elettra.eu" classFamily="Instrumentation" siteSpecific="" platform="Unix Like" bus="Ethernet" manufacturer="Dectris" reference=""/> </description> @@ -14,6 +14,11 @@ <status abstract="false" inherited="false" concrete="true" concreteHere="true"/> <DefaultPropValue>False</DefaultPropValue> </deviceProperties> + <deviceProperties name="ReadOutTime" description="Minimum ReadOUt influences the minimum difference between ExposurePeriod and ExposureTime."> + <type xsi:type="pogoDsl:FloatType"/> + <status abstract="false" inherited="false" concrete="true" concreteHere="true"/> + <DefaultPropValue>0.003</DefaultPropValue> + </deviceProperties> <commands name="State" description="This command gets the device state (stored in its <i>device_state</i> data member) and returns it to the caller." execMethod="dev_state" displayLevel="OPERATOR" polledPeriod="0"> <argin description="none."> <type xsi:type="pogoDsl:VoidType"/>