| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

DybDaq::FecTraits_v1_3 Class Reference

#include <FecTraits_v1_3.h>

Inheritance diagram for DybDaq::FecTraits_v1_3:

[legend]
Collaboration diagram for DybDaq::FecTraits_v1_3:
[legend]
List of all members.

Public Types

typedef std::vector< BitsDefinitionDefinitions

Public Member Functions

 FecTraits_v1_3 ()
virtual ~FecTraits_v1_3 ()
virtual unsigned int majorVersion () const
virtual unsigned int minorVersion () const
virtual const std::string versionString () const
virtual unsigned int fecSize () const
virtual void initializeFec (char *buffer) const
virtual unsigned int illegalMarker () const
virtual unsigned int illegalField () const
virtual unsigned int marker (unsigned int marker) const
virtual const char * boolAsString (bool value) const
const DaqTraits::DefinitionsbitsDefinitions (unsigned int component) const

Static Public Member Functions

static const char * key ()
static const FecTraitsdefaultTraits ()
static const FecTraitsreadTraits (const char *&buffer)
static const FecTraitsgetTraits (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

virtual unsigned int markersEnd () const
virtual const unsigned int * markers () const
virtual unsigned int fieldsEnd () const
virtual const unsigned int * indices () const
virtual const unsigned int * shifts () const
virtual const unsigned int * masks () const
virtual const std::string * descriptions () const
virtual DaqTraits::Definitionsdefinitions (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
unsigned int index (unsigned int field) const

Static Protected Member Functions

static unsigned int readUnsignedInt (const char *&buffer, const DaqTraits &traits, unsigned int field)

Private Member Functions

 FecTraits_v1_3 (const FecTraits &)
FecTraits_v1_3operator= (const FecTraits &)

Static Private Attributes

static const unsigned int m_indices []
static const unsigned int m_shifts []
static const unsigned int m_masks []

Friends

friend class DaqBuffer

Detailed Description

Definition at line 8 of file FecTraits_v1_3.h.


Constructor & Destructor Documentation

FecTraits_v1_3::FecTraits_v1_3 (  ) 

Definition at line 105 of file FecTraits_v1_3.cc.

00105                                {
00106 }

FecTraits_v1_3::~FecTraits_v1_3 (  )  [virtual]

Definition at line 108 of file FecTraits_v1_3.cc.

00108                                 {
00109 }

DybDaq::FecTraits_v1_3::FecTraits_v1_3 ( const FecTraits  )  [private]


Member Function Documentation

const char * FecTraits_v1_3::key (  )  [static]

Definition at line 101 of file FecTraits_v1_3.cc.

00101                                 {
00102    return "FEC Format 1.3";
00103 }

unsigned int FecTraits_v1_3::majorVersion (  )  const [virtual]

Implements DybDaq::DaqTraits.

Definition at line 111 of file FecTraits_v1_3.cc.

00111                                                 {
00112    return 1U;
00113 }

unsigned int FecTraits_v1_3::minorVersion (  )  const [virtual]

Implements DybDaq::DaqTraits.

Definition at line 115 of file FecTraits_v1_3.cc.

00115                                                 {
00116    return 3U;
00117 }

const string FecTraits_v1_3::versionString (  )  const [virtual]

Implements DybDaq::DaqTraits.

Definition at line 119 of file FecTraits_v1_3.cc.

00119                                                  {
00120    return key();
00121 }

unsigned int FecTraits_v1_3::fecSize (  )  const [virtual]

Implements DybDaq::FecTraits.

Definition at line 123 of file FecTraits_v1_3.cc.

00123                                            {
00124    return 4U;
00125 }

void FecTraits_v1_3::initializeFec ( char *  buffer  )  const [virtual]

Implements DybDaq::FecTraits.

Definition at line 127 of file FecTraits_v1_3.cc.

00127                                                      {
00128    *((unsigned int*)buffer) = 0x7e7e0000U;
00129 }

unsigned int FecTraits_v1_3::markersEnd (  )  const [protected, virtual]

Implements DybDaq::DaqTraits.

Definition at line 131 of file FecTraits_v1_3.cc.

00131                                               {
00132    return 0U;
00133 }

const unsigned int * FecTraits_v1_3::markers (  )  const [protected, virtual]

Implements DybDaq::DaqTraits.

Definition at line 135 of file FecTraits_v1_3.cc.

00135                                                   {
00136    return 0;
00137 }

unsigned int FecTraits_v1_3::fieldsEnd (  )  const [protected, virtual]

Implements DybDaq::DaqTraits.

Definition at line 139 of file FecTraits_v1_3.cc.

00139                                              {
00140    return kFecHitMap + 1;
00141 }

const unsigned int * FecTraits_v1_3::indices (  )  const [protected, virtual]

Implements DybDaq::DaqTraits.

Definition at line 143 of file FecTraits_v1_3.cc.

00143                                                   {
00144    return m_indices;
00145 }

const unsigned int * FecTraits_v1_3::shifts (  )  const [protected, virtual]

Implements DybDaq::DaqTraits.

Definition at line 147 of file FecTraits_v1_3.cc.

00147                                                  {
00148         return m_shifts;
00149 }

const unsigned int * FecTraits_v1_3::masks (  )  const [protected, virtual]

Implements DybDaq::DaqTraits.

Definition at line 151 of file FecTraits_v1_3.cc.

00151                                                 {
00152         return m_masks;
00153 }

const std::string * FecTraits_v1_3::descriptions (  )  const [protected, virtual]

Reimplemented from DybDaq::DaqTraits.

Definition at line 155 of file FecTraits_v1_3.cc.

00155                                                     {
00156     return m_description;
00157 }

DaqTraits::Definitions * FecTraits_v1_3::definitions ( unsigned int  component  )  const [protected, virtual]

Reimplemented from DybDaq::DaqTraits.

Definition at line 159 of file FecTraits_v1_3.cc.

00159                                                                               {
00160     return m_definitions[component];
00161 }

void FecTraits_v1_3::setDefinitions ( DaqTraits::Definitions definitions,
unsigned int  component 
) [protected, virtual]

Reimplemented from DybDaq::DaqTraits.

Definition at line 163 of file FecTraits_v1_3.cc.

00164                                                             {
00165     m_definitions[component] = definitions;
00166 }

const unsigned int * FecTraits_v1_3::componentFields ( unsigned int  component  )  const [protected, virtual]

Reimplemented from DybDaq::DaqTraits.

Definition at line 168 of file FecTraits_v1_3.cc.

00168                                                                                 {
00169     return m_componentFields[component];
00170 }

const unsigned int FecTraits_v1_3::componentFieldsEnd ( unsigned int  component  )  const [protected, virtual]

Reimplemented from DybDaq::DaqTraits.

Definition at line 172 of file FecTraits_v1_3.cc.

00172                                                                                   {
00173     return m_componentFieldsEnd[component];
00174 }

FecTraits_v1_3& DybDaq::FecTraits_v1_3::operator= ( const FecTraits  )  [private]

Reimplemented from DybDaq::FecTraits.

const FecTraits & FecTraits::defaultTraits (  )  [static, inherited]

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, inherited]

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, inherited]

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 }

