Coda: Difference between revisions
Line 96: | Line 96: | ||
''' | '''Transitioners/''' | ||
activater.cc | |||
booter.cc | |||
compTransitioner.cc | |||
configurer.cc | |||
downloader.cc | |||
ender.cc | |||
pauser.cc | |||
prestarter.cc | |||
resetter.cc | |||
subSysAborter.cc | |||
subSysActivater.cc | |||
subSysBooter.cc | |||
subSysConfigurer.cc | |||
subSysDownloader.cc | |||
subSysEnder.cc | |||
subSysPauser.cc | |||
subSysPrestarter.cc | |||
subSysResetter.cc | |||
subSysTerminater.cc | |||
subSysTransitioner.cc | |||
subSysVerifier.cc | |||
terminater.cc | |||
transitioner.cc | |||
transitionTimer.cc | |||
verifier.cc |
Revision as of 10:52, 9 April 2014
CODA is JLAB data aquisition system software. CLAS version of CODA has some differences and described in current section.
dac directory
Core CODA packages.
proc_thread
Original CODA's second readout list is running as a thread, called 'proc_thread'. It can be run on main host or on pmc co-processor. Main files is 'main/cinclude/roc_process.c'. Main function started as a thread is
void proc_thread(BIGPROC *bigprocptrin, unsigned int offsetin)
where BIGPROC structure contains control parameters including pointers to the input (BIGBUF *gbigBuffer) and output (BIGBUF *gbigBuffer1) big buffers.
write_thread
Last component in coda_roc running as a thread. Main file is 'dac.s/roc_network.c'. Main function started as a thread is
write_thread(BIGNET *bignetptrin, unsigned int offsetin)
where BIGNET structure contains control parameters including pointers to the input (BIGBUF *gbigBuffer) big buffer;
rc directory (run control)
Uses MOTIF as graphics and ACE3.1 as communication package, all sources are available in subdirectories /cg, /motif and /sase3.1. Run control code resides in subdirectory /runControl.
Variables/ contains some generic stuff, for example daqData contains operators overloading etc.
Common/ - set of classes use by other components:
codaIntHash -- codaSList codaStrHash ------/ rcMsg rcSvcInfoFinder rcSvcLocaterRep | (friend) rcServerLocater
/rcClient contains run control client library functions in /src.s and client program example in /main. Library has following structure:
rcClient <- rccDaqData <- codaRcCallback
/rcServer contains run control server library in subdirectories /Components.s, /Constants.s, /Network.s, /Transitioners.s and /src.s, and main program in /main. Most important classes are in /Components.s.
Main/
rcServer | |-- Common/rcSvcInfoFinder |-- Common/rcServerLocater |-- (local src.s)/rcSignalHandler |-- sase/Reactor |-- Network/rccAcceptor |-- Network/rccStdinPipe |-- Network/portHandler |-- Constants/daqActions |-- Components/daqRun |-- Components/rcMsgReporter |-- Components/dbaseReader |-- Components/daqSystem |-- sace/Time_Value
Components/
daqRun - | |-- rcsAnaLogVarWriter |-- rcsConfFileNameWriter |-- rcsDaqData |-- rcsDataLimitWriter |-- rcsEvLimitWriter |-- rcsLogFileDesWriter |-- rcsNumEvTrigger |-- rcsNumLongTrigger |-- rcsRunNumberWriter |-- rcsTokenIntervalWriter |-- rcsUpdateIWriter | |-- dbaseReader -- factory -- daqLogComp | |-- daqCompMonitor | |-- daqDataUpdater (one pointer)
Constants/
daqActions daqState
Network/
Transitioners/
activater.cc booter.cc compTransitioner.cc configurer.cc downloader.cc ender.cc pauser.cc prestarter.cc resetter.cc subSysAborter.cc subSysActivater.cc subSysBooter.cc subSysConfigurer.cc subSysDownloader.cc subSysEnder.cc subSysPauser.cc subSysPrestarter.cc subSysResetter.cc subSysTerminater.cc subSysTransitioner.cc subSysVerifier.cc terminater.cc transitioner.cc transitionTimer.cc verifier.cc