GRSISort
Created by P.C. Bender
Developement Team: P.C. Bender, R. Dunlop, V. Bildstein
An extension of the ROOT analysis Framework
TGRSIDataParser Class Reference

The TGRSIDataParser is the DAQ dependent part of GRSISort. It takes a "DAQ-dependent"-flavoured MIDAS file and converts it into a generic TFragment that the rest of GRSISort can deal with. This is where event word masks are applied, and any changes to the event format must be implemented.

Definition at line 44 of file TGRSIDataParser.h.

Public Types

enum  EBank {
  EBank::kWFDN = 0, EBank::kGRF1 = 1, EBank::kGRF2 = 2, EBank::kGRF3 = 3,
  EBank::kGRF4 = 4, EBank::kFME0 = 5, EBank::kFME1 = 6, EBank::kFME2 = 7,
  EBank::kFME3 = 8, EBank::kMADC = 9, EBank::kEMMT = 10
}
 
enum  EDataParserState {
  EDataParserState::kGood, EDataParserState::kBadHeader, EDataParserState::kMissingWords, EDataParserState::kBadScalerLowTS,
  EDataParserState::kBadScalerValue, EDataParserState::kBadScalerHighTS, EDataParserState::kBadScalerType, EDataParserState::kBadTriggerId,
  EDataParserState::kBadLowTS, EDataParserState::kBadHighTS, EDataParserState::kSecondHeader, EDataParserState::kWrongNofWords,
  EDataParserState::kNotSingleCfd, EDataParserState::kSizeMismatch, EDataParserState::kBadFooter, EDataParserState::kFault,
  EDataParserState::kMissingPsd, EDataParserState::kMissingCfd, EDataParserState::kMissingCharge, EDataParserState::kBadBank,
  EDataParserState::kBadModuleType, EDataParserState::kEndOfData, EDataParserState::kBadRFScalerWord, EDataParserState::kUndefined
}
 

Public Member Functions

 TGRSIDataParser ()
 
 ~TGRSIDataParser ()
 
virtual std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TFragment > > > & AddGoodOutputQueue (size_t maxSize=50000)
 
virtual std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TBadFragment > > > & BadOutputQueue ()
 
int CaenPhaToFragment (uint32_t *data, int size, std::shared_ptr< TMidasEvent > &event)
 
int CaenPsdToFragment (uint32_t *data, int size, std::shared_ptr< TMidasEvent > &event)
 
virtual void ClearQueue ()
 
int EightPIDataToFragment (uint32_t stream, uint32_t *data, int size, unsigned int midasSerialNumber=0, time_t midasTime=0)
 
int EmmaMadcDataToFragment (uint32_t *data, const int size, std::shared_ptr< TMidasEvent > &event)
 
int EmmaTdcDataToFragment (uint32_t *data, const int size, std::shared_ptr< TMidasEvent > &event)
 
int EPIXToScalar (float *data, int size, unsigned int midasSerialNumber=0, time_t midasTime=0)
 
int GriffinDataToFragment (uint32_t *data, int size, EBank bank, unsigned int midasSerialNumber=0, time_t midasTime=0)
 
int GriffinDataToPPGEvent (uint32_t *data, int size, unsigned int midasSerialNumber=0, time_t midasTime=0)
 
int GriffinDataToScalerEvent (uint32_t *data, int address)
 
virtual size_t ItemsPushed ()
 
virtual std::string OutputQueueStatus ()
 
int Process (std::shared_ptr< TRawEvent >) override
 
int ProcessGriffin (uint32_t *data, const int &size, const EBank &bank, std::shared_ptr< TMidasEvent > &event)
 
void Push (ThreadsafeQueue< std::shared_ptr< const TBadFragment >> &queue, const std::shared_ptr< TBadFragment > &frag)
 
void Push (std::vector< std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TFragment >>>> &queues, const std::shared_ptr< TFragment > &frag)
 
int RFScalerToFragment (uint32_t *data, const int size, const std::shared_ptr< TFragment > &frag)
 
virtual std::shared_ptr< ThreadsafeQueue< std::shared_ptr< TEpicsFrag > > > & ScalerOutputQueue ()
 
int SCLRToScalar (uint32_t *data, int size, unsigned int midasSerialNumber=0, time_t midasTime=0)
 
