Data Structures | Typedefs | Enumerations | Variables

roc Namespace Reference

namespace to hold core components of ROCsoft More...

Data Structures

class  AbbBoard
class  AbbContext
class  AbbContextRef
class  AbbDevice
class  AbbFactory
class  AbbTransport
class  SplitterModule
class  Board
 This class represents a single ROC. More...
struct  UdpMessage
struct  UdpMessageFull
struct  UdpDataRequest
struct  UdpDataRequestFull
struct  UdpDataPacket
struct  UdpDataPacketFull
struct  BoardStatistic
union  ISEBinfileHeader
class  I2cDevice
 Base class to represent a ROC I2C Bus Device. More...
class  Iterator
class  Message
class  OpticBoard
class  Sorter
class  UdpBoard
struct  BoardRec
class  BoardsVector
class  CombinerModule
class  CmdPut
class  CmdGet
class  CmdNOper
class  CmdDLM
class  CmdCalibration
class  CmdGlobalCalibration
class  CmdGetBoardPtr
class  CmdReturnBoardPtr
class  CmdMessagesVector
class  CmdAddSlave
class  Factory
class  FileInput
 This class provide read access to lmd files via roc::Board interface. More...
class  NxCalibrModule
class  ReadoutApplication
class  ReadoutModule
class  UdpControlSocket
class  UdpDevice
class  UdpDeviceRef
class  UdpDataSocket

Typedefs

typedef std::vector< roc::MessageMessagesVector

Enumerations

enum  ERocMbsTypes {
  proc_RocEvent = 1, proc_ErrEvent = 2, proc_MergedEvent = 3, proc_RawData = 4,
  proc_Triglog = 5, proc_TRD_MADC = 6, proc_TRD_Spadic = 7, proc_CERN_Oct11 = 8,
  proc_SlaveMbs = 9, proc_EPICS = 10, proc_COSY_Nov11 = 11, proc_SpadicV10Raw = 12,
  proc_SpadicV10Event = 13, proc_CERN_Oct12 = 14, proc_FASP = 15, proc_TRBEvent = 31
}
 

value of iProcId if mbs subevent.

More...
enum  ClientRole { roleNone = base::roleNone, roleObserver = base::roleObserver, roleControl = base::roleControl, roleDAQ = base::roleDAQ }
 

Represents the role the client of a board can have.

More...
enum  ERocBufferTypes { rbt_RawRocData = 234 }
enum  ETransportKinds { kind_UDP = base::kind_UDP, kind_ABB = base::kind_ABB, kind_File = base::kind_File }
enum  EFrontendKinds { kind_nXYTER = 1, kind_oldFEET = 2, kind_FEET = 3, kind_newNX = 4 }
enum  EBackendKinds {
  kind_Optic = 1, kind_FX20 = 2, kind_FX40 = 3, kind_FX60 = 4,
  kind_newOptic = 5
}
enum  MessageFormat {
  formatEth1 = 0, formatOptic1 = 1, formatEth2 = 2, formatOptic2 = 3,
  formatNormal = 4
}
enum  MessageTypes {
  MSG_NOP = 0, MSG_HIT = 1, MSG_EPOCH = 2, MSG_SYNC = 3,
  MSG_AUX = 4, MSG_EPOCH2 = 5, MSG_GET4 = 6, MSG_SYS = 7
}
enum  SysMessageTypes {
  SYSMSG_DAQ_START = 1, SYSMSG_DAQ_FINISH = 2, SYSMSG_NX_PARITY = 3, SYSMSG_SYNC_PARITY = 4,
  SYSMSG_DAQ_RESUME = 5, SYSMSG_FIFO_RESET = 6, SYSMSG_USER = 7, SYSMSG_PCTIME = 8,
  SYSMSG_ADC = 9, SYSMSG_PACKETLOST = 10, SYSMSG_GET4_EVENT = 11, SYSMSG_CLOSYSYNC_ERROR = 12,
  SYSMSG_TS156_SYNC = 13
}
enum  SysMessageUserTypes { SYSMSG_USER_CALIBR_ON = 7, SYSMSG_USER_CALIBR_OFF = 8, SYSMSG_USER_RECONFIGURE = 9 }
enum  MessagePrintMask { msg_print_Prefix = 1, msg_print_Data = 2, msg_print_Hex = 4, msg_print_Human = 8 }

Variables

