Commit Graph

67 Commits

Author SHA1 Message Date
66466c1c0f This is the first working version of the new logging system. Some work
in fine tuning still needs to be done. But is reasonably OK now.
2016-02-11 13:40:31 +01:00
95988f331c Merge branch 'develop' of ssh://gitorious.psi.ch/sinqdev/sics into develop
Conflicts:
	fourmess.c
2016-01-29 08:53:00 +01:00
5e597e2d10 Merge branch 'maverick' into develop
Compile under OSX
2016-01-26 09:48:11 +01:00
Douglas Clowes
eff54a5fd9 Implement task priorities and message queues 2015-07-29 17:47:46 +10:00
Ferdi Franceschini
10d29d597c Cleaned up ANSTO code to merge with sinqdev.sics
This is our new RELEASE-4_0 branch which was taken from ansto/93d9a7c
Conflicts:
	.gitignore
	SICSmain.c
	asynnet.c
	confvirtualmot.c
	counter.c
	devexec.c
	drive.c
	event.h
	exebuf.c
	exeman.c
	histmem.c
	interface.h
	motor.c
	motorlist.c
	motorsec.c
	multicounter.c
	napi.c
	napi.h
	napi4.c
	network.c
	nwatch.c
	nxscript.c
	nxxml.c
	nxxml.h
	ofac.c
	reflist.c
	scan.c
	sicshipadaba.c
	sicsobj.c
	site_ansto/docs/Copyright.txt
	site_ansto/instrument/lyrebird/config/tasmad/sicscommon/nxsupport.tcl
	site_ansto/instrument/lyrebird/config/tasmad/taspub_sics/tasscript.tcl
	statusfile.c
	tasdrive.c
	tasub.c
	tasub.h
	tasublib.c
	tasublib.h
2015-04-23 20:49:26 +10:00
f82197623e Merge branch 'master' into maverick
- Removed epicsmotor from motor.c
- Fixed a bad define in tasscanub.h
Conflicts:
	makefile_macosx
2015-03-17 14:01:40 +01:00
b319461531 Fixed a minor memory leak in count and drive task handling
Reformatted multicountser to become clearer
Minor fixes
Added more tracing output to sort the SANSLI problem
2014-10-13 13:36:37 +02:00
f5e797dd6a - Cleaned all old dtatus setting code 2014-07-18 14:02:57 +02:00
4fb94efe9a This is the first version of the newly refactored status code handling.
Status codes are now determined by a special task which inspects SICS for what
is going on. Before this was a global variable which caused conflicts when
multiple instances in the code tried to set it.
2014-06-27 11:05:27 +02:00
Mark Könnecke
bc31c6cd1e Changes to make SICS compile on OSX Maverick with clang 2014-03-14 09:48:14 +01:00
koennecke
3e6501d806 - Fixed documentation typos
- In support of HMsec, allow the count command in countsec to run without a
  preset parameter. If this is missing the old, stored preset is used.
- Removed a check which causes initialisation of the HM from a batch file fail
  for POLDI
- fixed @nl@ encoding of \n problem with certain kinds of batch files generated by GTSE
- Fixed a bug with summing on hitsmemsec. nxdataset now uses 64 bit int for dimensions.
- Fixed motorsec to remove itself properly from a parent when linked. Please note
  that there is still the limitation that a second generation motor can only be linked
  once in a Hipadaba tree
- Extended subsampling a HM for second generation HM
- Added a hscriptnotify. This calls a script on the update of a node
- POLDI has been rebuilt, chnages to data file writing
- For testing, sinqhttopt now understands a special command, byteswapoff,
  which switches off byte swapping. Required when the HM ius run on an Intel box.


SKIPPED:
	psi/polterwrite.c
	psi/sinqhttpopt.c
2013-09-16 09:27:50 +00:00
zolliker
9a142c18bf - fixed: pExecutor->iRun was no longer initialized since 1.52 2013-06-05 14:18:07 +00:00
zolliker
8096212c52 - introduced "stopexe run"
- fixed "task ps" to show names containing ':' correctly
2013-05-24 05:44:52 +00:00
koennecke
f6a2b259ea - Introduced a state filed into first generation objects
- Fixed some issues with error returns not being properly handled in devexec
- Fixed a bug in motorlist which caused limit checks to fail
- Fixed an issue with the TDCHM not properly updating the counter
  values on finish
- Readded getHipadabaPar in ChainCallback as this caused a problem in ei
- Made tasdrive ignore sgu, sgl when out of plane not allowed