virtual void SetFinished ()
 
virtual void SetNoWaveForms (bool temp=true)
 
virtual void SetRecordDiag (bool temp=true)
 
virtual void SetStatusVariables (std::atomic_size_t *itemsPopped, std::atomic_long *inputSize)
 
int TigressDataToFragment (uint32_t *data, int size, std::shared_ptr< TMidasEvent > &event)
 

Protected Attributes

std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TBadFragment > > > fBadOutputQueue
 
TChannelfChannel
 
bool fFragmentHasWaveform
 
std::map< int, int > fFragmentIdMap
 
TFragmentMap fFragmentMap
 
std::vector< std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TFragment > > > > fGoodOutputQueues
 
std::atomic_long * fInputSize
 
std::atomic_size_t * fItemsPopped
 
unsigned long fLastDaqId
 
unsigned long fLastNetworkPacket
 
std::map< UInt_t, Long64_t > fLastTimeStampMap
 
unsigned long fLastTriggerId
 
const unsigned long fMaxTriggerId
 
bool fNoWaveforms
 
bool fRecordDiag
 
std::shared_ptr< ThreadsafeQueue< std::shared_ptr< TEpicsFrag > > > fScalerOutputQueue
 

Static Protected Attributes

static TGRSIOptionsfOptions = nullptr
 

Private Member Functions

bool SetGRIFCc (uint32_t, const std::shared_ptr< TFragment > &)
 
bool SetGRIFChannelTriggerId (uint32_t, const std::shared_ptr< TFragment > &)
 
bool SetGRIFDeadTime (uint32_t, const std::shared_ptr< TFragment > &)
 
bool SetGRIFHeader (uint32_t, const std::shared_ptr< TFragment > &, EBank)
 
bool SetGRIFNetworkPacket (uint32_t, const std::shared_ptr< TFragment > &)
 
bool SetGRIFPrimaryFilterId (uint32_t, const std::shared_ptr< TFragment > &)
 
bool SetGRIFPrimaryFilterPattern (uint32_t, const std::shared_ptr< TFragment > &, EBank)
 
bool SetGRIFPsd (uint32_t, const std::shared_ptr< TFragment > &)
 
bool SetGRIFTimeStampLow (uint32_t, const std::shared_ptr< TFragment > &)
 
bool SetGRIFWaveForm (uint32_t, const std::shared_ptr< TFragment > &)
 
bool SetNewPPGPattern (uint32_t, TPPGData *)
 
bool SetOldPPGPattern (uint32_t, TPPGData *)
 
bool SetPPGHighTimeStamp (uint32_t, TPPGData *)
 
bool SetPPGLowTimeStamp (uint32_t, TPPGData *)
 
bool SetPPGNetworkPacket (uint32_t, TPPGData *)
 
bool SetScalerHighTimeStamp (uint32_t, TScalerData *, int &)
 
bool SetScalerLowTimeStamp (uint32_t, TScalerData *)
 
bool SetScalerNetworkPacket (uint32_t, TScalerData *)
 
bool SetScalerValue (int, uint32_t, TScalerData *)
 
void SetTIGAddress (uint32_t, const std::shared_ptr< TFragment > &)
 
void SetTIGCfd (uint32_t, const std::shared_ptr< TFragment > &)
 
void SetTIGCharge (uint32_t, const std::shared_ptr< TFragment > &)
 
void SetTIGLed (uint32_t, const std::shared_ptr< TFragment > &)
 
bool SetTIGTimeStamp (uint32_t *, const std::shared_ptr< TFragment > &)
 
bool SetTIGTriggerID (uint32_t, const std::shared_ptr< TFragment > &)
 
void SetTIGWave (uint32_t, const std::shared_ptr< TFragment > &)
 

Private Attributes

bool fIgnoreMissingChannel
 
EDataParserState fState
 

#include <TGRSIDataParser.h>

+ Inheritance diagram for TGRSIDataParser:
+ Collaboration diagram for TGRSIDataParser:

Member Enumeration Documentation

◆ EBank

Enumerator
kWFDN 
kGRF1 
kGRF2 
kGRF3 
kGRF4 
kFME0 
kFME1 
kFME2 
kFME3 
kMADC 
kEMMT 

