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

In This Package:

DybDaq::FadcTraits_v1_2 Class Reference

#include <FadcTraits_v1_2.h>

Inheritance diagram for DybDaq::FadcTraits_v1_2:

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

Public Types

typedef std::vector< BitsDefinitionDefinitions

Public Member Functions

 FadcTraits_v1_2 ()
 Creates an instance of this class.
virtual ~FadcTraits_v1_2 ()
 Destroy this instance of the class.
virtual unsigned int majorVersion () const
virtual unsigned int minorVersion () const
virtual const std::string versionString () const
 Returns the version of the event format as a string.
virtual unsigned int headSize () const
 Returns the size of a FadcHead in this format.
virtual unsigned int dataSize () const
 Returns the size of a FADC data elementt in this format.
virtual unsigned int footSize () const
 Returns the size of a FadcFoot in this format.
virtual void initializeHead (char *buffer) const
 Initializes the FadcHead memory with the appropriate markers.
virtual void initializeData (char *buffer) const
 Initializes the FadcData memory with the appropriate markers.
virtual void initializeFoot (char *buffer) const
 Initializes the FadcFoot memory with the appropriate markers.
virtual unsigned int illegalMarker () const
 Returns the index value for an illegal header.
virtual unsigned int illegalField () const
 Returns the index value for an illegal field.
virtual const char * triggerTypeAsString (unsigned int triggerType) const
 Returns the string for the specified trigger type.
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 ()
 Returns a key for this verion, unique with FadcTraits.
static const FadcTraitsdefaultTraits ()
 Returns a default FadcTraits to bootstrap the system.
static const FadcTraitsreadTraits (const char *&buffer)
 Returns the FadcTraits to use given the supplied buffer.

Static Public Attributes

static const unsigned int kHead = 0
 The head component for this format.
static const unsigned int kData = FadcTraits::kHead + 1
 The data component for this format.
static const unsigned int kFoot = FadcTraits::kData + 1
 The foot component for this format.
static const unsigned int kHeadTriggerNumber = 0
 The field for the trigger number in the head.
static const unsigned int kMajorVersion = FadcTraits::kHeadTriggerNumber + 1
 The field for the major version.
static const unsigned int kMinorVersion = FadcTraits::kMajorVersion + 1
 The field for the minor version.
static const unsigned int kTriggerType = FadcTraits::kMinorVersion + 1
 The field for the trigger type.
static const unsigned int kNoData = FadcTraits::kTriggerType + 1
 The field for when there is no data.
static const unsigned int kHeadMarker = FadcTraits::kFootDataLength + 1
 The field for the head marker.
static const unsigned int kAdcDataMarker = FadcTraits::kHeadMarker + 1
 The field for the ADC data marker.
static const unsigned int kFootMarker = FadcTraits::kAdcDataMarker + 1
 The field for the foot marker.
static const unsigned int kProtectionStatus = FadcTraits::kFootMarker + 1
 The field for when there is no data.
static const unsigned int kScaleEnabled = FadcTraits::kProtectionStatus + 1
 The field for when there is no data.
static const unsigned int kDuringPrevious = FadcTraits::kScaleEnabled + 1
 The field for when there is no data.
static const unsigned int kChannelId = FadcTraits::kNoData + 1
 The field for the channel id for the data.
static const unsigned int kHighDataByte = FadcTraits::kChannelId + 1
 The field for the high data byte.
static const unsigned int kMiddleDataByte = FadcTraits::kHighDataByte + 1
 The field for the middle data byte.
static const unsigned int kLowDataByte = FadcTraits::kMiddleDataByte + 1
 The field for the low data byte.
static const unsigned int kFootTriggerNumber = FadcTraits::kLowDataByte + 1
 The field for the trigger number in the foot.
static const unsigned int kFootDataLength = FadcTraits::kFootTriggerNumber + 1
 The field for the trigger type.

Protected Member Functions

virtual unsigned int markersEnd () const
 Returns the maximum number of headers in an event.
virtual const unsigned int * markers () const
 Returns the markers for the records.
virtual unsigned int fieldsEnd () const
 Returns the maximum field value for a particluar format.
virtual const unsigned int * indices () const
 Returns the indices of shifts for fields.
virtual const unsigned int * shifts () const
 Returns the array of shifts for fields.
virtual const unsigned int * masks () const
 Returns the array of marks for fields.
virtual const std::string * descriptions () const
 Returns the array of descriptions for fields.