SKIPPED:
	psi/eigermono.c
	psi/sinqhttp.c
	psi/tdchm.c
2013-05-23 08:54:55 +00:00
koennecke
1afe142812 - Removed old code
- Extended tasker to support task groups
- Added task functions for motors and counters
- Modifed devexec to use the new task functions
- Modified TAS to treat the monochromator separatly
- Coded a EIGER monochromator module to reflect even more new
  requirements
- Added EPICS counters and motors
- Modified multicounter to be better performing


SKIPPED:
	psi/eigermono.c
	psi/make_gen
	psi/makefile_linux
	psi/psi.c
	psi/sinqhttp.c
2013-04-02 15:13:35 +00:00
koennecke
86e246416b - Added bridge functions to histmemsec to make it look more like histmem
- Modifed many modules using histmem to work also with histmemsec
- Extended tasker with task names and task groups
- There is a new taskobj which allows to list tasks and to interact with them.
- Task now supports running Tcl functions as tasks
- There is a new experimental sctcomtask module which allows to define communication
  tasks against a scriptcontext. This is a new feature which should facilitate
  writing sequential scripts using asynchronous communication.
- A fix to make spss7 work when there are no switches
- ORION support for single X. TRICS measures crystals hanging down, ORION
  standing up


SKIPPED:
	psi/ease.c
	psi/faverage.c
	psi/jvlprot.c
	psi/make_gen
	psi/pardef.c
	psi/polterwrite.c
	psi/psi.c
	psi/sinq.c
	psi/spss7.c
2012-12-20 11:32:33 +00:00
Douglas Clowes
b0115d2569 typos 2012-11-28 15:19:33 +11:00
koennecke
ecd96f9ab0 - Extended confvirtmot to allow for sequences of calls
- Extended confvirtmot to have  a checkscript
- Made sure that targets get updated when calling tasdrive
- Fixed some output codes in tasdrive.c
- Made tdchm invoke counters event message for Melone
- Fixed the ConID inefficiency by caching the host name in asynnet.c
- Added a traceActive function to trace


SKIPPED:
	psi/tdchm.c
2012-04-19 10:01:31 +00:00
koennecke
14f257c2ab - Added an edge function to peakcenter for NARZISS
- Fixed ei interrupt bug in tasdrive.c
- Made eiger A2 driving work
- Added force start facility to devexec for POLDI HV


SKIPPED:
	psi/eigera2.c
	psi/polterwrite.c
2011-12-19 12:24:58 +00:00
koennecke
3ee1865f9b - Introduced a new trace facility
- Fixed performance problems in many protocol drivers.


SKIPPED:
	psi/julprot.c
	psi/phytron.c
	psi/pmacprot.c
	psi/polterwrite.c
	psi/spss7.c
2011-06-29 07:53:54 +00:00
koennecke
1ae7c0c2e2 - Introduced a command history log for statistical and
syntax checking input purposes
- Rectified an error message in fourmess.c
- HMcontrol did not check for the HM to stop before returning. This
  caused weird data files at AMOR as the data had not yet been downloaded
  from the HM.
- Fixed an issue about parameters in multicounter
- Temporary fix in nxscript.c to always read the Hm from the HM and not
  a buffer. This is prior to rethinking caching strategies for old style
  HM's.
- Synchronize now copies fixed motors correctly. This used to cause
  irritation with users. This now requires a script syncdrive to exist
  in the sync server which takes care of handling the fixed flag when
  this is desired.
- Added initify to sicsdata in order to copy large value timebins over
  properly at AMOR


SKIPPED:
	psi/amorstat.c
	psi/make_gen
	psi/makefile_linux
	psi/polterwrite.c
	psi/sinq.c
	psi/sinqhttp.c
	psi/sinqhttpprot.c
	psi/sps.c
	psi/tdchm.c
2010-06-01 10:01:00 +00:00
koennecke
b26b8fc735 - Changed strncpy to strlcpy, strncat to strlcat
- Added strlcpy and strlcat to SICS
- Added a driver for the POLDI power supplies