const char * OpticPathPar = "OpticPath"
const char * xmlRocPool = "RocPool"
const char * xmlTransportWindow = "TransportWindow"
const char * xmlTransportKind = "TransportKind"
const char * xmlBoardAddr = "BoardAddr"
const char * xmlRole = "Role"
const char * xmlRocNumber = "RocNumber"
const char * xmlLowWater = "LowWater"
const char * xmlHighWater = "HighWater"
const char * xmlMsgFormat = "MsgFormat"
const char * xmlFlushTime = "FlushTime"
const char * typeUdpDevice = "roc::UdpDevice"
const char * typeAbbDevice = "roc::AbbDevice"
const char * xmlTransferWindow = "RocTransferWindow"
const char * xmlBnetMode = "BnetMode"
const char * xmlSkipErrorData = "SkipErrorData"
const char * xmlIgnoreMissingEpoch = "IgnoreMissingEpoch"
const char * xmlSyncNumber = "SyncNumber"
const char * xmlSyncScaleDown = "SyncScaleDown"
const char * xmlSpillRoc = "SpillRoc"
const char * xmlSpillAux = "SpillAux"
const char * xmlCalibrationPeriod = "CalibrationPeriod"
const char * xmlCalibrationLength = "CalibrationLength"
const char * xmlThrottleAux = "ThrottleAux"
const char * xmlGet4ResetPeriod = "Get4ResetPeriod"
const char * xmlGet4ResetLimit = "Get4ResetLimit"
const char * AddrPar = "Addr"
const char * ValuePar = "Value"
const char * ErrNoPar = "ErrNo"
const char * TmoutPar = "Timeout"
const char * RawDataPar = "RawData"
const char * OperListPar = "OperList"
const char * xmlRawReadout = "RawReadout"
const char * xmlNumRocs = "NumRocs"
const char * xmlRocIp = "RocIp"
const char * xmlRocFebs = "RocFebs"
const char * xmlRawFile = "RawFile"
const char * xmlReadoutAppClass = "roc::Readout"
const char * xmlNumMbs = "NumMbs"
const char * xmlMbsAddr = "MbsAddr"
const char * xmlSyncSubeventId = "SyncSubeventId"
const char * xmlNumSusibo = "NumSusibo"
const char * xmlSusiboAddr = "SusiboAddr"
const char * xmlNumSlaves = "NumSlaves"
const char * xmlSlaveAddr = "SlaveAddr"
const char * xmlNumTRBs = "NumTRBs"
const char * xmlTRBAddr = "TRBAddr"
const char * xmlUseDLM = "UseDLM"
const char * xmlMeasureADC = "MeasureADC"
const char * xmlEpicsStreamNode = "EpicsStreamNode"
const char * xmlEpicsTransportNode = "EpicsTransportNode"

Detailed Description

namespace to hold core components of ROCsoft

This is a place for common constants, types One should try to keep file generic and small - not everything should go here, while later it will be difficult to avoid them


Typedef Documentation

typedef std::vector<roc::Message> roc::MessagesVector

This is helper class to accomodate collection of roc::Board objects and supply classes, which are required for combiner module in dabc.

Definition at line 19 of file BoardsVector.h.


Enumeration Type Documentation

Represents the role the client of a board can have.

Enumerator:
roleNone 

no defined role

roleObserver 

pure observer, no changes

roleControl 

allowed to change state, no DAQ

roleDAQ 

full control including DAQ

Definition at line 14 of file Board.h.

Enumerator:
kind_Optic 
kind_FX20 
kind_FX40 
kind_FX60 
kind_newOptic 

Definition at line 53 of file Board.h.

Enumerator:
kind_nXYTER 
kind_oldFEET 
kind_FEET 
kind_newNX 

Definition at line 46 of file Board.h.

Enumerator:
rbt_RawRocData 

Definition at line 36 of file Board.h.

value of iProcId if mbs subevent.

Data, taken from ROC by DABC, packed into mbs events and stored in lmd file. MBS event consists from one or several subevents. Each subevent has three fields - iProcId (16bit), iSubcrate (8bit) and iControl (8bit) iProcId used to code data origin - see comment for /ref ERocMbsTypes iSubcrate contains roc number (rocid) iControl stores data format see /ref MessageFormat

Enumerator:
proc_RocEvent 

complete event from one roc board (iSubcrate = rocid)

proc_ErrEvent 

one or several events with corrupted data inside (iSubcrate = rocid)

proc_MergedEvent 

sorted and synchronized data from several rocs (iSubcrate = upper rocid bits)

proc_RawData 

unsorted uncorrelated data from one ROC, no SYNC markers required (mainly for FEET case)

proc_Triglog 

subevent produced by MBS directly with sync number and trigger module scalers

proc_TRD_MADC 

subevent produced by MBS directly with CERN-Nov10 data

proc_TRD_Spadic 

collection of data from susibo board (spadic 0.3)

proc_CERN_Oct11 

id for CERN beamtime in October 11

proc_SlaveMbs 

subevent produce by slave MBS system, which emulates number of triglog module

proc_EPICS 

subevent produced by dabc EPICS plugin (ezca)

proc_COSY_Nov11 

id for COSY beamtime in November 11

proc_SpadicV10Raw 

raw data from single spadic V1.0 chip

proc_SpadicV10Event 

dabc-packed data for spadic V1.0 from SP605

proc_CERN_Oct12 

id for CERN beamtime in October 12

proc_FASP 

id for the FASP data

proc_TRBEvent 

container for TRB frontend data

Definition at line 18 of file commons.h.

Enumerator:
kind_UDP 
kind_ABB 
kind_File 

Definition at line 40 of file Board.h.

Enumerator:
formatEth1 
formatOptic1 
formatEth2 
formatOptic2 
formatNormal 