virtual DaqTraits::Definitionsdefinitions (unsigned int component) const
 Returns the array of bits definitions for a compement.
virtual void setDefinitions (DaqTraits::Definitions *definitions, unsigned int component)
 Sets the array of bits definitions for a compoment.
virtual const unsigned int * componentFields (unsigned int component) const
 Sets the array of fields for a compoment.
virtual const unsigned int componentFieldsEnd (unsigned int component) const
 Returns the maximum indexthe array of fields for a compoment.
virtual unsigned int triggerTypeEnd () const
 Returns the maximum trigger type.
virtual const char ** triggerTypeStrings () const
 Returns the array of trigger type strings.
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

 FadcTraits_v1_2 (FadcTraits_v1_2 &rhs)
 Suppress default.
FadcTraits_v1_2operator= (FadcTraits_v1_2 &rhs)
 Suppress default.

Friends

friend class DaqBuffer

Detailed Description

Definition at line 17 of file FadcTraits_v1_2.h.


Constructor & Destructor Documentation

FadcTraits_v1_2::FadcTraits_v1_2 (  ) 

Creates an instance of this class.

Definition at line 134 of file FadcTraits_v1_2.cc.

00134                                  {
00135 }

FadcTraits_v1_2::~FadcTraits_v1_2 (  )  [virtual]

Destroy this instance of the class.

Definition at line 137 of file FadcTraits_v1_2.cc.

00137                                   {
00138 }

DybDaq::FadcTraits_v1_2::FadcTraits_v1_2 ( FadcTraits_v1_2 rhs  )  [private]

Suppress default.


Member Function Documentation

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

Returns a key for this verion, unique with FadcTraits.

Definition at line 130 of file FadcTraits_v1_2.cc.

00130                                  {
00131         return "FADC Format 1.2";
00132 }

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

Implements DybDaq::DaqTraits.

Definition at line 140 of file FadcTraits_v1_2.cc.

00140                                                  {
00141         return 1U;
00142 }

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

Implements DybDaq::DaqTraits.

Definition at line 144 of file FadcTraits_v1_2.cc.

00144                                                  {
00145         return 2U;
00146 }

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

Returns the version of the event format as a string.

Implements DybDaq::DaqTraits.

Definition at line 148 of file FadcTraits_v1_2.cc.

00148                                                   {
00149         return key();
00150 }

unsigned int FadcTraits_v1_2::headSize (  )  const [virtual]

Returns the size of a FadcHead in this format.

Implements DybDaq::FadcTraits.

Definition at line 152 of file FadcTraits_v1_2.cc.

00152                                              {
00153     return 1U;
00154 }

unsigned int FadcTraits_v1_2::dataSize (  )  const [virtual]

Returns the size of a FADC data elementt in this format.

Implements DybDaq::FadcTraits.

Definition at line 156 of file FadcTraits_v1_2.cc.

00156                                              {
00157     return 1U;
00158 }

unsigned int FadcTraits_v1_2::footSize (  )  const [virtual]

Returns the size of a FadcFoot in this format.

Implements DybDaq::FadcTraits.

Definition at line 160 of file FadcTraits_v1_2.cc.

00160                                              {
00161     return 1U;
00162 }

void FadcTraits_v1_2::initializeHead ( char *  buffer  )  const [virtual]

Initializes the FadcHead memory with the appropriate markers.

Implements DybDaq::FadcTraits.

Definition at line 164 of file FadcTraits_v1_2.cc.

00164                                                        {
00165     *((unsigned int*)buffer)       = 0x40000000U; // Head four bytes
00166 }

void FadcTraits_v1_2::initializeData ( char *  buffer  )  const [virtual]

Initializes the FadcData memory with the appropriate markers.

Implements DybDaq::FadcTraits.

Definition at line 168 of file FadcTraits_v1_2.cc.

00168                                                        {
00169     *((unsigned int*)buffer)       = 0x60000000U; // Data four bytes
00170 }

void FadcTraits_v1_2::initializeFoot ( char *  buffer  )  const [virtual]

Initializes the FadcFoot memory with the appropriate markers.

Implements DybDaq::FadcTraits.

Definition at line 172 of file FadcTraits_v1_2.cc.

00172                                                        {
00173     *((unsigned int*)buffer)       = 0xa0000000U; // Foot four bytes
00174 }

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

Returns the maximum number of headers in an event.

Implements DybDaq::DaqTraits.

Definition at line 176 of file FadcTraits_v1_2.cc.

00176                                                {
00177     return 0U;
00178 }

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

Returns the markers for the records.