Definition at line 50 of file TGRSIDataParser.h.

◆ EDataParserState

Enumerator
kGood 
kBadHeader 
kMissingWords 
kBadScalerLowTS 
kBadScalerValue 
kBadScalerHighTS 
kBadScalerType 
kBadTriggerId 
kBadLowTS 
kBadHighTS 
kSecondHeader 
kWrongNofWords 
kNotSingleCfd 
kSizeMismatch 
kBadFooter 
kFault 
kMissingPsd 
kMissingCfd 
kMissingCharge 
kBadBank 
kBadModuleType 
kEndOfData 
kBadRFScalerWord 
kUndefined 

Definition at line 52 of file TGRSIDataParser.h.

Constructor & Destructor Documentation

◆ TGRSIDataParser()

TGRSIDataParser::TGRSIDataParser ( )

◆ ~TGRSIDataParser()

TGRSIDataParser::~TGRSIDataParser ( )

Definition at line 27 of file TGRSIDataParser.cxx.

Member Function Documentation

◆ AddGoodOutputQueue()

virtual std::shared_ptr<ThreadsafeQueue<std::shared_ptr<const TFragment> > >& TDataParser::AddGoodOutputQueue ( size_t  maxSize = 50000)
inlinevirtualinherited

Definition at line 53 of file TDataParser.h.

References TDataParser::fGoodOutputQueues.

Referenced by TUnpackingLoop::AddGoodOutputQueue().

◆ BadOutputQueue()

virtual std::shared_ptr<ThreadsafeQueue<std::shared_ptr<const TBadFragment> > >& TDataParser::BadOutputQueue ( )
inlinevirtualinherited

Definition at line 61 of file TDataParser.h.

References TDataParser::fBadOutputQueue.

Referenced by TUnpackingLoop::BadOutputQueue().

◆ CaenPhaToFragment()

int TGRSIDataParser::CaenPhaToFragment ( uint32_t *  data,
int  size,
std::shared_ptr< TMidasEvent > &  event 
)

Converts a Caen flavoured MIDAS events into TFragments and returns the number of events processed

Definition at line 1784 of file TGRSIDataParser.cxx.

References TDataParser::fGoodOutputQueues, TDataParser::fOptions, TGRSIOptions::Get(), hex(), TDataParser::Push(), s, and TGRSIOptions::SuppressErrors().

Referenced by Process().

◆ CaenPsdToFragment()

int TGRSIDataParser::CaenPsdToFragment ( uint32_t *  data,
int  size,
std::shared_ptr< TMidasEvent > &  event 
)

Converts a Caen flavoured MIDAS events into TFragments and returns the number of events processed

Definition at line 1584 of file TGRSIDataParser.cxx.

References TDataParser::fGoodOutputQueues, TDataParser::fOptions, TGRSIOptions::Get(), hex(), TDataParser::Push(), s, and TGRSIOptions::SuppressErrors().

Referenced by Process().

◆ ClearQueue()

void TDataParser::ClearQueue ( )
virtualinherited

◆ EightPIDataToFragment()

int TGRSIDataParser::EightPIDataToFragment ( uint32_t  stream,
uint32_t *  data,
int  size,
unsigned int  midasSerialNumber = 0,
time_t  midasTime = 0 
)

◆ EmmaMadcDataToFragment()

int TGRSIDataParser::EmmaMadcDataToFragment ( uint32_t *  data,
const int  size,
std::shared_ptr< TMidasEvent > &  event 
)

Converts a MIDAS File from the Emma DAQ into a TFragment.

Definition at line 2008 of file TGRSIDataParser.cxx.

References TDataParser::fChannel, TDataParser::fGoodOutputQueues, TChannel::GetChannel(), TDataParser::Push(), xferhfts, xfermidsn, and xfermidts.

Referenced by Process().

◆ EmmaTdcDataToFragment()

int TGRSIDataParser::EmmaTdcDataToFragment ( uint32_t *  data,
const int  size,
std::shared_ptr< TMidasEvent > &  event 
)

◆ EPIXToScalar()

int TGRSIDataParser::EPIXToScalar ( float *  data,
int  size,
unsigned int  midasSerialNumber = 0,
time_t  midasTime = 0 
)

