DiracTriggerInfo Class Reference

#include <DiracReader.hh>

Collaboration diagram for DiracTriggerInfo:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 DiracTriggerInfo ()
bool read (unsigned char *buf)

Public Attributes

ui16 bcId
ui16 data [64]
bool reject
ui16 pileUp
ui16 trigger
i64 bcIdAbs
ui32 bcIdFpga

Detailed Description

Definition at line 88 of file DiracReader.hh.


Constructor & Destructor Documentation

DiracTriggerInfo::DiracTriggerInfo (  ) 

Definition at line 180 of file DiracReader.cpp.

00180                                    : bcId(0) {
00181     for (int chNum = 0; chNum < 64; chNum++)
00182         data[chNum] = 0;
00183 }; // DiracTriggerInfo


Member Function Documentation

bool DiracTriggerInfo::read ( unsigned char *  buf  ) 

Definition at line 187 of file DiracReader.cpp.

Referenced by DiracReader::getAcqData().

00187                                               {
00188 
00189     // initialize chip data
00190     bcId = 0;
00191     for (int chNum = 0; chNum < 64; chNum++)
00192         data[chNum] = 0;
00193 
00194     // get bcId from DIF (Fpga)
00195     bcIdFpga = *buf++ << 8; // read 16 bits
00196     bcIdFpga += *buf++;
00197 
00198     // get absolute bcId - does not work unless data is casted into i64 !
00199     bcIdAbs = ((i64) (*buf++)) << 40; // read 48 bits
00200     bcIdAbs += ((i64) (*buf++)) << 32;
00201     bcIdAbs += ((i64) (*buf++)) << 24;
00202     bcIdAbs += ((i64) (*buf++)) << 16;
00203     bcIdAbs += ((i64) (*buf++)) << 8;
00204     bcIdAbs += ((i64) (*buf++));
00205 
00206     // get last data
00207     unsigned int data = (*buf++ << 8); // read 16 bits
00208     data += *buf++;
00209     reject = (data & 0x0001); // bit 0
00210     pileUp = (data & 0x003E) >> 1; // 5 bits (1-5)
00211     trigger = (data & 0xFFC0) >> 6; // 10 bits (6-15)
00212 
00213     FILE_LOG(logDEBUG) << "    bcIdFPGA:" << hex << bcIdFpga
00214             << ", bcIdAbs:" << hex << bcIdAbs
00215             << ", data:" << hex << data
00216             << ", reject:" << hex << reject
00217             << ", pileUp:" << hex << pileUp
00218             << ", trigger:" << hex << trigger << endl;
00219 
00220     FILE_LOG(logDEBUG1) << "  DiracTriggerInfo read" << endl;
00221 
00222     return true;
00223 }; // DiracTriggerInfo.read


Member Data Documentation

ui16 DiracTriggerInfo::bcId

Definition at line 95 of file DiracReader.hh.

Referenced by DiracReader::getAcqData(), DiracReader::newHit(), and read().

ui16 DiracTriggerInfo::data[64]

Definition at line 96 of file DiracReader.hh.

Referenced by DiracTriggerInfo(), DiracReader::getAcqData(), DiracReader::newHit(), and read().

bool DiracTriggerInfo::reject

Definition at line 98 of file DiracReader.hh.

Referenced by read().

ui16 DiracTriggerInfo::pileUp

Definition at line 99 of file DiracReader.hh.

Referenced by read().

ui16 DiracTriggerInfo::trigger

Definition at line 100 of file DiracReader.hh.

Referenced by DiracReader::newHit(), and read().

i64 DiracTriggerInfo::bcIdAbs

Definition at line 101 of file DiracReader.hh.

Referenced by DiracReader::newHit(), and read().

ui32 DiracTriggerInfo::bcIdFpga

Definition at line 102 of file DiracReader.hh.

Referenced by DiracReader::newHit(), and read().


The documentation for this class was generated from the following files:
Generated on Mon Jan 7 13:18:16 2013 for MicromegasFramework by  doxygen 1.4.7