#include <FecData.h>
Inheritance diagram for DybDaq::FecData:
Public Types | |
typedef std::pair< const char *, unsigned int > | OutputBuffer |
typedef std::vector< OutputBuffer > | OutputBufferList |
typedef std::vector< ByteInspector * > | Bytes |
typedef std::vector< BitsInspector * > | Bits |
Public Member Functions | |
virtual | ~FecData () |
unsigned int | rpcCFId () const |
unsigned int | rpcFecId () const |
bool | transErr1 () const |
bool | transErr2 () const |
unsigned int | trigType () const |
bool | fullFlag () const |
bool | validGPS () const |
bool | validCLK () const |
bool | usingUTC () const |
unsigned int | second () const |
unsigned int | nanoSecond () const |
unsigned int | hitMap () const |
virtual unsigned int | bufferSize () const |
const FecTraits & | fecTraits () const |
bool | hasDaqTraits () const |
virtual const DaqTraits & | daqTraits () const |
virtual unsigned int | gather (OutputBufferList &outputBuffers) const |
virtual unsigned int | inspect (DaqBuffer::Bytes &inspectors) const |
Static Public Attributes | |
static const unsigned int | kBytesInInt |
static const unsigned int | kUndefinedFormatComponent |
Protected Member Functions | |
virtual unsigned int | formatComponent () const |
const char * | buffer () const |
char * | buffer () |
bool | hasByteBuffer () const |
const ByteBuffer & | byteBuffer () const |
unsigned int | fillInspectors (DaqBuffer::Bytes &inspectors, unsigned int component, unsigned int cursor) const |
virtual bool | readBool (const unsigned int field) const |
virtual int | readInt (const unsigned int field) const |
virtual unsigned char | readUnsignedChar (const unsigned int field) const |
virtual unsigned int | readUnsignedInt (const unsigned int field) const |
virtual void | writeField (const bool value, const unsigned int field) |
virtual void | writeField (const int value, const unsigned int field) |
virtual void | writeField (const unsigned int value, const unsigned int field) |
Private Member Functions | |
FecData (const unsigned int rpcCFId, const unsigned int rpcFecId, const bool transErr1, const bool transErr2, const unsigned int trigType, const bool fullFlag, const bool validGPS, const bool validCLK, const bool usingUTC, const unsigned int second, const unsigned int nanoSecond, const unsigned int hitMap, const FecTraits &traits) | |
FecData (const ByteBuffer &byteBuffer, const FecTraits &traits) | |
FecData () | |
FecData (const FecData &) | |
FecData & | operator= (const FecData &) |
void | setRpcCFId (const unsigned int rpcCFId) |
void | setRpcFecId (const unsigned int rpcFecId) |
void | setTransErr1 (const bool transErr1) |
void | setTransErr2 (const bool transErr2) |
void | setTrigType (const unsigned int trigType) |
void | setFullFlag (const bool fullFlag) |
void | setValidGPS (const bool validGPS) |
void | setValidCLK (const bool validCLK) |
void | setUsingUTC (const bool usingUTC) |
void | setSecond (const unsigned int second) |
void | setNanoSecond (const unsigned int nanoSecond) |
void | setHitMap (const unsigned int hitMap) |
Friends | |
class | FecReadout |
Definition at line 14 of file FecData.h.
FecData::~FecData | ( | ) | [virtual] |
FecData::FecData | ( | const unsigned int | rpcCFId, | |
const unsigned int | rpcFecId, | |||
const bool | transErr1, | |||
const bool | transErr2, | |||
const unsigned int | trigType, | |||
const bool | fullFlag, | |||
const bool | validGPS, | |||
const bool | validCLK, | |||
const bool | usingUTC, | |||
const unsigned int | second, | |||
const unsigned int | nanoSecond, | |||
const unsigned int | hitMap, | |||
const FecTraits & | traits | |||
) | [private] |
Definition at line 8 of file FecData.cc.
00021 : FecBuffer(new char[ traits.fecSize() * kBytesInInt ], traits) 00022 { 00023 traits.initializeFec( buffer() ); 00024 setRpcCFId(rpcCFId); 00025 setRpcFecId(rpcFecId); 00026 setTransErr1(transErr1); 00027 setTransErr2(transErr2); 00028 setTrigType(trigType); 00029 setFullFlag(fullFlag); 00030 setValidGPS(validGPS); 00031 setValidCLK(validCLK); 00032 setUsingUTC(usingUTC); 00033 setSecond(second); 00034 setNanoSecond(nanoSecond); 00035 setHitMap(hitMap); 00036 }
FecData::FecData | ( | const ByteBuffer & | byteBuffer, | |
const FecTraits & | traits | |||
) | [private] |
Definition at line 38 of file FecData.cc.
00039 : FecBuffer(byteBuffer, traits) 00040 { 00041 byteBuffer.position( byteBuffer.position() + fecTraits().fecSize() * kBytesInInt ); 00042 }
DybDaq::FecData::FecData | ( | ) | [private] |
DybDaq::FecData::FecData | ( | const FecData & | ) | [private] |
unsigned int FecData::rpcCFId | ( | ) | const |
Definition at line 52 of file FecData.cc.
00052 { 00053 return readUnsignedInt(FecTraits::kRpcCFId); 00054 }
unsigned int FecData::rpcFecId | ( | ) | const |
Definition at line 56 of file FecData.cc.
00056 { 00057 return readUnsignedInt(FecTraits::kRpcFecId); 00058 }
bool FecData::transErr1 | ( | ) | const |
Definition at line 60 of file FecData.cc.
00060 { 00061 return readBool(FecTraits::kTransErr1); 00062 }
bool FecData::transErr2 | ( | ) | const |
Definition at line 64 of file FecData.cc.
00064 { 00065 return readBool(FecTraits::kTransErr2); 00066 }
unsigned int FecData::trigType | ( | ) | const |
Definition at line 68 of file FecData.cc.
00068 { 00069 return readUnsignedInt(FecTraits::kTrigType); 00070 }
bool FecData::fullFlag | ( | ) | const |
Definition at line 72 of file FecData.cc.
00072 { 00073 return readBool(FecTraits::kFullFlag); 00074 }
bool FecData::validGPS | ( | ) | const |
Definition at line 76 of file FecData.cc.
00076 { 00077 return readBool(FecTraits::kValidGPS); 00078 }
bool FecData::validCLK | ( | ) | const |
Definition at line 80 of file FecData.cc.
00080 { 00081 return readBool(FecTraits::kValidCLK); 00082 }
bool FecData::usingUTC | ( | ) | const |
Definition at line 84 of file FecData.cc.
00084 { 00085 return readBool(FecTraits::kUsingUTC); 00086 }
unsigned int FecData::second | ( | ) | const |
Definition at line 88 of file FecData.cc.
00088 { 00089 return readUnsignedInt(FecTraits::kSecond); 00090 }
unsigned int FecData::nanoSecond | ( | ) | const |
Definition at line 92 of file FecData.cc.
00092 { 00093 return readUnsignedInt(FecTraits::kNanoSecond); 00094 }
unsigned int FecData::hitMap | ( | ) | const |
Definition at line 96 of file FecData.cc.
00096 { 00097 return readUnsignedInt(FecTraits::kFecHitMap); 00098 }
unsigned int FecData::bufferSize | ( | ) | const [virtual] |
Implements DybDaq::DaqBuffer.
Definition at line 100 of file FecData.cc.
00100 { 00101 return fecTraits().fecSize(); 00102 }
unsigned int FecData::formatComponent | ( | ) | const [protected, virtual] |
Reimplemented from DybDaq::DaqBuffer.
Definition at line 48 of file FecData.cc.
00048 { 00049 return FecTraits::kData; 00050 }
void FecData::setRpcCFId | ( | const unsigned int | rpcCFId | ) | [private] |
Definition at line 104 of file FecData.cc.
00104 { 00105 writeField( rpcCFId, FecTraits::kRpcCFId ); 00106 }
void FecData::setRpcFecId | ( | const unsigned int | rpcFecId | ) | [private] |
Definition at line 108 of file FecData.cc.
00108 { 00109 writeField( rpcFecId, FecTraits::kRpcFecId ); 00110 }
void FecData::setTransErr1 | ( | const bool | transErr1 | ) | [private] |
Definition at line 112 of file FecData.cc.
00112 { 00113 writeField( transErr1, FecTraits::kTransErr1); 00114 }
void FecData::setTransErr2 | ( | const bool | transErr2 | ) | [private] |
Definition at line 116 of file FecData.cc.
00116 { 00117 writeField( transErr2, FecTraits::kTransErr2); 00118 }
void FecData::setTrigType | ( | const unsigned int | trigType | ) | [private] |
Definition at line 120 of file FecData.cc.
00120 { 00121 writeField( trigType, FecTraits::kTrigType); 00122 }
void FecData::setFullFlag | ( | const bool | fullFlag | ) | [private] |
Definition at line 124 of file FecData.cc.
00124 { 00125 writeField( fullFlag, FecTraits::kFullFlag); 00126 }
void FecData::setValidGPS | ( | const bool | validGPS | ) | [private] |
Definition at line 128 of file FecData.cc.
00128 { 00129 writeField( validGPS, FecTraits::kValidGPS); 00130 }
void FecData::setValidCLK | ( | const bool | validCLK | ) | [private] |
Definition at line 132 of file FecData.cc.
00132 { 00133 writeField( validCLK, FecTraits::kValidCLK); 00134 }
void FecData::setUsingUTC | ( | const bool | usingUTC | ) | [private] |
Definition at line 136 of file FecData.cc.
00136 { 00137 writeField( usingUTC, FecTraits::kUsingUTC); 00138 }
void FecData::setSecond | ( | const unsigned int | second | ) | [private] |
Definition at line 140 of file FecData.cc.
00140 { 00141 writeField( second, FecTraits::kSecond); 00142 }
void FecData::setNanoSecond | ( | const unsigned int | nanoSecond | ) | [private] |
Definition at line 144 of file FecData.cc.
00144 { 00145 writeField( nanoSecond, FecTraits::kNanoSecond); 00146 }
void FecData::setHitMap | ( | const unsigned int | hitMap | ) | [private] |
Definition at line 148 of file FecData.cc.
00148 { 00149 writeField( hitMap, FecTraits::kFecHitMap); 00150 }
const FecTraits & FecBuffer::fecTraits | ( | ) | const [inherited] |
Definition at line 23 of file FecBuffer.cc.
00024 { 00025 return dynamic_cast<const FecTraits&>( daqTraits() ); 00026 }
friend class FecReadout [friend] |