Definition at line 10 of file Message.h.

Enumerator:
msg_print_Prefix 
msg_print_Data 
msg_print_Hex 
msg_print_Human 

Definition at line 52 of file Message.h.

Enumerator:
MSG_NOP 
MSG_HIT 
MSG_EPOCH 
MSG_SYNC 
MSG_AUX 
MSG_EPOCH2 
MSG_GET4 
MSG_SYS 

Definition at line 18 of file Message.h.

Enumerator:
SYSMSG_DAQ_START 
SYSMSG_DAQ_FINISH 
SYSMSG_NX_PARITY 
SYSMSG_SYNC_PARITY 
SYSMSG_DAQ_RESUME 
SYSMSG_FIFO_RESET 
SYSMSG_USER 
SYSMSG_PCTIME 
SYSMSG_ADC 
SYSMSG_PACKETLOST 
SYSMSG_GET4_EVENT 
SYSMSG_CLOSYSYNC_ERROR 
SYSMSG_TS156_SYNC 

Definition at line 29 of file Message.h.

Enumerator:
SYSMSG_USER_CALIBR_ON 
SYSMSG_USER_CALIBR_OFF 
SYSMSG_USER_RECONFIGURE 

Definition at line 46 of file Message.h.


Variable Documentation

const char * roc::AddrPar = "Addr"
const char * roc::ErrNoPar = "ErrNo"
const char * roc::OperListPar = "OperList"
const char * roc::OpticPathPar = "OpticPath"
const char * roc::RawDataPar = "RawData"
const char * roc::TmoutPar = "Timeout"
const char * roc::typeAbbDevice = "roc::AbbDevice"
const char * roc::typeUdpDevice = "roc::UdpDevice"
const char * roc::ValuePar = "Value"
const char * roc::xmlBnetMode = "BnetMode"
const char * roc::xmlBoardAddr = "BoardAddr"
const char * roc::xmlCalibrationLength = "CalibrationLength"
const char * roc::xmlCalibrationPeriod = "CalibrationPeriod"
const char * roc::xmlEpicsStreamNode = "EpicsStreamNode"
const char * roc::xmlEpicsTransportNode = "EpicsTransportNode"
const char * roc::xmlFlushTime = "FlushTime"

Definition at line 25 of file Board.cxx.

Referenced by roc::AbbTransport::AbbTransport().

const char * roc::xmlGet4ResetLimit = "Get4ResetLimit"
const char * roc::xmlGet4ResetPeriod = "Get4ResetPeriod"
const char * roc::xmlHighWater = "HighWater"

Definition at line 23 of file Board.cxx.

const char * roc::xmlIgnoreMissingEpoch = "IgnoreMissingEpoch"
const char * roc::xmlLowWater = "LowWater"

Definition at line 22 of file Board.cxx.

const char * roc::xmlMbsAddr = "MbsAddr"
const char * roc::xmlMeasureADC = "MeasureADC"
const char * roc::xmlMsgFormat = "MsgFormat"
const char * roc::xmlNumMbs = "NumMbs"
const char * roc::xmlNumRocs = "NumRocs"
const char * roc::xmlNumSlaves = "NumSlaves"
const char * roc::xmlNumSusibo = "NumSusibo"
const char * roc::xmlNumTRBs = "NumTRBs"
const char * roc::xmlRawFile = "RawFile"
const char * roc::xmlRawReadout = "RawReadout"
const char * roc::xmlReadoutAppClass = "roc::Readout"

Definition at line 16 of file Commands.cxx.

Referenced by roc::Factory::CreateApplication().

const char * roc::xmlRocFebs = "RocFebs"
const char * roc::xmlRocIp = "RocIp"
const char * roc::xmlRocNumber = "RocNumber"
const char * roc::xmlRocPool = "RocPool"
const char * roc::xmlRole = "Role"
const char * roc::xmlSkipErrorData = "SkipErrorData"
const char * roc::xmlSlaveAddr = "SlaveAddr"
const char * roc::xmlSpillAux = "SpillAux"
const char * roc::xmlSpillRoc = "SpillRoc"
const char * roc::xmlSusiboAddr = "SusiboAddr"
const char * roc::xmlSyncNumber = "SyncNumber"
const char * roc::xmlSyncScaleDown = "SyncScaleDown"
const char * roc::xmlSyncSubeventId = "SyncSubeventId"
const char * roc::xmlThrottleAux = "ThrottleAux"

Definition at line 46 of file CombinerModule.cxx.

Referenced by roc::CombinerModule::CombinerModule().

const char * roc::xmlTransferWindow = "RocTransferWindow"

Definition at line 67 of file UdpBoard.cxx.

Referenced by roc::UdpDataSocket::UdpDataSocket().

const char * roc::xmlTransportKind = "TransportKind"
const char * roc::xmlTransportWindow = "TransportWindow"

Definition at line 17 of file Board.cxx.

const char * roc::xmlTRBAddr = "TRBAddr"
const char * roc::xmlUseDLM = "UseDLM"