Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

TrigSAF Class Reference

#include <TrigSAF.h>

List of all members.

Public Member Functions

int getDataGroup1One (int index) const
int getDataGroup1One (int index) const
int getDataGroup1Zero (int index) const
int getDataGroup1Zero (int index) const
int getDataGroup2One (int index) const
int getDataGroup2One (int index) const
int getDataGroup2Zero (int index) const
int getDataGroup2Zero (int index) const
int getDataGroup3 (int index) const
int getDataGroup3 (int index) const
int getDataGroup4 (int index) const
int getDataGroup4 (int index) const
const std::string & getName () const
const std::string & getName () const
void initialize ()
void initialize ()
void setSAFTrigData (uint32_t boardId, uint32_t window, uint32_t datasize, const uint32_t *data)
void setSAFTrigData (uint32_t boardId, uint32_t window, uint32_t datasize, const uint32_t *data)
 TrigSAF (char *name)
 TrigSAF (char *name)
virtual ~TrigSAF ()
virtual ~TrigSAF ()

Private Attributes

int m_dataGroup1_One [48]
int m_dataGroup1_Zero [48]
int m_dataGroup2_One [48]
int m_dataGroup2_Zero [48]
int m_dataGroup3 [48]
int m_dataGroup4 [48]
std::string m_name


Constructor & Destructor Documentation

TrigSAF::TrigSAF char *  name  ) 
 

00005 {
00006   m_name = name;
00007 }

virtual TrigSAF::~TrigSAF  )  [inline, virtual]
 

00011 {}

TrigSAF::TrigSAF char *  name  ) 
 

virtual TrigSAF::~TrigSAF  )  [inline, virtual]
 

00011 {}


Member Function Documentation

int TrigSAF::getDataGroup1One int  index  )  const [inline]
 

00019 { return m_dataGroup1_One[index]; }

int TrigSAF::getDataGroup1One int  index  )  const [inline]
 

00019 { return m_dataGroup1_One[index]; }

int TrigSAF::getDataGroup1Zero int  index  )  const [inline]
 

00020 { return m_dataGroup1_Zero[index]; }

int TrigSAF::getDataGroup1Zero int  index  )  const [inline]
 

00020 { return m_dataGroup1_Zero[index]; }

int TrigSAF::getDataGroup2One int  index  )  const [inline]
 

00022 { return m_dataGroup2_One[index]; }

int TrigSAF::getDataGroup2One int  index  )  const [inline]
 

00022 { return m_dataGroup2_One[index]; }

int TrigSAF::getDataGroup2Zero int  index  )  const [inline]
 

00023 { return m_dataGroup2_Zero[index]; }

int TrigSAF::getDataGroup2Zero int  index  )  const [inline]
 

00023 { return m_dataGroup2_Zero[index]; }

int TrigSAF::getDataGroup3 int  index  )  const [inline]
 

00025 { return m_dataGroup3[index]; }

int TrigSAF::getDataGroup3 int  index  )  const [inline]
 

00025 { return m_dataGroup3[index]; }

int TrigSAF::getDataGroup4 int  index  )  const [inline]
 

00026 { return m_dataGroup4[index]; }

int TrigSAF::getDataGroup4 int  index  )  const [inline]
 

00026 { return m_dataGroup4[index]; }

const std::string& TrigSAF::getName  )  const [inline]
 

00017 { return m_name; }

const std::string& TrigSAF::getName  )  const [inline]
 

00017 { return m_name; }

void TrigSAF::initialize  ) 
 

void TrigSAF::initialize  ) 
 

00010 {
00011   for(int i = 0; i < 48; i++)
00012   {
00013     m_dataGroup1_One[i]  = 0;
00014     m_dataGroup1_Zero[i] = 0;
00015     m_dataGroup2_One[i]  = 0;
00016     m_dataGroup2_Zero[i] = 0;
00017     m_dataGroup3[i] = 0;
00018     m_dataGroup4[i] = 0;
00019   }
00020 }

void TrigSAF::setSAFTrigData uint32_t  boardId,
uint32_t  window,
uint32_t  datasize,
const uint32_t *  data
 

void TrigSAF::setSAFTrigData uint32_t  boardId,
uint32_t  window,
uint32_t  datasize,
const uint32_t *  data
 

00022                                                                                                         {
00023 
00024   if((boardId != 0xd2)&&(boardId != 0xd4)&&(boardId != 0xd6)) std::cerr << "ERROR: You set the wrong board data to TrigSAF!!!" << std::endl;
00025   
00026   uint32_t jBegin = 0, jEnd = 0;
00027   if(boardId == 0xd2) { jBegin = 32; jEnd = jBegin+16; } //SAF1
00028   if(boardId == 0xd4) { jBegin = 16; jEnd = jBegin+16; } //SAF2
00029   if(boardId == 0xd6) { jBegin =  0; jEnd = jBegin+16; } //SAF3
00030 
00031   for(uint32_t i = 0; i < datasize; i++) {
00032     uint32_t dataId = ((data[i] >> 16) & 0xFF);
00033     for(uint32_t j = jBegin, mask = 1; j < jEnd; j++, mask <<= 1) {
00034       if(dataId == 1) {
00035         if((data[i] & mask) != 0) {
00036           m_dataGroup1_One[j]    += 1;
00037         }
00038         if(m_dataGroup1_One[j] == 0) m_dataGroup1_Zero[j] += 1;
00039       }
00040       if(dataId == 2) {
00041         if((data[i] & mask) != 0) {
00042           m_dataGroup2_One[j] += 1;
00043         }
00044         if(m_dataGroup2_One[j] == 0) m_dataGroup2_Zero[j] += 1;
00045       }
00046       if(dataId == 3) {
00047         if((data[i] & mask) != 0) {
00048           m_dataGroup3[j]    = 1;
00049         }
00050       }
00051       if(dataId == 4) {
00052         if((data[i] & mask) != 0) {
00053           m_dataGroup4[j]    = 1; 
00054         }
00055       }
00056     }
00057   }
00058 }


Member Data Documentation

int TrigSAF::m_dataGroup1_One [private]
 

int TrigSAF::m_dataGroup1_Zero [private]
 

int TrigSAF::m_dataGroup2_One [private]
 

int TrigSAF::m_dataGroup2_Zero [private]
 

int TrigSAF::m_dataGroup3 [private]
 

int TrigSAF::m_dataGroup4 [private]
 

std::string TrigSAF::m_name [private]
 


The documentation for this class was generated from the following files:
Generated on Wed Feb 2 19:05:41 2011 for BOSS6.5.5 by  doxygen 1.3.9.1