SKIPPED:
	psi/A1931.c
	psi/autowin.c
	psi/bruker.c
	psi/docho.c
	psi/dornier2.c
	psi/dspcode.c
	psi/ease.c
	psi/ecb.c
	psi/ecbcounter.c
	psi/ecbdriv.c
	psi/el734dc.c
	psi/el734driv.c
	psi/el734hp.c
	psi/el737driv.c
	psi/el737hpdriv.c
	psi/el737hpdrivsps.c
	psi/el737hpv2driv.c
	psi/el755driv.c
	psi/eurodriv.c
	psi/haakedriv.c
	psi/itc4driv.c
	psi/julcho.c
	psi/linadriv.c
	psi/lmd200.c
	psi/lscsupport.c
	psi/ltc11.c
	psi/make_gen
	psi/oicom.c
	psi/oxinst.c
	psi/pimotor.c
	psi/pipiezo.c
	psi/polterwrite.c
	psi/psi.c
	psi/sanscook.c
	psi/sanslirebin.c
	psi/sanswave.c
	psi/sinqhmdriv.c
	psi/sinqhttp.c
	psi/slsecho.c
	psi/slsmagnet.c
	psi/slsvme.c
	psi/sps.c
	psi/swmotor.c
	psi/swmotor2.c
	psi/tabledrive.c
	psi/tasscan.c
	psi/tdchm.c
	psi/velodorn.c
	psi/velodornier.c
2010-04-13 15:08:38 +00:00
koennecke
7d30c4d352 - Extended sicshdbadapter to attach a node to the target of any
drivable. Required a new event in devexec.c
- Fixed the phytron driver to handle speed well
- Added a protocol driver for the TCP/IP bridge to the SLS magnets


SKIPPED:
	psi/make_gen
	psi/phytron.c
	psi/psi.c
	psi/slsecho.c
	psi/sps.c
2010-03-25 10:02:47 +00:00
zolliker
4bf0c87daf restructured configuration (ofac.c)
- ofac.c contains now only the command in initialisation function list
- the other functions are moved to sicsutil.c
- moved DoubleTime and the content of access.c to sicsutil.c
- moved some initialisation code from ofac.c to the corresponding modules
2010-01-28 08:14:37 +00:00
koennecke
8cc5474334 - After a bug at TRICS I replaced all occurrences of strcpy, strcat, sprintf
by length limited versions wherever appropriate.


SKIPPED:
	psi/el755driv.c
	psi/faverage.c
	psi/frame.c
	psi/lmd200.c
	psi/polterwrite.c
	psi/psi.c
	psi/sanswave.c
	psi/sinqhmdriv.c
	psi/termprot.c
2009-12-04 12:58:31 +00:00
koennecke
2e873e3059 - Fixed a crash coming from velo.c
- Improved saving of reflection lists
- The other changes are mostly whitespace
2009-10-30 13:49:37 +00:00
koennecke
98009be4c3 - Added reflection generation for symmetriqally missing reflections
to fourmess
- Fixed hdbtable, reflist and tasub up to work with GTSE
- Made TRICS do fast scans again
- Added support for SANS beam center calculations
- Fixed a bug where SICS apparently did double counting but in fact
  just omitted an error message and did not
- Added the harray command
2009-08-13 07:28:44 +00:00
koennecke
3f3f0810e5 - Many fixes to the four circle codes during taking the new code into
operation.
- Fixed some missing output
- Second generation histogram memory and velocity selector objects
- Fixed a problem in diffscan
2009-05-15 13:21:20 +00:00
koennecke
99d2485d22 - Connections write timeouts were incorrectly handled in asynnetc. Fixed.
- Implemented the desired run/drive behaviour: drive waits for what it started
  run starts, and success waits for everything to finish. This required
  changes to a lot of files.
- Fixed a bug in remob which supressed required messages
2009-04-17 12:52:01 +00:00
zolliker
35f2b6b810 - allow scriptcontext objects to be dynamic
- enhancements in scriptcontext (error messages stored as properties)
2009-02-19 13:30:32 +00:00
koennecke
91d4af0541 - Adapted indenation to new agreed upon system
- Added support for second generation scriptcontext based counter
2009-02-13 09:00:03 +00:00
koennecke
361ee9ebea - Reworked the connection object and the IO system
- Reworked the support for TRICS
- Added a second generation motor
2009-02-03 08:05:39 +00:00
koennecke
af3461c774 Compiles and runs under Mac OS X
VS: ----------------------------------------------------------------------


SKIPPED:
	psi/arrobj.c
	psi/pardef.c
	psi/polterwrite.c
	psi/tecs/tecs_cli.c
