ROOTANA
Public Member Functions | Data Fields | Private Member Functions
UnpackVF48 Class Reference

#include <UnpackVF48A.h>

Collaboration diagram for UnpackVF48:
Collaboration graph
[legend]

Public Member Functions

 UnpackVF48 ()
 
 ~UnpackVF48 ()
 
void Reset ()
 
void UnpackStream (int module, const void *data_ptr, int data_size)
 
VF48eventGetEvent (bool flush=false)
 
void SetNumModules (int num_modules)
 
void SetModulesMask (uint32_t mask)
 
void SetGroupEnableMask (int module, int grp_enable_mask)
 
void SetNumSamples (int module, int num_samples)
 
void SetDisasm (bool stream, bool structure, bool samples)
 
void SetCoincTime (double time_sec)
 
void SetTimestampResync (bool enable)
 
void SetTsFreq (int module, double ts_freq_hz)
 
void SetChanEnable (int module, int grp, int chan_enable)
 
void SetFlushIncompleteThreshold (int threshold)
 
double GetTsFreq (int module)
 

Data Fields

int fNumModules
 
uint32_t fModulesMask
 
uint32_t fGroupEnabled [VF48_MAX_MODULES]
 
bool fChanEnabled [VF48_MAX_MODULES][VF48_MAX_CHANNELS]
 
int fNumSamples [VF48_MAX_MODULES]
 
double fFreq [VF48_MAX_MODULES]
 
double fCoinc
 
unsigned fFlushIncompleteThreshold
 
bool fDisasmStream
 
bool fDisasmStructure
 
bool fDisasmSamples
 
bool fTimestampResyncEnable
 
int fEventNo
 
int fBadDataCount
 
std::deque< VF48event * > fBuffer
 
int wgrp [VF48_MAX_MODULES]
 
int wmax [VF48_MAX_MODULES][VF48_MAX_GROUPS]
 
int wptr [VF48_MAX_MODULES][VF48_MAX_GROUPS]
 
uint32_t * wbuf [VF48_MAX_MODULES][VF48_MAX_GROUPS]
 
bool wacc [VF48_MAX_MODULES][VF48_MAX_GROUPS]
 
int wdiscarded [VF48_MAX_MODULES]
 
uint64_t ts_first [VF48_MAX_MODULES][VF48_MAX_GROUPS]
 
uint64_t ts_last [VF48_MAX_MODULES][VF48_MAX_GROUPS]
 

Private Member Functions

void UnpackEvent (int module, int group, const uint32_t *data, int wcount)
 
VF48eventFindEvent (int unit, double timestamp, bool dup=false)
 
VF48moduleFindModule (int unit, int group, double timestamp)
 
void AddToEvent (VF48module *m)
 
void CompleteModule (VF48module *m)
 
void CompleteEvent (VF48event *e)
 
void ResetEventBuffer ()
 
void ResetStreamBuffer ()
 
void PrintAllEvents ()
 
int NewGroup (int unit)
 

Detailed Description

Definition at line 65 of file UnpackVF48A.h.

Constructor & Destructor Documentation

◆ UnpackVF48()

UnpackVF48::UnpackVF48 ( )

Definition at line 140 of file UnpackVF48A.cxx.

Here is the call graph for this function:

◆ ~UnpackVF48()

UnpackVF48::~UnpackVF48 ( )

Definition at line 173 of file UnpackVF48A.cxx.

Here is the call graph for this function:

Member Function Documentation

◆ AddToEvent()

void UnpackVF48::AddToEvent ( VF48module m)
private

Definition at line 470 of file UnpackVF48A.cxx.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CompleteEvent()

void UnpackVF48::CompleteEvent ( VF48event e)
private

Definition at line 448 of file UnpackVF48A.cxx.

Here is the caller graph for this function:

◆ CompleteModule()

void UnpackVF48::CompleteModule ( VF48module m)
private

Definition at line 379 of file UnpackVF48A.cxx.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FindEvent()

VF48event * UnpackVF48::FindEvent ( int  unit,
double  timestamp,
bool  dup = false 
)
private

Definition at line 266 of file UnpackVF48A.cxx.

Here is the caller graph for this function:

◆ FindModule()

VF48module * UnpackVF48::FindModule ( int  unit,
int  group,
double  timestamp 
)
private

Definition at line 587 of file UnpackVF48A.cxx.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetEvent()

VF48event * UnpackVF48::GetEvent ( bool  flush = false)

Definition at line 281 of file UnpackVF48A.cxx.

Here is the call graph for this function:

◆ GetTsFreq()

double UnpackVF48::GetTsFreq ( int  module)

Definition at line 254 of file UnpackVF48A.cxx.

◆ NewGroup()

int UnpackVF48::NewGroup ( int  unit)
private

Definition at line 1044 of file UnpackVF48A.cxx.

Here is the caller graph for this function:

◆ PrintAllEvents()

void UnpackVF48::PrintAllEvents ( )
private

Definition at line 185 of file UnpackVF48A.cxx.

Here is the caller graph for this function:

◆ Reset()

void UnpackVF48::Reset ( )

Definition at line 341 of file UnpackVF48A.cxx.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ResetEventBuffer()

void UnpackVF48::ResetEventBuffer ( )
private

Definition at line 576 of file UnpackVF48A.cxx.

Here is the caller graph for this function:

◆ ResetStreamBuffer()

void UnpackVF48::ResetStreamBuffer ( )
private

Definition at line 563 of file UnpackVF48A.cxx.

Here is the caller graph for this function:

◆ SetChanEnable()

void UnpackVF48::SetChanEnable ( int  module,
int  grp,
int  chan_enable 
)