Definition at line 1979 of file TGRSIDataParser.cxx.

References TDataParser::fScalerOutputQueue, and TEpicsFrag::GetEpicsVariableName().

Referenced by Process().

◆ GriffinDataToFragment()

int TGRSIDataParser::GriffinDataToFragment ( uint32_t *  data,
int  size,
EBank  bank,
unsigned int  midasSerialNumber = 0,
time_t  midasTime = 0 
)

◆ GriffinDataToPPGEvent()

int TGRSIDataParser::GriffinDataToPPGEvent ( uint32_t *  data,
int  size,
unsigned int  midasSerialNumber = 0,
time_t  midasTime = 0 
)

◆ GriffinDataToScalerEvent()

◆ ItemsPushed()

virtual size_t TDataParser::ItemsPushed ( )
inlinevirtualinherited

Definition at line 76 of file TDataParser.h.

References TDataParser::fGoodOutputQueues.

Referenced by TUnpackingLoop::GetItemsPushed().

◆ OutputQueueStatus()

std::string TDataParser::OutputQueueStatus ( )
virtualinherited

Definition at line 80 of file TDataParser.cxx.

References TDataParser::fGoodOutputQueues.

Referenced by TUnpackingLoop::EndStatus().

◆ Process()

◆ ProcessGriffin()

int TGRSIDataParser::ProcessGriffin ( uint32_t *  data,
const int &  size,
const EBank bank,
std::shared_ptr< TMidasEvent > &  event 
)

◆ Push() [1/2]

◆ Push() [2/2]

void TDataParser::Push ( std::vector< std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TFragment >>>> &  queues,
const std::shared_ptr< TFragment > &  frag 
)
inherited

Definition at line 61 of file TDataParser.cxx.

References TDataParser::fFragmentIdMap.

◆ RFScalerToFragment()

int TGRSIDataParser::RFScalerToFragment ( uint32_t *  data,
const int  size,
const std::shared_ptr< TFragment > &  frag 
)

◆ ScalerOutputQueue()

virtual std::shared_ptr<ThreadsafeQueue<std::shared_ptr<TEpicsFrag> > >& TDataParser::ScalerOutputQueue ( )
inlinevirtualinherited

Definition at line 63 of file TDataParser.h.

References TDataParser::fScalerOutputQueue.

Referenced by TUnpackingLoop::ScalerOutputQueue().

◆ SCLRToScalar()

int TGRSIDataParser::SCLRToScalar ( uint32_t *  data,
int  size,
unsigned int  midasSerialNumber = 0,
time_t  midasTime = 0 
)

◆ SetFinished()

void TDataParser::SetFinished ( )
virtualinherited

◆ SetGRIFCc()

bool TGRSIDataParser::SetGRIFCc ( uint32_t  value,
const std::shared_ptr< TFragment > &  frag 
)
private

set the short integration and the lower 9 bits of the long integration

Definition at line 1213 of file TGRSIDataParser.cxx.

Referenced by GriffinDataToFragment().

◆ SetGRIFChannelTriggerId()

bool TGRSIDataParser::SetGRIFChannelTriggerId ( uint32_t  value,
const std::shared_ptr< TFragment > &  frag 
)
private

Sets the Griffin Channel Trigger ID

Definition at line 1144 of file TGRSIDataParser.cxx.

Referenced by GriffinDataToFragment().

◆ SetGRIFDeadTime()

bool TGRSIDataParser::SetGRIFDeadTime ( uint32_t  value,
const std::shared_ptr< TFragment > &  frag 
)
private

Sets the Griffin deadtime and the upper 14 bits of the timestamp

Definition at line 1201 of file TGRSIDataParser.cxx.

Referenced by GriffinDataToFragment().

◆ SetGRIFHeader()

bool TGRSIDataParser::SetGRIFHeader ( uint32_t  value,
const std::shared_ptr< TFragment > &  frag,
EBank  bank 
)
private

Definition at line 1058 of file TGRSIDataParser.cxx.

References kGRF1, kGRF2, kGRF3, and kGRF4.

Referenced by GriffinDataToFragment().

◆ SetGRIFNetworkPacket()