2008-07-23 12:15:06 +00:00
zolliker
9e7a6cfd74 - added scriptcontext.h
- killing a node using sct should now be safe
- sctdrive adapter object might be dynamic
- default for the checkstatus script: returning the status property
- introduced <sctcon> unpoll
- changed <sctcon> queuecon to <sctcon> send
- some more improvements in sct
2008-06-13 11:22:13 +00:00
koennecke
22b0e8ec83 *** empty log message *** 2007-11-27 13:36:15 +00:00
koennecke
c75f556fa5 - Fixed an off by one in a message from killfile
- Fixed a nasty reentrency bug in nread.c
_ protected devexec.c against the same bug
2007-09-06 13:25:51 +00:00
koennecke
e4929d512c - Fixed state monitor eclipse commit problems. Siiiiiiiggggghhhhhh! 2007-01-30 03:19:43 +00:00
koennecke
bc22cc624d - Small change to devexec.c to have year specific devexec logs 2007-01-11 08:50:39 +00:00
koennecke
cb3bf30bbf - Fixes to hkl code
- Fixes to make RITA work
- tasub extended to calculate UB from cell alone, support for elastic mode
- New MultiCounter as abstraction for counting on HM's
- regression test driver for counters
2006-09-13 07:12:00 +00:00
koennecke
a5c2da6acf - Switched motor to hdb
- Changes to Hipadaba
- Added project to histogram memory code
- Started regression testing code
- Added hill climbing as optimization method to optimise
2006-08-16 14:13:05 +00:00
koennecke
47e38eba5a - Added log instrumentation to devexe
- Added a hill climbing option to optimise
- Added hrpt files


SKIPPED:
	psi/libpsi.a
	psi/sinqhmdriv.c
	psi/tabledrive.c
2006-07-13 07:24:44 +00:00
koennecke
e6ad9da6ad - Improvements to Hipadaba
- New chopper driver for MARS Juelich chopper system
- New docbook based SANS manual


SKIPPED:
	psi/amorcomp.c
	psi/amordrive.h
	psi/amorset.c
	psi/amorset.h
	psi/amorset.tex
	psi/amorset.w
	psi/julcho.c
	psi/libpsi.a
	psi/make_gen
	psi/psi.c
2006-07-07 15:05:24 +00:00
koennecke
51a60375d6 - Removed -fwritable-string
SKIPPED:
	psi/dornier2.c
	psi/ecbdriv.c
	psi/el734hp.c
	psi/libpsi.a
	psi/make_gen
	psi/makefile_linux
	psi/pimotor.c
	psi/pipiezo.c
	psi/sinqhttp.c
	psi/tcpdornier.c
	psi/velodornier.c
2006-03-31 15:24:52 +00:00
koennecke
b3138f1197 - Added Sycamore protocol and command context to SICS
- Added sinfo to SICS
- Added driver for TCP/IP Astrium velocity selector
- Added driver for TCP/IP Astrium chopper controller


SKIPPED:
	psi/amor2t.c
	psi/amorstat.c
	psi/dornier2.c
	psi/ecb.c
	psi/el734hp.c
	psi/fowrite.c
	psi/libpsi.a
	psi/make_gen
	psi/nextrics.c
	psi/pardef.c
	psi/pimotor.c
	psi/pipiezo.c
	psi/polterwrite.c
	psi/psi.c
	psi/scontroller.c
	psi/serial.c
	psi/tasinit.c
	psi/tasscan.c
	psi/tcpdocho.c
	psi/tcpdornier.c
	psi/tricssupport.c
	psi/velodornier.c
2005-12-22 22:16:10 +00:00
zolliker
8ce534803b - inserted overwriteOwner option, a hack when using the sendsics script 2005-09-09 14:38:09 +00:00
koennecke
054e2133ee - Added a sinq module for monitoring the Accelerator broadcast
- Added automatic notification via SMS


SKIPPED:
	psi/dgrambroadcast.c
	psi/dgrambroadcast.h
	psi/make_gen
	psi/psi.c
	psi/sinq.c
	psi/sinq.h
2005-07-08 12:32:38 +00:00
koennecke
3a0b4f293c - Fixed sign problems with om in tasub
- Mended tasdrive to drive energy even if Q is askew
- Fixed QM values
- Fixed problems in mesure: om2th, wrong theta selection
- Fixed core dump when driving h,kl, failed
2005-06-09 12:04:38 +00:00
zolliker
9238129619 bug fix (driving / counting status was not correct) 2005-04-12 13:13:03 +00:00
zolliker
21a54358e6 - corrected Driving/Counting status 2005-03-30 13:22:15 +00:00
zolliker
9a94b6dca7 made code proper to avoid warning/fixed some small potential bugs 2005-03-04 12:53:07 +00:00