Implements DybDaq::DaqTraits.

Definition at line 180 of file FadcTraits_v1_2.cc.

00180                                                    {
00181     return 0;
00182 }

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

Returns the maximum field value for a particluar format.

Implements DybDaq::DaqTraits.

Definition at line 184 of file FadcTraits_v1_2.cc.

00184                                               {
00185         return kFootMarker + 1;
00186 }

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

Returns the indices of shifts for fields.

Implements DybDaq::DaqTraits.

Definition at line 188 of file FadcTraits_v1_2.cc.

00188                                                    {
00189         return m_indices;
00190 }

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

Returns the array of shifts for fields.

Implements DybDaq::DaqTraits.

Definition at line 192 of file FadcTraits_v1_2.cc.

00192                                                   {
00193         return m_shifts;
00194 }

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

Returns the array of marks for fields.

Implements DybDaq::DaqTraits.

Definition at line 196 of file FadcTraits_v1_2.cc.

00196                                                  {
00197         return m_masks;
00198 }

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

Returns the array of descriptions for fields.

Reimplemented from DybDaq::DaqTraits.

Definition at line 200 of file FadcTraits_v1_2.cc.

00200                                                      {
00201     return m_description;
00202 }

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

Returns the array of bits definitions for a compement.

Reimplemented from DybDaq::DaqTraits.

Definition at line 204 of file FadcTraits_v1_2.cc.

00204                                                                                {
00205     return m_definitions[component];
00206 }

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

Sets the array of bits definitions for a compoment.

Reimplemented from DybDaq::DaqTraits.

Definition at line 208 of file FadcTraits_v1_2.cc.

00209                                                              {
00210     m_definitions[component] = definitions;
00211 }

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

Sets the array of fields for a compoment.

Reimplemented from DybDaq::DaqTraits.

Definition at line 213 of file FadcTraits_v1_2.cc.

00213                                                                                  {
00214     return m_componentFields[component];
00215 }

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

Returns the maximum indexthe array of fields for a compoment.

Reimplemented from DybDaq::DaqTraits.

Definition at line 217 of file FadcTraits_v1_2.cc.

00217                                                                                    {
00218     return m_componentFieldsEnd[component];
00219 }

unsigned int FadcTraits_v1_2::triggerTypeEnd (  )  const [protected, virtual]

Returns the maximum trigger type.

Implements DybDaq::FadcTraits.

Definition at line 221 of file FadcTraits_v1_2.cc.

00221                                                    {
00222     return 2U;
00223 }

const char ** FadcTraits_v1_2::triggerTypeStrings (  )  const [protected, virtual]

Returns the array of trigger type strings.

Implements DybDaq::FadcTraits.

Definition at line 225 of file FadcTraits_v1_2.cc.

00225                                                        {
00226     return m_triggerTypes;
00227 }

FadcTraits_v1_2& DybDaq::FadcTraits_v1_2::operator= ( FadcTraits_v1_2 rhs  )  [private]

Suppress default.

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

Returns a default FadcTraits to bootstrap the system.

Definition at line 57 of file FadcTraits.cc.

00057                                             {
00058     if (0 == m_allTraits.size()) {
00059         m_allTraits.insert(std::pair<const char*, FadcTraits*>(FadcTraits_v1_2::key(),new FadcTraits_v1_2()));
00060         m_allTraits.insert(std::pair<const char*, FadcTraits*>(FadcTraits_v1_5::key(),new FadcTraits_v1_5()));
00061     }
00062     return *m_allTraits[FadcTraits_v1_5::key()];
00063 }

const FadcTraits * FadcTraits::readTraits ( const char *&  buffer  )  [static, inherited]

Returns the FadcTraits to use given the supplied buffer.

Definition at line 65 of file FadcTraits.cc.

00065                                                             {
00066     unsigned int major = 0;
00067     const unsigned int minor = readUnsignedInt(buffer,
00068                                              defaultTraits(),
00069                                              FadcTraits::kMinorVersion);
00070     
00071     const FadcTraits* result = 0;
00072     if (0U == major && 0U == minor) {
00073         result = m_allTraits[FadcTraits_v1_2::key()];
00074     } else if (0U == major && 1U == minor) {
00075             result = m_allTraits[FadcTraits_v1_2::key()];
00076     }
00077     return result;
00078 }

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

Returns the index value for an illegal header.

Implements DybDaq::DaqTraits.

Definition at line 80 of file FadcTraits.cc.

00080                                              {
00081     return 0xffffffffU;
00082 }

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

