pilatus driver and template: fixed thread polling for Th, as it wasn't working for 2M or 6M detectors. Added a 2s delay when aborting an acquisition, which seems to be needed to allow camserver time to clean up in some modes. Improved error reporting for multi frame acqusitions, when callbacks are turned off. Fixed a race condition to ensure we don't miss a stopEvent if we are doing a successful read from camserver. Added an automatic stop when getting a timeout from camserver, if we got no response (this prevents camserver and the pilatus driver getting out of sync.) Fixed race conditions that meant we occasionally read back the wrong ADStatus at the end of an exposure. Fixed a race condition in pilatusTask, that can cause a problem reading ADStatus if we sent a start and a stop in quick succession (before the pilatusTask thread had time to run). Added support for setting cbf_template_file. Turned off auto reconnect on the Asyn port, to force a IOC reboot if camserver if has been restarted. Fixed logic for setting the threshold, if we have auto apply turned off. Modified the pilatus driver to take advantage of the new aborted state, ie. replaced some of the ADErrors with ADStatusAborted.

git-svn-id: https://subversion.xor.aps.anl.gov/synApps/areaDetector/trunk@14660 dc6c5ff5-0b8b-c028-a01f-ffb33f00fc8b
This commit is contained in:
mwpearson
2012-04-07 12:24:52 +00:00
parent 8dd322dbb8
commit 51d45dfe65
+11
View File
@@ -254,6 +254,7 @@ record(asyn, "$(P)$(R)CamserverAsyn")
field(PORT, "$(CAMSERVER_PORT)")
field(IMAX, "64")
field(OMAX, "64")
field(AUCT, "0")
}
# ancillary information
@@ -609,3 +610,13 @@ record(stringin, "$(P)$(R)TVXVersion_RBV")
field(VAL, "Unknown")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)CbfTemplateFile")
{
field(PINI, "YES")
field(DTYP, "asynOctetWrite")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))CBFTEMPLATEFILE")
field(FTVL, "CHAR")
field(NELM, "256")
}