bool TGRSIDataParser::SetGRIFNetworkPacket ( uint32_t  value,
const std::shared_ptr< TFragment > &  frag 
)
private

Ignores the network packet number (for now)

Definition at line 1154 of file TGRSIDataParser.cxx.

Referenced by GriffinDataToFragment().

◆ SetGRIFPrimaryFilterId()

bool TGRSIDataParser::SetGRIFPrimaryFilterId ( uint32_t  value,
const std::shared_ptr< TFragment > &  frag 
)
private

Sets the Griffin Primary filter ID and PPG

Definition at line 1133 of file TGRSIDataParser.cxx.

Referenced by GriffinDataToFragment().

◆ SetGRIFPrimaryFilterPattern()

bool TGRSIDataParser::SetGRIFPrimaryFilterPattern ( uint32_t  value,
const std::shared_ptr< TFragment > &  frag,
EBank  bank 
)
private

Sets the Griffin Primary Filter Pattern

Definition at line 1110 of file TGRSIDataParser.cxx.

References TDataParser::fFragmentHasWaveform, kGRF1, kGRF2, kGRF3, and kGRF4.

Referenced by GriffinDataToFragment().

◆ SetGRIFPsd()

bool TGRSIDataParser::SetGRIFPsd ( uint32_t  value,
const std::shared_ptr< TFragment > &  frag 
)
private

set the zero crossing and the higher 10 bits of the long integration

Definition at line 1224 of file TGRSIDataParser.cxx.

Referenced by GriffinDataToFragment().

◆ SetGRIFTimeStampLow()

bool TGRSIDataParser::SetGRIFTimeStampLow ( uint32_t  value,
const std::shared_ptr< TFragment > &  frag 
)
private

Sets the lower 28 bits of the griffin time stamp

Definition at line 1172 of file TGRSIDataParser.cxx.

Referenced by GriffinDataToFragment().

◆ SetGRIFWaveForm()

bool TGRSIDataParser::SetGRIFWaveForm ( uint32_t  value,
const std::shared_ptr< TFragment > &  frag 
)
private

Sets the Griffin waveform if record_waveform is set to true

Definition at line 1183 of file TGRSIDataParser.cxx.

Referenced by GriffinDataToFragment().

◆ SetNewPPGPattern()

bool TGRSIDataParser::SetNewPPGPattern ( uint32_t  value,
TPPGData ppgevent 
)
private

Definition at line 1447 of file TGRSIDataParser.cxx.

References TPPGData::SetNewPPG().

Referenced by GriffinDataToPPGEvent().

◆ SetNoWaveForms()

virtual void TDataParser::SetNoWaveForms ( bool  temp = true)
inlinevirtualinherited

Definition at line 46 of file TDataParser.h.

References TDataParser::fNoWaveforms.

Referenced by TUnpackingLoop::SetNoWaveForms().

◆ SetOldPPGPattern()

bool TGRSIDataParser::SetOldPPGPattern ( uint32_t  value,
TPPGData ppgevent 
)
private

Definition at line 1456 of file TGRSIDataParser.cxx.

References TPPGData::SetOldPPG().

Referenced by GriffinDataToPPGEvent().

◆ SetPPGHighTimeStamp()

bool TGRSIDataParser::SetPPGHighTimeStamp ( uint32_t  value,
TPPGData ppgevent 
)
private

Definition at line 1482 of file TGRSIDataParser.cxx.

References TPPGData::SetHighTimeStamp().

Referenced by GriffinDataToPPGEvent().

◆ SetPPGLowTimeStamp()

bool TGRSIDataParser::SetPPGLowTimeStamp ( uint32_t  value,
TPPGData ppgevent 
)
private

Definition at line 1473 of file TGRSIDataParser.cxx.

References TPPGData::SetLowTimeStamp().

Referenced by GriffinDataToPPGEvent().

◆ SetPPGNetworkPacket()

bool TGRSIDataParser::SetPPGNetworkPacket ( uint32_t  value,
TPPGData ppgevent 
)
private

Definition at line 1462 of file TGRSIDataParser.cxx.

References TPPGData::SetNetworkPacketId().

Referenced by GriffinDataToPPGEvent().

◆ SetRecordDiag()

virtual void TDataParser::SetRecordDiag ( bool  temp = true)
inlinevirtualinherited

