70 Commits

Author SHA1 Message Date
61341b52f4 various improvements
- use dig for resolving host names
- ascon.c: fix terminator parsing
- property callback: change property before callback
- logger.c:default for logger period must be the old value instead of 1
- add frappy type history writing
- increase max. logreader line length
- HIPNONE returns "null" with json protocol
- encode strings properly in formatNameValue
- fix memory leak in json2tcl
- scriptcontext: do not show debug messages when script starts with underscore or when the "send" property is empty
- scriptcontext: remove args for action timestamp
- scriptcontext: "que" function will replace an already queued action, e.g. for 'halt
- introduced updatestatus script
2021-09-16 12:26:18 +02:00
8de1fd4183 - use dig before gethostbyname to resolve host names 2018-08-09 09:10:10 +02:00
e43a02bd7d - issue error message anyway (not depending on connection) 2018-07-03 11:12:02 +02:00
19b3c71274 - SECoP protocol for scriptcontext 2018-05-07 13:53:51 +02:00
199c8cde5f - fixed mess with SCWrite / SCPrintf due to changes in conman.c 2017-06-14 15:44:34 +02:00
10cb44df85 - ascon.c: bug fix
- binprot.c: enhancements
- devser.c, scriptcontext.c: introduced specifiaction of start time in poll
2017-04-07 10:10:10 +02:00
2673bb3b6d Merge branch 'develop' of ssh://gitlab.psi.ch/sinqdev/sics into develop 2016-12-15 17:04:09 +01:00
d0fe079b71 Fixed an issue where an unresetted geterror in combination with a null connection causes
to many log messages.
2016-11-07 09:48:47 +01:00
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
2593b44633 Merge branch 'maverick' into develop
Everything up to dat
2016-01-26 11:34:17 +01:00
1149227685 Merge branch 'master' into maverick 2016-01-26 10:56:19 +01:00
5e597e2d10 Merge branch 'maverick' into develop
Compile under OSX
2016-01-26 09:48:11 +01:00
a37aae2361 Merge branch 'ANSTO_MERGE_2' of ssh://gitorious.psi.ch/~hauser_n/sinqdev/ansto-sics into develop
Conflicts:
	conman.c
	drive.c
2016-01-15 15:17:17 +01:00
64d44c2824 Assorted bug fixes
- If SctProcessNode ran into a timeout, its action data wa sdeleted. If data came
  later, this caused SICS to crash. This is now fixed
- sget leaked connections under certain circumstances
- Cosmetic fix to hipadaba.c
- yet another chnage to the TRICS file format in fourmess.c, now it prints magnetic field
  instead of the proton count
2015-07-30 13:57:55 +02:00
Douglas Clowes
eff54a5fd9 Implement task priorities and message queues 2015-07-29 17:47:46 +10:00
e497e2daf3 Fixed minor typos and compilation issues 2015-04-30 09:25:36 +02:00
b60ce746d4 Merge commit 'refs/merge-requests/1' of ssh://gitorious.psi.ch/sinqdev/sics into merge-requests/1
First merge with ANSTO which compiles

Conflicts:
	SICSmain.c
	asynnet.c
	confvirtualmot.c
	counter.c
	devexec.c
	drive.c
	exebuf.c
	hipadaba.c
	interface.h
	make_gen
	motor.c
	nserver.c
	nwatch.c
	ofac.c
	protocol.c
	sicshipadaba.c
2015-04-23 17:00:33 +02: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
db6167bfa1 - Removed old stuff in conman
- Fixed a bug in processnode which hangs SICS when processnode is called from multiple
  clients on the same node
- Fixed a bug in multicountsersec which caused thrashing of the Tcl results which caused ugly
  error messages when calling the transfer script. Now a copy of the connection is made
  before calling the transfer script
2014-07-15 16:43:09 +02:00
Douglas Clowes
1692e0d4d4 Sanitize error text to reduce TCL errors 2014-04-04 12:27:40 +11:00
Mark Könnecke
bc31c6cd1e Changes to make SICS compile on OSX Maverick with clang 2014-03-14 09:48:14 +01:00
koennecke
33e122ea9e - Modified collective drive operations to run motors in individual tasks
- Added a processnode methos to scriptcontext. processnode waits for the
  scriptchain of a node to finish.
- Fixed a bug in sicsget
- Made histmemsec dim and rank manager privilege. To allow chnage at runtime.
  Is required for SANS
- Fixed some issues with multicountersec, mostly relating to passing things through
  in a sensible way.
- Updated motorsec.c to work with a client based driver


SKIPPED:
	psi/polterwrite.c
	psi/tabledrive.c
	psi/tabledrive.h
2014-02-18 13:25:32 +00:00
zolliker
9a3607bd66 - make reconnectInterval changeable (0: no automatic reconnection) 2013-06-25 11:21:04 +00:00
zolliker
565f96b5ca - add a check for empty return value 2013-06-07 06:26:52 +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
f57fe9262e suppress empty reply and print nodepath 2012-11-29 12:57:35 +11:00
koennecke
4f560552c4 - Removed SCStart/EndBuffering as far as possible and fixed an issue with
the capture command in that it not put resluts into the Tcl interpreter.
  This broke scriptcontext scripts in complicated situations.
- Resolved some issues with the TAS calculation and negative scattering sense.
- Fixed a bug which did not reset the state to idle after checking
  reachability in confvirtualmot.c


SKIPPED:
	psi/autowin.c
	psi/eigera2.c
	psi/jvlprot.c
	psi/makefile_linux
	psi/sinqhttpopt.c
	psi/tasscan.c
