#include <Processor.h>
Public Member Functions | |
Processor (unsigned rocid, unsigned nxmask=0x5) | |
virtual | ~Processor () |
void | setRefChannel (unsigned ref_get4, unsigned ref_ch) |
bool | isRefChannel () const |
virtual bool | FirstBufferScan (const base::Buffer &buf) |
virtual bool | SecondBufferScan (const base::Buffer &buf) |
unsigned | GetBoardId () const |
void | SetSyncSource (unsigned id) |
void | SetNoSyncSource () |
void | SetTriggerSignal (unsigned id) |
void | SetNoTriggerSignal () |
void | SetPrint (int nummsg, double left=-1., double right=-1.) |
ProcMgr * | mgr () const |
const std::string | GetProcName () const |
void | SetTimeSorting (bool on) |
bool | IsTimeSorting () const |
void | SetTriggerWindow (double left, double right) |
bool | IsSynchronisationRequired () const |
virtual bool | AddNextBuffer (const Buffer &buf) |
virtual bool | ScanNewBuffers () |
virtual bool | ScanNewBuffersTm () |
virtual void | SkipAllData () |
virtual bool | SkipBuffers (unsigned cnt) |
unsigned | numSyncs () const |
SyncMarker & | getSync (unsigned n) |
SyncMarker & | lastSync () |
bool | eraseSyncAt (unsigned indx) |
virtual bool | CollectTriggers (GlobalTriggerMarksQueue &queue) |
virtual bool | DistributeTriggers (const GlobalTriggerMarksQueue &queue) |
virtual bool | ScanDataForNewTriggers () |
unsigned | NumReadySubevents () const |
virtual bool | AppendSubevent (base::Event *evt) |
Static Public Member Functions | |
static void | SetMaxBrdId (unsigned max) |
Protected Types | |
typedef std::vector< base::Buffer > | BuffersQueue |
typedef std::vector < base::SyncMarker > | SyncMarksQueue |
typedef std::vector < base::LocalTriggerMarker > | LocalTriggerMarksQueue |
Protected Member Functions | |
bool | get4_in_use (unsigned id) |
bool | IsValidBufIndex (unsigned indx) const |
void | AssignBufferTo (roc::Iterator &iter, const base::Buffer &buf) |
virtual double | MaximumDisorderTm () const |
virtual unsigned | GetTriggerMultipl (unsigned indx) |
virtual bool | doTriggerSelection () const |
virtual void | SortDataInSubEvent (base::SubEvent *) |
int | Get4TimeDiff (uint64_t t1, uint64_t t2) |
void | CreateBasicHistograms () |
void | FillMsgPerBrdHist (unsigned cnt) |
void | SetSubPrefix (const char *subname="", int indx=-1, const char *subname2="", int indx2=-1) |
H1handle | MakeH1 (const char *name, const char *title, int nbins, double left, double right, const char *xtitle=0) |
void | FillH1 (H1handle h1, double x, double weight=1.) |
H2handle | MakeH2 (const char *name, const char *title, int nbins1, double left1, double right1, int nbins2, double left2, double right2, const char *options=0) |
void | FillH2 (H1handle h2, double x, double y, double weight=1.) |
C1handle | MakeC1 (const char *name, double left, double right, H1handle h1=0) |
void | ChangeC1 (C1handle c1, double left, double right) |
int | TestC1 (C1handle c1, double value, double *dist=0) |
double | GetC1Limit (C1handle c1, bool isleft=true) |
void | AddSyncMarker (SyncMarker &marker) |
void | AddTriggerMarker (LocalTriggerMarker &marker) |
double | local_time_dist (GlobalTime_t tm1, GlobalTime_t tm2) |
GlobalTime_t | LocalToGlobalTime (GlobalTime_t localtm, unsigned *lastindx=0) |
virtual GlobalTime_t | ProvidePotentialFlushTime (GlobalTime_t last_marker) |
bool | VerifyFlushTime (const base::GlobalTime_t &flush_time) |
unsigned | TestHitTime (const base::GlobalTime_t &hittime, bool normal_hit) |
Protected Attributes | |
roc::Iterator | fIter |
roc::Iterator | fIter2 |
first iterator over all messages | |
base::H1handle | fMsgsKind |
second iterator over all messages | |
base::H1handle | fSysTypes |
histogram with messages kinds | |
std::vector< get4::Get4Rec > | GET4 |
histogram with system types | |
int | fNumHits |
usage masks for nxyters | |
int | fNumBadHits |
unsigned | fRefGet4 |
unsigned | fRefChannel |
uint64_t | fLastRefRising |
time used for ref calculation | |
uint64_t | fLastRefFalling |
time used for ref calculation | |
unsigned | fBrdId |
unsigned | fSyncSource |
board id, which will be used for the filling | |
unsigned | fTriggerSignal |
int | fNumPrintMessages |
double | fPrintLeft |
number of messages to be printed | |
double | fPrintRight |
left border to start printing | |
bool | fAnyPrinted |
right border to stop printing | |
base::H1handle | fMsgPerBrd |
true when any message was printed | |
base::H1handle | fALLt |
common histogram for all boards with similar prefix | |
base::H1handle | fAUXt [4] |
histogram for all messages times | |
base::H1handle | fSYNCt [2] |
histogram for AUX times | |
std::string | fName |
ProcMgr * | fMgr |
processor name, used for event naming | |
BuffersQueue | fQueue |
unsigned | fQueueScanIndex |
index of next buffer which should be scanned | |
unsigned | fQueueScanIndexTm |
index of buffer to scan and set correct times of the buffer head | |
bool | fIsSynchronisationRequired |
true if sync is required | |
SyncMarksQueue | fSyncs |
list of sync markers | |
unsigned | fSyncScanIndex |
sync scan index, use to adjust syncs over many processors | |
bool | fSyncFlag |
boolean, used in sync adjustment procedure | |
LocalTriggerMarksQueue | fLocalTrig |
list of local triggers | |
GlobalTriggerMarksQueue | fGlobalTrig |
list of global triggers in work | |
unsigned | fGlobalTrigScanIndex |
index with first trigger which is not yet ready | |
unsigned | fGlobalTrigRightIndex |
temporary value, used during second buffers scan | |
bool | fTimeSorting |
defines if time sorting should be used for the messages | |
std::string | fPrefix |
prefix, used for histogram names | |
std::string | fSubPrefixD |
sub-prefix for histogram directory | |
std::string | fSubPrefixN |
sub-prefix for histogram names | |
base::H1handle | fTriggerTm |
base::H1handle | fMultipl |
histogram with time relative to the trigger | |
base::C1handle | triggerWindow |
histogram of event multiplicity | |
Static Protected Attributes | |
static unsigned | fMaxBrdId = 16 |
histogram for SYNC times |
Definition at line 33 of file Processor.h.
typedef std::vector<base::Buffer> base::StreamProc::BuffersQueue [protected, inherited] |
Definition at line 83 of file StreamProc.h.
typedef std::vector<base::LocalTriggerMarker> base::StreamProc::LocalTriggerMarksQueue [protected, inherited] |
Definition at line 87 of file StreamProc.h.
typedef std::vector<base::SyncMarker> base::StreamProc::SyncMarksQueue [protected, inherited] |
Definition at line 85 of file StreamProc.h.
get4::Processor::Processor | ( | unsigned | rocid, | |
unsigned | nxmask = 0x5 | |||
) |
Definition at line 27 of file Processor.cxx.
References base::SysCoreProc::CreateBasicHistograms(), fMsgsKind, fNumBadHits, fNumHits, fRefChannel, fRefGet4, fSysTypes, GET4, base::StreamProc::MakeH1(), base::StreamProc::mgr(), roc::proc_RocEvent, base::SysCoreProc::SetNoSyncSource(), base::SysCoreProc::SetNoTriggerSignal(), and base::StreamProc::SetSubPrefix().
get4::Processor::~Processor | ( | ) | [virtual] |
Definition at line 85 of file Processor.cxx.
bool base::StreamProc::AddNextBuffer | ( | const Buffer & | buf | ) | [virtual, inherited] |
Provide next port of data to the processor
Definition at line 273 of file StreamProc.cxx.
References base::StreamProc::fQueue.
void base::StreamProc::AddSyncMarker | ( | base::SyncMarker & | marker | ) | [protected, inherited] |
Definition at line 352 of file StreamProc.cxx.
References base::SyncMarker::bufid, base::StreamProc::fQueueScanIndex, base::StreamProc::fSyncs, base::SyncMarker::globaltm, and base::StreamProc::IsSynchronisationRequired().
Referenced by nx::Processor::FirstBufferScan(), and FirstBufferScan().
void base::StreamProc::AddTriggerMarker | ( | LocalTriggerMarker & | marker | ) | [protected, inherited] |
Definition at line 365 of file StreamProc.cxx.
References base::LocalTriggerMarker::bufid, base::StreamProc::fLocalTrig, and base::StreamProc::fQueueScanIndex.
Referenced by nx::Processor::FirstBufferScan(), and FirstBufferScan().
bool base::StreamProc::AppendSubevent | ( | base::Event * | evt | ) | [virtual, inherited] |
Append data for first trigger to the main event
Definition at line 474 of file StreamProc.cxx.
References base::Event::AddSubEvent(), base::StreamProc::fGlobalTrig, base::StreamProc::fGlobalTrigScanIndex, base::StreamProc::FillH1(), base::StreamProc::fMultipl, base::StreamProc::GetProcName(), base::StreamProc::GetTriggerMultipl(), base::StreamProc::IsTimeSorting(), and base::StreamProc::SortDataInSubEvent().
void get4::Processor::AssignBufferTo | ( | roc::Iterator & | iter, | |
const base::Buffer & | buf | |||
) | [protected] |
Definition at line 113 of file Processor.cxx.
References roc::Iterator::assign(), base::Buffer::null(), roc::Message::RawSize(), roc::Iterator::setFormat(), and roc::Iterator::setRocNumber().
Referenced by FirstBufferScan(), and SecondBufferScan().
void base::StreamProc::ChangeC1 | ( | C1handle | c1, | |
double | left, | |||
double | right | |||
) | [protected, inherited] |
Definition at line 176 of file StreamProc.cxx.
References base::ProcMgr::ChangeC1(), and base::StreamProc::mgr().
Referenced by base::StreamProc::SetTriggerWindow().
bool base::StreamProc::CollectTriggers | ( | GlobalTriggerMarksQueue & | queue | ) | [virtual, inherited] |
Method to deliver detected triggers from processor to central manager
Definition at line 420 of file StreamProc.cxx.
References base::StreamProc::fLocalTrig, base::StreamProc::fQueueScanIndexTm, base::GlobalTriggerMarker::globaltm, and base::StreamProc::LocalToGlobalTime().
void base::SysCoreProc::CreateBasicHistograms | ( | ) | [protected, inherited] |
Definition at line 29 of file SysCoreProc.cxx.
References base::SysCoreProc::fALLt, base::SysCoreProc::fAUXt, base::SysCoreProc::fSYNCt, and base::StreamProc::MakeH1().
Referenced by nx::Processor::Processor(), and Processor().
bool base::StreamProc::DistributeTriggers | ( | const GlobalTriggerMarksQueue & | queue | ) | [virtual, inherited] |
This is method to get back identified triggers from central manager
Definition at line 452 of file StreamProc.cxx.
References base::StreamProc::fGlobalTrig, base::StreamProc::GetC1Limit(), and base::StreamProc::triggerWindow.
virtual bool get4::Processor::doTriggerSelection | ( | ) | const [inline, protected, virtual] |
Returns true when processor used to select trigger signal
Reimplemented from base::SysCoreProc.
Definition at line 67 of file Processor.h.
References base::SysCoreProc::fTriggerSignal.
bool base::StreamProc::eraseSyncAt | ( | unsigned | indx | ) | [inherited] |
Removes sync at specified position
Definition at line 193 of file StreamProc.cxx.
References base::StreamProc::fSyncs, and base::StreamProc::fSyncScanIndex.
Referenced by base::ProcMgr::AnalyzeSyncMarkers().
void base::StreamProc::FillH1 | ( | H1handle | h1, | |
double | x, | |||
double | weight = 1. | |||
) | [protected, inherited] |
Definition at line 137 of file StreamProc.cxx.
References base::ProcMgr::FillH1(), and base::StreamProc::mgr().
Referenced by base::StreamProc::AppendSubevent(), base::SysCoreProc::FillMsgPerBrdHist(), nx::Processor::FirstBufferScan(), FirstBufferScan(), and base::StreamProc::TestHitTime().
void base::StreamProc::FillH2 | ( | H1handle | h2, | |
double | x, | |||
double | y, | |||
double | weight = 1. | |||
) | [protected, inherited] |
Definition at line 158 of file StreamProc.cxx.
References base::ProcMgr::FillH2(), and base::StreamProc::mgr().
Referenced by nx::Processor::FirstBufferScan().
void base::SysCoreProc::FillMsgPerBrdHist | ( | unsigned | cnt | ) | [inline, protected, inherited] |
Definition at line 41 of file SysCoreProc.h.
References base::StreamProc::FillH1(), base::SysCoreProc::fMsgPerBrd, and base::SysCoreProc::GetBoardId().
Referenced by nx::Processor::FirstBufferScan(), and FirstBufferScan().
bool get4::Processor::FirstBufferScan | ( | const base::Buffer & | buf | ) | [virtual] |
Scan all messages, find reference signals
Reimplemented from base::StreamProc.
Definition at line 128 of file Processor.cxx.
References base::StreamProc::AddSyncMarker(), base::StreamProc::AddTriggerMarker(), AssignBufferTo(), base::SysCoreProc::fALLt, base::SysCoreProc::fAUXt, base::StreamProc::FillH1(), base::SysCoreProc::FillMsgPerBrdHist(), fIter, fLastRefFalling, fLastRefRising, fMsgsKind, fRefChannel, fRefGet4, base::SysCoreProc::fSyncSource, base::SysCoreProc::fSYNCt, fSysTypes, base::SysCoreProc::fTriggerSignal, GET4, get4_in_use(), Get4TimeDiff(), roc::Message::getAuxChNum(), base::SysCoreProc::GetBoardId(), roc::Message::getGet4ChNum(), roc::Message::getGet4Edge(), roc::Message::getGet4Number(), roc::Message::getGet4Ts(), roc::Message::getMessageType(), roc::Iterator::getMsgFullTime(), roc::Iterator::getMsgFullTimeD(), roc::Message::getRocNumber(), roc::Message::getSyncChNum(), roc::Message::getSyncData(), roc::Message::getSysMesType(), roc::Message::isEpochMsg(), roc::Iterator::islast(), isRefChannel(), base::SyncMarker::local_stamp, base::SyncMarker::localid, base::LocalTriggerMarker::localid, base::SyncMarker::localtm, base::LocalTriggerMarker::localtm, roc::Iterator::msg(), roc::MSG_AUX, roc::MSG_EPOCH, roc::MSG_EPOCH2, roc::MSG_GET4, roc::MSG_HIT, roc::MSG_NOP, roc::MSG_SYNC, roc::MSG_SYS, roc::Iterator::next(), base::Buffer::null(), and base::SyncMarker::uniqueid.
bool get4::Processor::get4_in_use | ( | unsigned | id | ) | [inline, protected] |
Definition at line 54 of file Processor.h.
References GET4.
Referenced by FirstBufferScan(), and SecondBufferScan().
int get4::Processor::Get4TimeDiff | ( | uint64_t | t1, | |
uint64_t | t2 | |||
) | [inline, protected] |
Definition at line 71 of file Processor.h.
Referenced by FirstBufferScan().
unsigned base::SysCoreProc::GetBoardId | ( | ) | const [inline, inherited] |
Returns configured board id
Definition at line 49 of file SysCoreProc.h.
References base::SysCoreProc::fBrdId.
Referenced by base::SysCoreProc::FillMsgPerBrdHist(), nx::Processor::FirstBufferScan(), FirstBufferScan(), nx::Processor::SecondBufferScan(), and SecondBufferScan().
double base::StreamProc::GetC1Limit | ( | C1handle | c1, | |
bool | isleft = true | |||
) | [protected, inherited] |
Definition at line 188 of file StreamProc.cxx.
References base::ProcMgr::GetC1Limit(), and base::StreamProc::mgr().
Referenced by base::StreamProc::DistributeTriggers(), and base::StreamProc::ScanDataForNewTriggers().
const std::string base::StreamProc::GetProcName | ( | ) | const [inline, inherited] |
Definition at line 174 of file StreamProc.h.
References base::StreamProc::fName.
Referenced by base::StreamProc::AppendSubevent(), and nx::Processor::~Processor().
SyncMarker& base::StreamProc::getSync | ( | unsigned | n | ) | [inline, inherited] |
Definition at line 223 of file StreamProc.h.
References base::StreamProc::fSyncs.
Referenced by base::ProcMgr::AnalyzeSyncMarkers(), and base::StreamProc::LocalToGlobalTime().
unsigned get4::Processor::GetTriggerMultipl | ( | unsigned | indx | ) | [protected, virtual] |
Method should return measure for subevent multiplicity
Reimplemented from base::StreamProc.
Definition at line 334 of file Processor.cxx.
References get4::SubEvent::fExtMessages, and base::StreamProc::fGlobalTrig.
bool get4::Processor::isRefChannel | ( | ) | const [inline] |
Definition at line 79 of file Processor.h.
References fRefChannel.
Referenced by FirstBufferScan(), and setRefChannel().
bool base::StreamProc::IsSynchronisationRequired | ( | ) | const [inline, inherited] |
Method indicate if any kind of time-synchronization technique should be applied for the processor. If true, sync messages must be produced by processor and will be used. If false, local time stamps could be immediately used (with any necessary conversion)
Definition at line 191 of file StreamProc.h.
References base::StreamProc::fIsSynchronisationRequired.
Referenced by base::StreamProc::AddSyncMarker(), base::ProcMgr::AnalyzeSyncMarkers(), and base::StreamProc::LocalToGlobalTime().
bool base::StreamProc::IsTimeSorting | ( | ) | const [inline, inherited] |
Definition at line 178 of file StreamProc.h.
References base::StreamProc::fTimeSorting.
Referenced by base::StreamProc::AppendSubevent().
bool get4::Processor::IsValidBufIndex | ( | unsigned | indx | ) | const [inline, protected] |
Definition at line 56 of file Processor.h.
References base::StreamProc::fQueue.
SyncMarker& base::StreamProc::lastSync | ( | ) | [inline, inherited] |
Definition at line 224 of file StreamProc.h.
References base::StreamProc::fSyncs.
double base::StreamProc::local_time_dist | ( | GlobalTime_t | tm1, | |
GlobalTime_t | tm2 | |||
) | [inline, protected, inherited] |
Definition at line 142 of file StreamProc.h.
Referenced by base::StreamProc::LocalToGlobalTime().
base::GlobalTime_t base::StreamProc::LocalToGlobalTime | ( | base::GlobalTime_t | localtm, | |
unsigned * | lastindx = 0 | |||
) | [protected, inherited] |
Method converts local time (in ns representation) to global time TODO: One could introduce more precise method, which works with stamps
Definition at line 203 of file StreamProc.cxx.
References base::StreamProc::getSync(), base::SyncMarker::globaltm, base::StreamProc::IsSynchronisationRequired(), base::StreamProc::local_time_dist(), base::SyncMarker::localtm, and base::StreamProc::numSyncs().
Referenced by base::StreamProc::CollectTriggers(), base::StreamProc::ScanNewBuffersTm(), nx::Processor::SecondBufferScan(), and SecondBufferScan().
base::C1handle base::StreamProc::MakeC1 | ( | const char * | name, | |
double | left, | |||
double | right, | |||
H1handle | h1 = 0 | |||
) | [protected, inherited] |
Definition at line 164 of file StreamProc.cxx.
References base::StreamProc::fPrefix, base::StreamProc::fSubPrefixD, base::StreamProc::fSubPrefixN, base::ProcMgr::MakeC1(), and base::StreamProc::mgr().
Referenced by base::StreamProc::StreamProc().
base::H1handle base::StreamProc::MakeH1 | ( | const char * | name, | |
const char * | title, | |||
int | nbins, | |||
double | left, | |||
double | right, | |||
const char * | xtitle = 0 | |||
) | [protected, inherited] |
Definition at line 120 of file StreamProc.cxx.
References base::StreamProc::fName, base::StreamProc::fPrefix, base::StreamProc::fSubPrefixD, base::StreamProc::fSubPrefixN, base::ProcMgr::MakeH1(), and base::StreamProc::mgr().
Referenced by base::SysCoreProc::CreateBasicHistograms(), nx::Processor::Processor(), Processor(), setRefChannel(), and base::StreamProc::StreamProc().
base::H2handle base::StreamProc::MakeH2 | ( | const char * | name, | |
const char * | title, | |||
int | nbins1, | |||
double | left1, | |||
double | right1, | |||
int | nbins2, | |||
double | left2, | |||
double | right2, | |||
const char * | options = 0 | |||
) | [protected, inherited] |
Definition at line 142 of file StreamProc.cxx.
References base::StreamProc::fName, base::StreamProc::fPrefix, base::StreamProc::fSubPrefixD, base::StreamProc::fSubPrefixN, base::ProcMgr::MakeH2(), and base::StreamProc::mgr().
Referenced by nx::Processor::Processor().
virtual double get4::Processor::MaximumDisorderTm | ( | ) | const [inline, protected, virtual] |
Time constant, defines how far disorder of messages can go
Reimplemented from base::StreamProc.
Definition at line 61 of file Processor.h.
ProcMgr* base::StreamProc::mgr | ( | ) | const [inline, inherited] |
Definition at line 172 of file StreamProc.h.
References base::StreamProc::fMgr.
Referenced by base::StreamProc::ChangeC1(), base::StreamProc::FillH1(), base::StreamProc::FillH2(), base::StreamProc::GetC1Limit(), base::StreamProc::MakeC1(), base::StreamProc::MakeH1(), base::StreamProc::MakeH2(), nx::Processor::Processor(), Processor(), base::SysCoreProc::SysCoreProc(), and base::StreamProc::TestC1().
unsigned base::StreamProc::NumReadySubevents | ( | ) | const [inline, inherited] |
Returns number of already build events
Definition at line 238 of file StreamProc.h.
References base::StreamProc::fGlobalTrigScanIndex.
unsigned base::StreamProc::numSyncs | ( | ) | const [inline, inherited] |
Returns total number of sync markers
Definition at line 222 of file StreamProc.h.
References base::StreamProc::fSyncs.
Referenced by base::ProcMgr::AnalyzeSyncMarkers(), and base::StreamProc::LocalToGlobalTime().
base::GlobalTime_t base::StreamProc::ProvidePotentialFlushTime | ( | GlobalTime_t | last_marker | ) | [protected, virtual, inherited] |
Method should return time, which could be flushed from the processor
Definition at line 325 of file StreamProc.cxx.
References base::StreamProc::fQueue, and base::StreamProc::fQueueScanIndexTm.
bool base::StreamProc::ScanDataForNewTriggers | ( | ) | [virtual, inherited] |
Here each processor should scan data again for new triggers
Definition at line 571 of file StreamProc.cxx.
References base::StreamProc::fGlobalTrig, base::StreamProc::fGlobalTrigRightIndex, base::StreamProc::fGlobalTrigScanIndex, base::StreamProc::fQueue, base::StreamProc::fQueueScanIndexTm, base::StreamProc::GetC1Limit(), base::StreamProc::MaximumDisorderTm(), base::StreamProc::SecondBufferScan(), base::StreamProc::SkipBuffers(), and base::StreamProc::triggerWindow.
bool base::StreamProc::ScanNewBuffers | ( | ) | [virtual, inherited] |
Scanning all new buffers in the queue
Definition at line 280 of file StreamProc.cxx.
References base::StreamProc::FirstBufferScan(), base::StreamProc::fQueue, and base::StreamProc::fQueueScanIndex.
bool base::StreamProc::ScanNewBuffersTm | ( | ) | [virtual, inherited] |
With new calibration set (where possible) time of buffers
Definition at line 306 of file StreamProc.cxx.
References base::StreamProc::fQueue, base::StreamProc::fQueueScanIndexTm, base::StreamProc::fSyncs, base::StreamProc::fSyncScanIndex, and base::StreamProc::LocalToGlobalTime().
bool get4::Processor::SecondBufferScan | ( | const base::Buffer & | buf | ) | [virtual] |
Scan buffer for selecting them inside trigger
Reimplemented from base::StreamProc.
Definition at line 342 of file Processor.cxx.
References AssignBufferTo(), get4::SubEvent::fExtMessages, base::StreamProc::fGlobalTrig, fIter2, get4_in_use(), base::SysCoreProc::GetBoardId(), roc::Message::getGet4Number(), roc::Message::getMessageType(), roc::Iterator::getMsgFullTimeD(), roc::Message::getRocNumber(), roc::Message::isEpochMsg(), roc::Iterator::islast(), base::StreamProc::LocalToGlobalTime(), roc::Iterator::msg(), roc::MSG_AUX, roc::MSG_EPOCH, roc::MSG_EPOCH2, roc::MSG_GET4, roc::MSG_HIT, roc::MSG_NOP, roc::MSG_SYNC, roc::MSG_SYS, roc::Iterator::next(), base::Buffer::null(), and base::StreamProc::TestHitTime().
static void base::SysCoreProc::SetMaxBrdId | ( | unsigned | max | ) | [inline, static, inherited] |
Set maximum board number, used for histograming
Definition at line 86 of file SysCoreProc.h.
References base::SysCoreProc::fMaxBrdId.
void base::SysCoreProc::SetNoSyncSource | ( | ) | [inline, inherited] |
This declares that local time stamp will be used. Should work with single ROC setup or with optical-based readout, where all time counters are synchronized
Definition at line 63 of file SysCoreProc.h.
References base::SysCoreProc::SetSyncSource().
Referenced by Processor().
void base::SysCoreProc::SetNoTriggerSignal | ( | ) | [inline, inherited] |
Disable any trigger generation
Definition at line 71 of file SysCoreProc.h.
References base::SysCoreProc::fTriggerSignal.
Referenced by nx::Processor::Processor(), and Processor().
void base::SysCoreProc::SetPrint | ( | int | nummsg, | |
double | left = -1. , |
|||
double | right = -1. | |||
) | [inline, inherited] |
Set number of messages to be printed Optionally, one could specify time window where messages should be taken Time is same as time on histogram like AUX0t or SYNC1 (truncated to 1000 s)
Definition at line 77 of file SysCoreProc.h.
References base::SysCoreProc::fAnyPrinted, base::SysCoreProc::fNumPrintMessages, base::SysCoreProc::fPrintLeft, and base::SysCoreProc::fPrintRight.
void get4::Processor::setRefChannel | ( | unsigned | ref_get4, | |
unsigned | ref_ch | |||
) |
Definition at line 93 of file Processor.cxx.
References fRefChannel, fRefGet4, GET4, isRefChannel(), base::StreamProc::MakeH1(), and base::StreamProc::SetSubPrefix().
void base::StreamProc::SetSubPrefix | ( | const char * | subname = "" , |
|
int | indx = -1 , |
|||
const char * | subname2 = "" , |
|||
int | indx2 = -1 | |||
) | [protected, inherited] |
Set subprefix for histograms and conditions
Definition at line 84 of file StreamProc.cxx.
References base::StreamProc::fSubPrefixD, and base::StreamProc::fSubPrefixN.
Referenced by nx::Processor::Processor(), Processor(), and setRefChannel().
void base::SysCoreProc::SetSyncSource | ( | unsigned | id | ) | [inline, inherited] |
Set signal id, used for time synchronization One could use SYNC0 (id=0) or SYNC1 (id=1) for synchronization with other components if other id specified, local time stamp will be used and no any sync will be used
Definition at line 54 of file SysCoreProc.h.
References base::StreamProc::fIsSynchronisationRequired, and base::SysCoreProc::fSyncSource.
Referenced by nx::Processor::Processor(), and base::SysCoreProc::SetNoSyncSource().
void base::StreamProc::SetTimeSorting | ( | bool | on | ) | [inline, inherited] |
Enable/disable time sorting of data in output event
Definition at line 177 of file StreamProc.h.
References base::StreamProc::fTimeSorting.
void base::SysCoreProc::SetTriggerSignal | ( | unsigned | id | ) | [inline, inherited] |
Set signal kind which should be used for data selection Values 0..3 are for AUX0 - AUX3 Values 10,11 are for SYNC0, SYNC1
Definition at line 68 of file SysCoreProc.h.
References base::SysCoreProc::fTriggerSignal.
void base::StreamProc::SetTriggerWindow | ( | double | left, | |
double | right | |||
) | [inline, inherited] |
Definition at line 181 of file StreamProc.h.
References base::StreamProc::ChangeC1(), and base::StreamProc::triggerWindow.
void base::StreamProc::SkipAllData | ( | ) | [virtual, inherited] |
Method to remove all buffers, all triggers and so on
Definition at line 292 of file StreamProc.cxx.
References base::StreamProc::fGlobalTrig, base::StreamProc::fLocalTrig, base::StreamProc::fQueue, base::StreamProc::fQueueScanIndexTm, base::StreamProc::fSyncs, base::StreamProc::fSyncScanIndex, and base::StreamProc::SkipBuffers().
bool base::StreamProc::SkipBuffers | ( | unsigned | cnt | ) | [virtual, inherited] |
Force processor to skip buffers from input
Definition at line 372 of file StreamProc.cxx.
References base::StreamProc::fLocalTrig, base::StreamProc::fQueue, base::StreamProc::fQueueScanIndex, base::StreamProc::fQueueScanIndexTm, base::StreamProc::fSyncs, and base::StreamProc::fSyncScanIndex.
Referenced by base::StreamProc::ScanDataForNewTriggers(), and base::StreamProc::SkipAllData().
void get4::Processor::SortDataInSubEvent | ( | base::SubEvent * | subev | ) | [protected, virtual] |
Reimplemented from base::StreamProc.
Definition at line 417 of file Processor.cxx.
References get4::SubEvent::fExtMessages.
int base::StreamProc::TestC1 | ( | C1handle | c1, | |
double | value, | |||
double * | dist = 0 | |||
) | [protected, inherited] |
Definition at line 182 of file StreamProc.cxx.
References base::StreamProc::mgr(), and base::ProcMgr::TestC1().
unsigned base::StreamProc::TestHitTime | ( | const base::GlobalTime_t & | hittime, | |
bool | normal_hit | |||
) | [protected, inherited] |
Method decides to which trigger window belong hit
Definition at line 513 of file StreamProc.cxx.
References base::StreamProc::fGlobalTrig, base::StreamProc::fGlobalTrigRightIndex, base::StreamProc::fGlobalTrigScanIndex, base::StreamProc::FillH1(), base::StreamProc::fTriggerTm, and base::StreamProc::MaximumDisorderTm().
Referenced by nx::Processor::SecondBufferScan(), and SecondBufferScan().
bool base::StreamProc::VerifyFlushTime | ( | const base::GlobalTime_t & | flush_time | ) | [protected, inherited] |
Method must ensure that processor scanned such time and can really skip this data
Definition at line 338 of file StreamProc.cxx.
References base::StreamProc::fQueue, and base::StreamProc::fQueueScanIndexTm.
base::H1handle base::SysCoreProc::fALLt [protected, inherited] |
common histogram for all boards with similar prefix
Definition at line 29 of file SysCoreProc.h.
Referenced by base::SysCoreProc::CreateBasicHistograms(), nx::Processor::FirstBufferScan(), and FirstBufferScan().
bool base::SysCoreProc::fAnyPrinted [protected, inherited] |
right border to stop printing
Definition at line 26 of file SysCoreProc.h.
Referenced by nx::Processor::FirstBufferScan(), and base::SysCoreProc::SetPrint().
base::H1handle base::SysCoreProc::fAUXt[4] [protected, inherited] |
histogram for all messages times
Definition at line 30 of file SysCoreProc.h.
Referenced by base::SysCoreProc::CreateBasicHistograms(), nx::Processor::FirstBufferScan(), and FirstBufferScan().
unsigned base::SysCoreProc::fBrdId [protected, inherited] |
Definition at line 18 of file SysCoreProc.h.
Referenced by base::SysCoreProc::GetBoardId().
GlobalTriggerMarksQueue base::StreamProc::fGlobalTrig [protected, inherited] |
list of global triggers in work
Definition at line 105 of file StreamProc.h.
Referenced by base::StreamProc::AppendSubevent(), base::StreamProc::DistributeTriggers(), nx::Processor::GetTriggerMultipl(), GetTriggerMultipl(), base::StreamProc::ScanDataForNewTriggers(), nx::Processor::SecondBufferScan(), SecondBufferScan(), base::StreamProc::SkipAllData(), base::StreamProc::TestHitTime(), and base::StreamProc::~StreamProc().
unsigned base::StreamProc::fGlobalTrigRightIndex [protected, inherited] |
temporary value, used during second buffers scan
Definition at line 108 of file StreamProc.h.
Referenced by base::StreamProc::ScanDataForNewTriggers(), and base::StreamProc::TestHitTime().
unsigned base::StreamProc::fGlobalTrigScanIndex [protected, inherited] |
index with first trigger which is not yet ready
Definition at line 107 of file StreamProc.h.
Referenced by base::StreamProc::AppendSubevent(), base::StreamProc::NumReadySubevents(), base::StreamProc::ScanDataForNewTriggers(), and base::StreamProc::TestHitTime().
bool base::StreamProc::fIsSynchronisationRequired [protected, inherited] |
true if sync is required
Definition at line 98 of file StreamProc.h.
Referenced by base::StreamProc::IsSynchronisationRequired(), and base::SysCoreProc::SetSyncSource().
roc::Iterator get4::Processor::fIter [protected] |
Definition at line 37 of file Processor.h.
Referenced by FirstBufferScan().
roc::Iterator get4::Processor::fIter2 [protected] |
first iterator over all messages
Definition at line 38 of file Processor.h.
Referenced by SecondBufferScan().
uint64_t get4::Processor::fLastRefFalling [protected] |
time used for ref calculation
Definition at line 52 of file Processor.h.
Referenced by FirstBufferScan().
uint64_t get4::Processor::fLastRefRising [protected] |
time used for ref calculation
Definition at line 51 of file Processor.h.
Referenced by FirstBufferScan().
LocalTriggerMarksQueue base::StreamProc::fLocalTrig [protected, inherited] |
list of local triggers
Definition at line 103 of file StreamProc.h.
Referenced by base::StreamProc::AddTriggerMarker(), base::StreamProc::CollectTriggers(), base::StreamProc::SkipAllData(), base::StreamProc::SkipBuffers(), and base::StreamProc::~StreamProc().
unsigned base::SysCoreProc::fMaxBrdId = 16 [static, protected, inherited] |
histogram for SYNC times
Definition at line 33 of file SysCoreProc.h.
Referenced by base::SysCoreProc::SetMaxBrdId(), and base::SysCoreProc::SysCoreProc().
ProcMgr* base::StreamProc::fMgr [protected, inherited] |
processor name, used for event naming
Definition at line 91 of file StreamProc.h.
Referenced by base::StreamProc::mgr(), and base::StreamProc::StreamProc().
base::H1handle base::SysCoreProc::fMsgPerBrd [protected, inherited] |
true when any message was printed
Definition at line 28 of file SysCoreProc.h.
Referenced by base::SysCoreProc::FillMsgPerBrdHist(), and base::SysCoreProc::SysCoreProc().
base::H1handle get4::Processor::fMsgsKind [protected] |
second iterator over all messages
Definition at line 40 of file Processor.h.
Referenced by FirstBufferScan(), and Processor().
base::H1handle base::StreamProc::fMultipl [protected, inherited] |
histogram with time relative to the trigger
Definition at line 117 of file StreamProc.h.
Referenced by base::StreamProc::AppendSubevent(), and base::StreamProc::StreamProc().
std::string base::StreamProc::fName [protected, inherited] |
Definition at line 89 of file StreamProc.h.
Referenced by base::StreamProc::GetProcName(), base::StreamProc::MakeH1(), base::StreamProc::MakeH2(), and base::StreamProc::StreamProc().
int get4::Processor::fNumBadHits [protected] |
Definition at line 46 of file Processor.h.
Referenced by Processor().
int get4::Processor::fNumHits [protected] |
int base::SysCoreProc::fNumPrintMessages [protected, inherited] |
Definition at line 23 of file SysCoreProc.h.
Referenced by nx::Processor::FirstBufferScan(), and base::SysCoreProc::SetPrint().
std::string base::StreamProc::fPrefix [protected, inherited] |
prefix, used for histogram names
Definition at line 112 of file StreamProc.h.
Referenced by base::StreamProc::MakeC1(), base::StreamProc::MakeH1(), base::StreamProc::MakeH2(), and base::StreamProc::StreamProc().
double base::SysCoreProc::fPrintLeft [protected, inherited] |
number of messages to be printed
Definition at line 24 of file SysCoreProc.h.
Referenced by nx::Processor::FirstBufferScan(), and base::SysCoreProc::SetPrint().
double base::SysCoreProc::fPrintRight [protected, inherited] |
left border to start printing
Definition at line 25 of file SysCoreProc.h.
Referenced by nx::Processor::FirstBufferScan(), and base::SysCoreProc::SetPrint().
BuffersQueue base::StreamProc::fQueue [protected, inherited] |
Definition at line 93 of file StreamProc.h.
Referenced by base::StreamProc::AddNextBuffer(), nx::Processor::IsValidBufIndex(), IsValidBufIndex(), base::StreamProc::ProvidePotentialFlushTime(), base::StreamProc::ScanDataForNewTriggers(), base::StreamProc::ScanNewBuffers(), base::StreamProc::ScanNewBuffersTm(), base::StreamProc::SkipAllData(), base::StreamProc::SkipBuffers(), base::StreamProc::VerifyFlushTime(), and base::StreamProc::~StreamProc().
unsigned base::StreamProc::fQueueScanIndex [protected, inherited] |
index of next buffer which should be scanned
Definition at line 95 of file StreamProc.h.
Referenced by base::StreamProc::AddSyncMarker(), base::StreamProc::AddTriggerMarker(), base::StreamProc::ScanNewBuffers(), and base::StreamProc::SkipBuffers().
unsigned base::StreamProc::fQueueScanIndexTm [protected, inherited] |
index of buffer to scan and set correct times of the buffer head
Definition at line 96 of file StreamProc.h.
Referenced by base::StreamProc::CollectTriggers(), base::StreamProc::ProvidePotentialFlushTime(), base::StreamProc::ScanDataForNewTriggers(), base::StreamProc::ScanNewBuffersTm(), base::StreamProc::SkipAllData(), base::StreamProc::SkipBuffers(), and base::StreamProc::VerifyFlushTime().
unsigned get4::Processor::fRefChannel [protected] |
Definition at line 49 of file Processor.h.
Referenced by FirstBufferScan(), isRefChannel(), Processor(), and setRefChannel().
unsigned get4::Processor::fRefGet4 [protected] |
Definition at line 48 of file Processor.h.
Referenced by FirstBufferScan(), Processor(), and setRefChannel().
std::string base::StreamProc::fSubPrefixD [protected, inherited] |
sub-prefix for histogram directory
Definition at line 113 of file StreamProc.h.
Referenced by base::StreamProc::MakeC1(), base::StreamProc::MakeH1(), base::StreamProc::MakeH2(), and base::StreamProc::SetSubPrefix().
std::string base::StreamProc::fSubPrefixN [protected, inherited] |
sub-prefix for histogram names
Definition at line 114 of file StreamProc.h.
Referenced by base::StreamProc::MakeC1(), base::StreamProc::MakeH1(), base::StreamProc::MakeH2(), and base::StreamProc::SetSubPrefix().
bool base::StreamProc::fSyncFlag [protected, inherited] |
boolean, used in sync adjustment procedure
Definition at line 101 of file StreamProc.h.
Referenced by base::ProcMgr::AnalyzeSyncMarkers().
SyncMarksQueue base::StreamProc::fSyncs [protected, inherited] |
list of sync markers
Definition at line 99 of file StreamProc.h.
Referenced by base::StreamProc::AddSyncMarker(), base::StreamProc::eraseSyncAt(), base::StreamProc::getSync(), base::StreamProc::lastSync(), base::StreamProc::numSyncs(), base::StreamProc::ScanNewBuffersTm(), base::StreamProc::SkipAllData(), base::StreamProc::SkipBuffers(), and base::StreamProc::~StreamProc().
unsigned base::StreamProc::fSyncScanIndex [protected, inherited] |
sync scan index, use to adjust syncs over many processors
Definition at line 100 of file StreamProc.h.
Referenced by base::ProcMgr::AnalyzeSyncMarkers(), base::StreamProc::eraseSyncAt(), base::StreamProc::ScanNewBuffersTm(), base::StreamProc::SkipAllData(), and base::StreamProc::SkipBuffers().
unsigned base::SysCoreProc::fSyncSource [protected, inherited] |
board id, which will be used for the filling
Definition at line 20 of file SysCoreProc.h.
Referenced by nx::Processor::FirstBufferScan(), FirstBufferScan(), and base::SysCoreProc::SetSyncSource().
base::H1handle base::SysCoreProc::fSYNCt[2] [protected, inherited] |
histogram for AUX times
Definition at line 31 of file SysCoreProc.h.
Referenced by base::SysCoreProc::CreateBasicHistograms(), nx::Processor::FirstBufferScan(), and FirstBufferScan().
base::H1handle get4::Processor::fSysTypes [protected] |
histogram with messages kinds
Definition at line 41 of file Processor.h.
Referenced by FirstBufferScan(), and Processor().
bool base::StreamProc::fTimeSorting [protected, inherited] |
defines if time sorting should be used for the messages
Definition at line 110 of file StreamProc.h.
Referenced by base::StreamProc::IsTimeSorting(), and base::StreamProc::SetTimeSorting().
unsigned base::SysCoreProc::fTriggerSignal [protected, inherited] |
Definition at line 21 of file SysCoreProc.h.
Referenced by doTriggerSelection(), base::SysCoreProc::doTriggerSelection(), nx::Processor::FirstBufferScan(), FirstBufferScan(), base::SysCoreProc::SetNoTriggerSignal(), and base::SysCoreProc::SetTriggerSignal().
base::H1handle base::StreamProc::fTriggerTm [protected, inherited] |
Definition at line 116 of file StreamProc.h.
Referenced by base::StreamProc::StreamProc(), and base::StreamProc::TestHitTime().
std::vector<get4::Get4Rec> get4::Processor::GET4 [protected] |
histogram with system types
Definition at line 43 of file Processor.h.
Referenced by FirstBufferScan(), get4_in_use(), Processor(), and setRefChannel().
base::C1handle base::StreamProc::triggerWindow [protected, inherited] |
histogram of event multiplicity
window used for data selection
Definition at line 119 of file StreamProc.h.
Referenced by base::StreamProc::DistributeTriggers(), base::StreamProc::ScanDataForNewTriggers(), base::StreamProc::SetTriggerWindow(), and base::StreamProc::StreamProc().