Definition at line 47 of file TDataParser.h.

References TDataParser::fRecordDiag.

Referenced by TUnpackingLoop::SetRecordDiag().

◆ SetScalerHighTimeStamp()

bool TGRSIDataParser::SetScalerHighTimeStamp ( uint32_t  value,
TScalerData scalerEvent,
int &  type 
)
private

◆ SetScalerLowTimeStamp()

bool TGRSIDataParser::SetScalerLowTimeStamp ( uint32_t  value,
TScalerData scalerEvent 
)
private

Definition at line 1555 of file TGRSIDataParser.cxx.

References TScalerData::SetLowTimeStamp().

Referenced by GriffinDataToScalerEvent().

◆ SetScalerNetworkPacket()

bool TGRSIDataParser::SetScalerNetworkPacket ( uint32_t  value,
TScalerData scalerEvent 
)
private

Definition at line 1546 of file TGRSIDataParser.cxx.

References TScalerData::SetNetworkPacketId().

Referenced by GriffinDataToScalerEvent().

◆ SetScalerValue()

bool TGRSIDataParser::SetScalerValue ( int  index,
uint32_t  value,
TScalerData scalerEvent 
)
private

Definition at line 1578 of file TGRSIDataParser.cxx.

References TScalerData::SetScaler().

Referenced by GriffinDataToScalerEvent().

◆ SetStatusVariables()

virtual void TDataParser::SetStatusVariables ( std::atomic_size_t *  itemsPopped,
std::atomic_long *  inputSize 
)
inlinevirtualinherited

Definition at line 65 of file TDataParser.h.

References TDataParser::fInputSize, and TDataParser::fItemsPopped.

Referenced by TUnpackingLoop::Iteration().

◆ SetTIGAddress()

void TGRSIDataParser::SetTIGAddress ( uint32_t  value,
const std::shared_ptr< TFragment > &  currentFrag 
)
private

Sets the digitizer address of the 'currentFrag' TFragment

Definition at line 218 of file TGRSIDataParser.cxx.

Referenced by TigressDataToFragment().

◆ SetTIGCfd()

void TGRSIDataParser::SetTIGCfd ( uint32_t  value,
const std::shared_ptr< TFragment > &  currentFrag 
)
private

Sets the CFD of a Tigress Event.

Definition at line 252 of file TGRSIDataParser.cxx.

Referenced by TigressDataToFragment().

◆ SetTIGCharge()

void TGRSIDataParser::SetTIGCharge ( uint32_t  value,
const std::shared_ptr< TFragment > &  currentFragment 
)
private

Sets the integrated charge of a Tigress event.

Definition at line 268 of file TGRSIDataParser.cxx.

References TDataParser::fChannel, TChannel::GetChannel(), and TChannel::GetDigitizerTypeString().

Referenced by TigressDataToFragment().

◆ SetTIGLed()

void TGRSIDataParser::SetTIGLed ( uint32_t  ,
const std::shared_ptr< TFragment > &   
)
private

Sets the LED of a Tigress event.

Definition at line 261 of file TGRSIDataParser.cxx.

Referenced by TigressDataToFragment().

◆ SetTIGTimeStamp()

bool TGRSIDataParser::SetTIGTimeStamp ( uint32_t *  data,
const std::shared_ptr< TFragment > &  currentFrag 
)
private

Sets the Timestamp of a Tigress Event

Definition at line 332 of file TGRSIDataParser.cxx.

References hex().

Referenced by TigressDataToFragment().

◆ SetTIGTriggerID()

bool TGRSIDataParser::SetTIGTriggerID ( uint32_t  value,
const std::shared_ptr< TFragment > &  currentFrag 
)
private

Sets the Trigger ID of a Tigress event.

Definition at line 300 of file TGRSIDataParser.cxx.

References DBLUE, DRED, TDataParser::fLastTriggerId, TDataParser::fMaxTriggerId, and RESET_COLOR.

Referenced by TigressDataToFragment().

◆ SetTIGWave()

void TGRSIDataParser::SetTIGWave ( uint32_t  value,
const std::shared_ptr< TFragment > &  currentFrag 
)
private

Sets the waveform for a Tigress event.