2012-10-29 12:56:29 +00:00
zolliker
caf31b36cc - added command to change timeout of a scriptcontext controller
- created syncedprot
2012-08-21 06:44:29 +00:00
zolliker
c8a492e2de - added status function
- added hostport function
- added update script
- added reconnenct script
- added "sct parent" command
2012-06-19 06:44:30 +00:00
koennecke
bd50b19178 - Fixed sicsprompt bug. Sicsprompt caused a core dump
- Removed generation of incommenurate reflections for 0,0,0 in fourmess.c
- Implemented a Poch command for heartbeats
- Fixed 64 bit dimension issues in nxdict
- Fixed different calling conventions for NXReportError deep stack in nxdict
- Stopped ei motor driving when not necessary
- Added yet another monitor for POLDI
- Added a protocoll driver for the JVL motor RS-485 binary protocoll
- Fixed some reporting issues


SKIPPED:
	psi/jvlprot.c
	psi/make_gen
	psi/polterwrite.c
	psi/psi.c
	psi/spss7.c
2012-06-05 09:09:20 +00: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
9eca96b064 - Fixes to make SL6 work
- New NeXus libraries
- Added new raw binary transfer mode for mass data
- Added a check script option to configurable virtual motor


SKIPPED:
	psi/dumprot.c
	psi/make_gen
	psi/psi.c
	psi/rebin.c
	psi/sanslirebin.c
2012-03-29 08:41:05 +00:00
koennecke
ce565b4d50 - Fixed a normalisation problem in diffscan when the first value
did not have enough counts
- Reduced polling frequency in emon
- Fixed a scriptcontext bug which would cause it to dump core in SctTransact
  on interrupts
- Fixed an issue with missing <nl> at the end of batch files
- Added a feature which does not call halt when counting stops in hmcontrol.c
  This is necessary for the BOA CCD
- Initalized doNotFree properly in hipadaba.c
- Added the travelling salesman reflection measurement algorithm
- Added another component to amorset
- Removed old SicsWait from nserver.c
- Added a means to nxscript to write 16 bit data for BOA
- Modified tasub to accept a drivabel as a motor and not only a motor.
  This became necessary to make EIGER work as A2 on EIGER is a virtual
  motor


SKIPPED:
	psi/amorcomp.h
	psi/amordrive.h
	psi/amorset.c
	psi/amorset.h
	psi/amorset.tex
	psi/amorset.w
	psi/el734hp.c
	psi/el737hpdriv.c
	psi/make_gen
	psi/pardef.c
	psi/polterwrite.c
	psi/psi.c
	psi/sinqhttpopt.c
2011-09-23 07:55:49 +00:00
zolliker
56523419b2 - use Tcl library for splitting and merging argument lists 2011-08-29 14:41:23 +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
zolliker
71517022d0 changed - to {} in error message 2011-04-29 14:09:21 +00:00
zolliker
3421c707f7 - cosmetics 2011-03-25 14:23:36 +00:00
koennecke
045029dfd3 - Currently disabled attempts at logging commands
- Added a warning for excessive data rates on monitors
- Added statistics to devser and thus to scriptcontext
- Added byte concatenation to dynstring
- Added aborting for reflection generation to fourmess.c
- Added data checksum testing to hipadaba, use for update tests
- Fixed interrupt discovery in network.c, caused invalid interrupt
  codes which in turn confused sicscron which had to be fixed too.
- Renamed ubcalc into ubcalcint in order to reclaim the ubcalc for Jurg
- Added an a3offset to tasub in order to fix what I perceive an IS problem
- Added support for the newer version of the Siemens SPS, the S7
- Added a not yet fully working sinqhttpopt driver which talks to
  http HM without libghttp


SKIPPED:
	psi/delcam.c
	psi/make_gen
	psi/psi.c
	psi/sinq.c
	psi/sinq.h
	psi/sinqhttpopt.c
	psi/slsvme.c
	psi/spss7.c
2010-12-20 10:18:01 +00:00
zolliker
38818e650c - introduced <controller> actions function for listing actions
- introduced <controller> reconnect function
- list seconds of minute in debugging mode
- "sct utime" may be used from scripts to get the milliseconds time
2010-04-13 14:16:29 +00:00
zolliker
3e8938e986 - bug fixes
SKIPPED:
	psi/haakedriv.c
2010-02-01 11:29:46 +00:00
zolliker
a56838b90d - simplified devser queue
- added inherited sct variables starting with @
- inserted SctIsPending / DevIsPending
- some general improvements in scriptcontext.c/sctdriveobj.c
2010-01-27 13:39:33 +00:00
koennecke
be13da8a03 - SICS cleanup: removed unused code
SKIPPED:
	psi/make_gen
	psi/makefile_linux
	psi/polterwrite.c
	psi/psi.c
2010-01-19 12:55:40 +00:00
zolliker
eb33c15016 - send debug message also on transact command
- small improvements
2009-11-10 08:04:24 +00:00
koennecke
e076a00fde - Fixed NB indexing
- Fixed an issue with setbin generated time binnings
2009-06-30 06:43:23 +00:00
koennecke
85880be565 - Fixed a bug in countersec.c which prevented counting in monitor mode
- Fixes to make the second generation velocity selector driver work
- Modified obpar.c to allow parameter changes while running. This makes
  it possible to collect data at TRICS while cooling down.
2009-05-26 09:36:59 +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
2e060ccf73 - design improvements in scriptcontext (sct send) and ascon (AsconBaseHandler)
- bug fixes
2009-03-03 14:07:43 +00:00