#include <FecTraits.h>
Inheritance diagram for DybDaq::FecTraits:
Public Types | |
typedef std::vector< BitsDefinition > | Definitions |
Public Member Functions | |
virtual | ~FecTraits () |
virtual unsigned int | fecSize () const =0 |
virtual void | initializeFec (char *buffer) const =0 |
virtual unsigned int | illegalMarker () const |
virtual unsigned int | illegalField () const |
virtual unsigned int | majorVersion () const =0 |
virtual unsigned int | minorVersion () const =0 |
virtual const std::string | versionString () const =0 |
virtual unsigned int | marker (unsigned int marker) const |
virtual const char * | boolAsString (bool value) const |
const DaqTraits::Definitions & | bitsDefinitions (unsigned int component) const |
Static Public Member Functions | |
static const FecTraits & | defaultTraits () |
static const FecTraits * | readTraits (const char *&buffer) |
static const FecTraits * | getTraits (const unsigned int version) |
Static Public Attributes | |
static const unsigned int | kData = 0 |
static const unsigned int | kFecMarkerValue = 0x7e7e |
static const unsigned int | kFecMarker = 0 |
static const unsigned int | kRpcCFId = FecTraits::kFecMarker + 1 |
static const unsigned int | kRpcFecId = FecTraits::kRpcCFId + 1 |
static const unsigned int | kTransErr1 = FecTraits::kRpcFecId + 1 |
static const unsigned int | kTransErr2 = FecTraits::kTransErr1 + 1 |
static const unsigned int | kTrigType = FecTraits::kTransErr2 + 1 |
static const unsigned int | kFullFlag = FecTraits::kTrigType + 1 |
static const unsigned int | kValidGPS = FecTraits::kFullFlag + 1 |
static const unsigned int | kValidCLK = FecTraits::kValidGPS + 1 |
static const unsigned int | kUsingUTC = FecTraits::kValidCLK + 1 |
static const unsigned int | kSecond = FecTraits::kUsingUTC + 1 |
static const unsigned int | kNanoSecond = FecTraits::kSecond + 1 |
static const unsigned int | kFecHitMap = FecTraits::kNanoSecond + 1 |
Protected Member Functions | |
FecTraits () | |
unsigned int | index (unsigned int field) const |
virtual unsigned int | markersEnd () const =0 |
virtual const unsigned int * | markers () const =0 |
virtual unsigned int | fieldsEnd () const =0 |
virtual const unsigned int * | indices () const =0 |
virtual const unsigned int * | shifts () const =0 |
virtual const unsigned int * | masks () const =0 |
virtual const std::string * | descriptions () const |
virtual DaqTraits::Definitions * | definitions (unsigned int component) const |
virtual void | setDefinitions (DaqTraits::Definitions *definitions, unsigned int component) |
virtual const unsigned int * | componentFields (unsigned int component) const |
virtual const unsigned int | componentFieldsEnd (unsigned int component) const |
Static Protected Member Functions | |
static unsigned int | readUnsignedInt (const char *&buffer, const DaqTraits &traits, unsigned int field) |
Private Member Functions | |
FecTraits (const FecTraits &) | |
FecTraits & | operator= (const FecTraits &) |
Friends | |
friend class | DaqBuffer |
Definition at line 8 of file FecTraits.h.
FecTraits::~FecTraits | ( | ) | [virtual] |
FecTraits::FecTraits | ( | ) | [protected] |
DybDaq::FecTraits::FecTraits | ( | const FecTraits & | ) | [private] |
const FecTraits & FecTraits::defaultTraits | ( | ) | [static] |
Definition at line 38 of file FecTraits.cc.
00038 { 00039 if ( m_allTraits.size() == 0 ) { 00040 m_allTraits.insert(std::pair<const char*, FecTraits*>(FecTraits_v1_3::key(), new FecTraits_v1_3())); 00041 } 00042 return *m_allTraits[ FecTraits_v1_3::key() ]; 00043 }
const FecTraits * FecTraits::readTraits | ( | const char *& | buffer | ) | [static] |
Definition at line 45 of file FecTraits.cc.
00045 { 00046 defaultTraits(); 00047 return m_allTraits[ FecTraits_v1_3::key() ]; 00048 }
const FecTraits * FecTraits::getTraits | ( | const unsigned int | version | ) | [static] |
Definition at line 50 of file FecTraits.cc.
00050 { 00051 defaultTraits(); 00052 if ( version == 0x13 ) { 00053 return m_allTraits[ FecTraits_v1_3::key() ]; 00054 } 00055 return m_allTraits[ FecTraits_v1_3::key() ]; 00056 }
virtual unsigned int DybDaq::FecTraits::fecSize | ( | ) | const [pure virtual] |
Implemented in DybDaq::FecTraits_v1_3.
virtual void DybDaq::FecTraits::initializeFec | ( | char * | buffer | ) | const [pure virtual] |
Implemented in DybDaq::FecTraits_v1_3.
unsigned int FecTraits::illegalMarker | ( | ) | const [virtual] |
unsigned int FecTraits::illegalField | ( | ) | const [virtual] |
Reimplemented in DybDaq::FecTraits_v1_3.
const unsigned int FecTraits::kData = 0 [static] |
Definition at line 14 of file FecTraits.h.
const unsigned int FecTraits::kFecMarkerValue = 0x7e7e [static] |
Definition at line 17 of file FecTraits.h.
const unsigned int FecTraits::kFecMarker = 0 [static] |
Definition at line 21 of file FecTraits.h.
const unsigned int FecTraits::kRpcCFId = FecTraits::kFecMarker + 1 [static] |
Definition at line 24 of file FecTraits.h.
const unsigned int FecTraits::kRpcFecId = FecTraits::kRpcCFId + 1 [static] |
Definition at line 27 of file FecTraits.h.
const unsigned int FecTraits::kTransErr1 = FecTraits::kRpcFecId + 1 [static] |
Definition at line 30 of file FecTraits.h.
const unsigned int FecTraits::kTransErr2 = FecTraits::kTransErr1 + 1 [static] |
Definition at line 31 of file FecTraits.h.
const unsigned int FecTraits::kTrigType = FecTraits::kTransErr2 + 1 [static] |
Definition at line 34 of file FecTraits.h.
const unsigned int FecTraits::kFullFlag = FecTraits::kTrigType + 1 [static] |
Definition at line 37 of file FecTraits.h.
const unsigned int FecTraits::kValidGPS = FecTraits::kFullFlag + 1 [static] |
Definition at line 40 of file FecTraits.h.
const unsigned int FecTraits::kValidCLK = FecTraits::kValidGPS + 1 [static] |
Definition at line 43 of file FecTraits.h.
const unsigned int FecTraits::kUsingUTC = FecTraits::kValidCLK + 1 [static] |
Definition at line 46 of file FecTraits.h.
const unsigned int FecTraits::kSecond = FecTraits::kUsingUTC + 1 [static] |
Definition at line 49 of file FecTraits.h.
const unsigned int FecTraits::kNanoSecond = FecTraits::kSecond + 1 [static] |
Definition at line 52 of file FecTraits.h.
const unsigned int FecTraits::kFecHitMap = FecTraits::kNanoSecond + 1 [static] |
Definition at line 55 of file FecTraits.h.