Definition at line 224 of file TGRSIDataParser.cxx.

Referenced by TigressDataToFragment().

◆ TigressDataToFragment()

int TGRSIDataParser::TigressDataToFragment ( uint32_t *  data,
int  size,
std::shared_ptr< TMidasEvent > &  event 
)

Converts A MIDAS File from the Tigress DAQ into a TFragment.

check whether the fragment is 'good'

Definition at line 125 of file TGRSIDataParser.cxx.

References DYELLOW, TDataParser::fGoodOutputQueues, TDataParser::fNoWaveforms, TChannel::GetChannel(), hex(), TDataParser::Push(), RED, RESET_COLOR, SetTIGAddress(), SetTIGCfd(), SetTIGCharge(), SetTIGLed(), SetTIGTimeStamp(), SetTIGTriggerID(), and SetTIGWave().

Referenced by Process().

Member Data Documentation

◆ fBadOutputQueue

◆ fChannel

TChannel* TDataParser::fChannel
protectedinherited

◆ fFragmentHasWaveform

bool TDataParser::fFragmentHasWaveform
protectedinherited

Definition at line 103 of file TDataParser.h.

Referenced by GriffinDataToFragment(), and SetGRIFPrimaryFilterPattern().

◆ fFragmentIdMap

std::map<int, int> TDataParser::fFragmentIdMap
protectedinherited

Definition at line 102 of file TDataParser.h.

Referenced by TDataParser::Push().

◆ fFragmentMap

TFragmentMap TDataParser::fFragmentMap
protectedinherited

Class that holds a map of fragments per address, takes care of calculating charges for GRF4 banks.

Definition at line 105 of file TDataParser.h.

Referenced by GriffinDataToFragment().

◆ fGoodOutputQueues

◆ fIgnoreMissingChannel

bool TGRSIDataParser::fIgnoreMissingChannel
private

flag that's set to TGRSIOptions::IgnoreMissingChannel

Definition at line 104 of file TGRSIDataParser.h.

Referenced by GriffinDataToFragment(), and TGRSIDataParser().

◆ fInputSize

std::atomic_long* TDataParser::fInputSize
protectedinherited

◆ fItemsPopped

std::atomic_size_t* TDataParser::fItemsPopped
protectedinherited

◆ fLastDaqId

unsigned long TDataParser::fLastDaqId
protectedinherited

The last daq ID in the raw file.

Definition at line 98 of file TDataParser.h.

◆ fLastNetworkPacket

unsigned long TDataParser::fLastNetworkPacket
protectedinherited

The last network packet recieved.

Definition at line 100 of file TDataParser.h.

◆ fLastTimeStampMap

std::map<UInt_t, Long64_t> TDataParser::fLastTimeStampMap
protectedinherited

Definition at line 107 of file TDataParser.h.

Referenced by GriffinDataToFragment().

◆ fLastTriggerId

unsigned long TDataParser::fLastTriggerId
protectedinherited

The last Trigged ID in the raw File.

Definition at line 99 of file TDataParser.h.

Referenced by SetTIGTriggerID().

◆ fMaxTriggerId

const unsigned long TDataParser::fMaxTriggerId
protectedinherited

The last trigger ID Called.

Definition at line 97 of file TDataParser.h.

Referenced by SetTIGTriggerID().

◆ fNoWaveforms

bool TDataParser::fNoWaveforms
protectedinherited

The flag to turn wave_forms on or off.

Definition at line 93 of file TDataParser.h.

Referenced by GriffinDataToFragment(), TDataParser::SetNoWaveForms(), and TigressDataToFragment().

◆ fOptions

TGRSIOptions * TDataParser::fOptions = nullptr
staticprotectedinherited

Static pointer to TGRSIOptions, gets set on the first call of GriffinDataToFragment.

Definition at line 109 of file TDataParser.h.

Referenced by CaenPhaToFragment(), CaenPsdToFragment(), and GriffinDataToFragment().

◆ fRecordDiag

bool TDataParser::fRecordDiag
protectedinherited

◆ fScalerOutputQueue

std::shared_ptr<ThreadsafeQueue<std::shared_ptr<TEpicsFrag> > > TDataParser::fScalerOutputQueue
protectedinherited

◆ fState