unsigned int FecTraits::illegalMarker (  )  const [virtual, inherited]

Implements DybDaq::DaqTraits.

Definition at line 58 of file FecTraits.cc.

00058                                             {
00059    return 0xffffffffU;
00060 }

unsigned int FecTraits::illegalField (  )  const [virtual, inherited]

Implements DybDaq::DaqTraits.

Definition at line 62 of file FecTraits.cc.

00062                                            {
00063    return 0xffffffffU;
00064 }


Member Data Documentation

const unsigned int FecTraits_v1_3::m_indices [static, private]

Initial value:

 {
   0U,  
   0U,  
   0U,  
   0U,  
   0U,  
   0U,  
   0U,  
   0U,  
   0U,  
   0U,  
   1U,  
   2U,  
   3U   
}

Definition at line 60 of file FecTraits_v1_3.h.

const unsigned int FecTraits_v1_3::m_shifts [static, private]

Initial value:

 {
   16U,  
   12U,  
    8U,  
    7U,  
    6U,  
    4U,  
    3U,  
    2U,  
    1U,  
    0U,  
    0U,  
    0U,  
    0U   
}

Definition at line 61 of file FecTraits_v1_3.h.

const unsigned int FecTraits_v1_3::m_masks [static, private]

Initial value:

 {
   0x0000ffff,  
   0x0000000f,  
   0x0000000f,  
   0x00000001,  
   0x00000001,  
   0x00000003,  
   0x00000001,  
   0x00000001,  
   0x00000001,  
   0x00000001,  
   0xffffffff,  
   0xffffffff,  
   0xffffffff   
}

Definition at line 62 of file FecTraits_v1_3.h.

const unsigned int FecTraits::kData = 0 [static, inherited]

Definition at line 14 of file FecTraits.h.

const unsigned int FecTraits::kFecMarkerValue = 0x7e7e [static, inherited]

Definition at line 17 of file FecTraits.h.

const unsigned int FecTraits::kFecMarker = 0 [static, inherited]

Definition at line 21 of file FecTraits.h.

const unsigned int FecTraits::kRpcCFId = FecTraits::kFecMarker + 1 [static, inherited]

Definition at line 24 of file FecTraits.h.

const unsigned int FecTraits::kRpcFecId = FecTraits::kRpcCFId + 1 [static, inherited]

Definition at line 27 of file FecTraits.h.

const unsigned int FecTraits::kTransErr1 = FecTraits::kRpcFecId + 1 [static, inherited]

Definition at line 30 of file FecTraits.h.

const unsigned int FecTraits::kTransErr2 = FecTraits::kTransErr1 + 1 [static, inherited]

Definition at line 31 of file FecTraits.h.

const unsigned int FecTraits::kTrigType = FecTraits::kTransErr2 + 1 [static, inherited]

Definition at line 34 of file FecTraits.h.

const unsigned int FecTraits::kFullFlag = FecTraits::kTrigType + 1 [static, inherited]

Definition at line 37 of file FecTraits.h.

const unsigned int FecTraits::kValidGPS = FecTraits::kFullFlag + 1 [static, inherited]

Definition at line 40 of file FecTraits.h.

const unsigned int FecTraits::kValidCLK = FecTraits::kValidGPS + 1 [static, inherited]

Definition at line 43 of file FecTraits.h.

const unsigned int FecTraits::kUsingUTC = FecTraits::kValidCLK + 1 [static, inherited]

Definition at line 46 of file FecTraits.h.

const unsigned int FecTraits::kSecond = FecTraits::kUsingUTC + 1 [static, inherited]

Definition at line 49 of file FecTraits.h.

const unsigned int FecTraits::kNanoSecond = FecTraits::kSecond + 1 [static, inherited]

Definition at line 52 of file FecTraits.h.

const unsigned int FecTraits::kFecHitMap = FecTraits::kNanoSecond + 1 [static, inherited]

Definition at line 55 of file FecTraits.h.


The documentation for this class was generated from the following files:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:07:52 2011 for FecReadoutFormat by doxygen 1.4.7