Coda: Difference between revisions

From CLONWiki
Jump to navigation Jump to search
Line 94: Line 94:


'''Network/'''
'''Network/'''
portHandler
rccAcceptor
rccCmdBuffer
rccIO
rccStdinPipe
rccThrPipe




'''Transitioners/'''
'''Transitioners/'''


  activater.cc
  activater
  booter.cc
  booter
  compTransitioner.cc
  compTransitioner
  configurer.cc
  configurer
  downloader.cc
  downloader
  ender.cc
  ender
  pauser.cc
  pauser
  prestarter.cc
  prestarter
  resetter.cc
  resetter
  subSysAborter.cc
  subSysAborter
  subSysActivater.cc
  subSysActivater
  subSysBooter.cc
  subSysBooter
  subSysConfigurer.cc
  subSysConfigurer
  subSysDownloader.cc
  subSysDownloader
  subSysEnder.cc
  subSysEnder
  subSysPauser.cc
  subSysPauser
  subSysPrestarter.cc
  subSysPrestarter
  subSysResetter.cc
  subSysResetter
  subSysTerminater.cc
  subSysTerminater
  subSysTransitioner.cc
  subSysTransitioner
  subSysVerifier.cc
  subSysVerifier
  terminater.cc
  terminater
  transitioner.cc
  transitioner
  transitionTimer.cc
  transitionTimer
  verifier.cc
  verifier

Revision as of 10:56, 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/

portHandler
rccAcceptor
rccCmdBuffer
rccIO
rccStdinPipe
rccThrPipe


Transitioners/

activater
booter
compTransitioner
configurer
downloader
ender
pauser
prestarter
resetter
subSysAborter
subSysActivater
subSysBooter
subSysConfigurer
subSysDownloader
subSysEnder
subSysPauser
subSysPrestarter
subSysResetter
subSysTerminater
subSysTransitioner
subSysVerifier
terminater
transitioner
transitionTimer
verifier