Returns the index value for an illegal field.

Implements DybDaq::DaqTraits.

Definition at line 84 of file FadcTraits.cc.

00084                                             {
00085     return 0xffffffffU;
00086 }

const char * FadcTraits::triggerTypeAsString ( unsigned int  triggerType  )  const [virtual, inherited]

Returns the string for the specified trigger type.

Definition at line 88 of file FadcTraits.cc.

00088                                                                           {
00089     if (triggerType >= triggerTypeEnd()) {
00090         return "Unknown";
00091     }
00092     return triggerTypeStrings()[triggerType];
00093 }


Member Data Documentation

const unsigned int FadcTraits::kHead = 0 [static, inherited]

The head component for this format.

Definition at line 24 of file FadcTraits.h.

const unsigned int FadcTraits::kData = FadcTraits::kHead + 1 [static, inherited]

The data component for this format.

Definition at line 29 of file FadcTraits.h.

const unsigned int FadcTraits::kFoot = FadcTraits::kData + 1 [static, inherited]

The foot component for this format.

Definition at line 34 of file FadcTraits.h.

const unsigned int FadcTraits::kHeadTriggerNumber = 0 [static, inherited]

The field for the trigger number in the head.

Definition at line 39 of file FadcTraits.h.

const unsigned int FadcTraits::kMajorVersion = FadcTraits::kHeadTriggerNumber + 1 [static, inherited]

The field for the major version.

Definition at line 46 of file FadcTraits.h.

const unsigned int FadcTraits::kMinorVersion = FadcTraits::kMajorVersion + 1 [static, inherited]

The field for the minor version.

Definition at line 51 of file FadcTraits.h.

const unsigned int FadcTraits::kTriggerType = FadcTraits::kMinorVersion + 1 [static, inherited]

The field for the trigger type.

Definition at line 56 of file FadcTraits.h.

const unsigned int FadcTraits::kNoData = FadcTraits::kTriggerType + 1 [static, inherited]

The field for when there is no data.

Definition at line 61 of file FadcTraits.h.

const unsigned int FadcTraits::kHeadMarker = FadcTraits::kFootDataLength + 1 [static, inherited]

The field for the head marker.

Definition at line 68 of file FadcTraits.h.

const unsigned int FadcTraits::kAdcDataMarker = FadcTraits::kHeadMarker + 1 [static, inherited]

The field for the ADC data marker.

Definition at line 73 of file FadcTraits.h.

const unsigned int FadcTraits::kFootMarker = FadcTraits::kAdcDataMarker + 1 [static, inherited]

The field for the foot marker.

Definition at line 78 of file FadcTraits.h.

const unsigned int FadcTraits::kProtectionStatus = FadcTraits::kFootMarker + 1 [static, inherited]

The field for when there is no data.

Definition at line 85 of file FadcTraits.h.

const unsigned int FadcTraits::kScaleEnabled = FadcTraits::kProtectionStatus + 1 [static, inherited]

The field for when there is no data.

Definition at line 90 of file FadcTraits.h.

const unsigned int FadcTraits::kDuringPrevious = FadcTraits::kScaleEnabled + 1 [static, inherited]

The field for when there is no data.

Definition at line 95 of file FadcTraits.h.

const unsigned int FadcTraits::kChannelId = FadcTraits::kNoData + 1 [static, inherited]

The field for the channel id for the data.

Definition at line 102 of file FadcTraits.h.

const unsigned int FadcTraits::kHighDataByte = FadcTraits::kChannelId + 1 [static, inherited]

The field for the high data byte.

Definition at line 107 of file FadcTraits.h.

const unsigned int FadcTraits::kMiddleDataByte = FadcTraits::kHighDataByte + 1 [static, inherited]

The field for the middle data byte.

Definition at line 112 of file FadcTraits.h.

const unsigned int FadcTraits::kLowDataByte = FadcTraits::kMiddleDataByte + 1 [static, inherited]

The field for the low data byte.

Definition at line 117 of file FadcTraits.h.

const unsigned int FadcTraits::kFootTriggerNumber = FadcTraits::kLowDataByte + 1 [static, inherited]

The field for the trigger number in the foot.

Definition at line 124 of file FadcTraits.h.

const unsigned int FadcTraits::kFootDataLength = FadcTraits::kFootTriggerNumber + 1 [static, inherited]

The field for the trigger type.

Definition at line 129 of file FadcTraits.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:57 2011 for FadcReadoutFormat by doxygen 1.4.7