Definition at line 234 of file UnpackVF48A.cxx.

◆ SetCoincTime()

void UnpackVF48::SetCoincTime ( double  time_sec)

Definition at line 193 of file UnpackVF48A.cxx.

◆ SetDisasm()

void UnpackVF48::SetDisasm ( bool  stream,
bool  structure,
bool  samples 
)

◆ SetFlushIncompleteThreshold()

void UnpackVF48::SetFlushIncompleteThreshold ( int  threshold)

Definition at line 261 of file UnpackVF48A.cxx.

◆ SetGroupEnableMask()

void UnpackVF48::SetGroupEnableMask ( int  module,
int  grp_enable_mask 
)

Definition at line 220 of file UnpackVF48A.cxx.

◆ SetModulesMask()

void UnpackVF48::SetModulesMask ( uint32_t  mask)

Definition at line 214 of file UnpackVF48A.cxx.

◆ SetNumModules()

void UnpackVF48::SetNumModules ( int  num_modules)

Definition at line 203 of file UnpackVF48A.cxx.

◆ SetNumSamples()

void UnpackVF48::SetNumSamples ( int  module,
int  num_samples 
)

Definition at line 227 of file UnpackVF48A.cxx.

◆ SetTimestampResync()

void UnpackVF48::SetTimestampResync ( bool  enable)

Definition at line 198 of file UnpackVF48A.cxx.

◆ SetTsFreq()

void UnpackVF48::SetTsFreq ( int  module,
double  ts_freq_hz 
)

Definition at line 247 of file UnpackVF48A.cxx.

◆ UnpackEvent()

void UnpackVF48::UnpackEvent ( int  module,
int  group,
const uint32_t *  data,
int  wcount 
)
private

Definition at line 614 of file UnpackVF48A.cxx.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ UnpackStream()

void UnpackVF48::UnpackStream ( int  module,
const void *  data_ptr,
int  data_size 
)

Definition at line 1061 of file UnpackVF48A.cxx.

Here is the call graph for this function:

Field Documentation

◆ fBadDataCount

int UnpackVF48::fBadDataCount

Definition at line 108 of file UnpackVF48A.h.

◆ fBuffer

std::deque<VF48event*> UnpackVF48::fBuffer

Definition at line 111 of file UnpackVF48A.h.

◆ fChanEnabled

bool UnpackVF48::fChanEnabled[VF48_MAX_MODULES][VF48_MAX_CHANNELS]

Definition at line 95 of file UnpackVF48A.h.

◆ fCoinc

double UnpackVF48::fCoinc

Definition at line 98 of file UnpackVF48A.h.

◆ fDisasmSamples

bool UnpackVF48::fDisasmSamples

Definition at line 103 of file UnpackVF48A.h.

◆ fDisasmStream

bool UnpackVF48::fDisasmStream

Definition at line 101 of file UnpackVF48A.h.

◆ fDisasmStructure

bool UnpackVF48::fDisasmStructure

Definition at line 102 of file UnpackVF48A.h.

◆ fEventNo

int UnpackVF48::fEventNo

Definition at line 107 of file UnpackVF48A.h.

◆ fFlushIncompleteThreshold

unsigned UnpackVF48::fFlushIncompleteThreshold

Definition at line 99 of file UnpackVF48A.h.

◆ fFreq

double UnpackVF48::fFreq[VF48_MAX_MODULES]

Definition at line 97 of file UnpackVF48A.h.

◆ fGroupEnabled

uint32_t UnpackVF48::fGroupEnabled[VF48_MAX_MODULES]

Definition at line 94 of file UnpackVF48A.h.

◆ fModulesMask

uint32_t UnpackVF48::fModulesMask

Definition at line 93 of file UnpackVF48A.h.

◆ fNumModules

int UnpackVF48::fNumModules

Definition at line 92 of file UnpackVF48A.h.

◆ fNumSamples

int UnpackVF48::fNumSamples[VF48_MAX_MODULES]

Definition at line 96 of file UnpackVF48A.h.

◆ fTimestampResyncEnable

bool UnpackVF48::fTimestampResyncEnable

Definition at line 105 of file UnpackVF48A.h.

◆ ts_first

uint64_t UnpackVF48::ts_first[VF48_MAX_MODULES][VF48_MAX_GROUPS]

Definition at line 122 of file UnpackVF48A.h.

◆ ts_last

uint64_t UnpackVF48::ts_last[VF48_MAX_MODULES][VF48_MAX_GROUPS]

Definition at line 123 of file UnpackVF48A.h.

◆ wacc

bool UnpackVF48::wacc[VF48_MAX_MODULES][VF48_MAX_GROUPS]

Definition at line 118 of file UnpackVF48A.h.

◆ wbuf

uint32_t* UnpackVF48::wbuf[VF48_MAX_MODULES][VF48_MAX_GROUPS]

Definition at line 117 of file UnpackVF48A.h.

◆ wdiscarded

int UnpackVF48::wdiscarded[VF48_MAX_MODULES]

Definition at line 119 of file UnpackVF48A.h.

◆ wgrp

int UnpackVF48::wgrp[VF48_MAX_MODULES]

Definition at line 114 of file UnpackVF48A.h.

◆ wmax

int UnpackVF48::wmax[VF48_MAX_MODULES][VF48_MAX_GROUPS]

Definition at line 115 of file UnpackVF48A.h.

◆ wptr

int UnpackVF48::wptr[VF48_MAX_MODULES][VF48_MAX_GROUPS]

Definition at line 116 of file UnpackVF48A.h.


The documentation for this class was generated from the following files: