/search.css" rel="stylesheet" type="text/css"/> /search.js">
00001 #ifndef LTBREADOUTFORMAT_LTBTRAITS_V3_8_H 00002 #define LTBREADOUTFORMAT_LTBTRAITS_V3_8_H 00003 00004 /* 00005 * LtbTraits_v3_8.h 00006 * LtbReadoutFormat 00007 * 00008 * Created by Simon Patton on 7/21/10. 00009 * Copyright 2010 DayaBay Collaboration. All rights reserved. 00010 * 00011 */ 00012 00013 #include "LtbReadoutFormat/LtbTraits.h" 00014 00015 namespace DybDaq { 00016 00017 class LtbTraits_v3_8 : public LtbTraits { 00018 00019 public: 00020 00024 static const char* key(); 00025 00029 LtbTraits_v3_8(); 00030 00034 virtual ~LtbTraits_v3_8(); 00035 00036 /* 00037 * Returns the major version of the event format as an unsigned int. 00038 */ 00039 virtual unsigned int majorVersion() const; 00040 00041 /* 00042 * Returns the major version of the event format as an unsigned int. 00043 */ 00044 virtual unsigned int minorVersion() const; 00045 00049 virtual const std::string versionString() const; 00050 00054 virtual unsigned int headSize() const; 00055 00059 virtual unsigned int frameSize() const; 00060 00064 virtual unsigned int timeSize() const; 00065 00069 virtual unsigned int footSize() const; 00070 00074 virtual void initializeHead(char* buffer) const; 00075 00079 virtual void initializeFrame(char* buffer) const; 00080 00084 virtual void initializeTime(char* buffer) const; 00085 00089 virtual void initializeFoot(char* buffer) const; 00090 00094 virtual unsigned int timeOffset() const; 00095 00096 protected: 00097 00101 virtual unsigned int markersEnd() const; 00102 00106 virtual const unsigned int* markers() const; 00107 00111 virtual unsigned int fieldsEnd() const; 00112 00116 virtual const unsigned int* indices() const; 00117 00121 virtual const unsigned int* shifts() const; 00122 00126 virtual const unsigned int* masks() const; 00127 00131 virtual const std::string* descriptions() const; 00132 00136 virtual DaqTraits::Definitions* definitions(unsigned int component) const; 00137 00141 virtual void setDefinitions(DaqTraits::Definitions* definitions, 00142 unsigned int component); 00146 virtual const unsigned int* componentFields(unsigned int component) const; 00147 00151 virtual const unsigned int componentFieldsEnd(unsigned int component) const; 00152 00153 /* 00154 * Returns the one-past-the-end of the tigger lines. 00155 */ 00156 virtual unsigned int triggerLineEnd() const; 00157 00161 virtual const char** triggerLineStrings() const; 00162 00166 virtual const unsigned int* triggerLineBits() const; 00167 00168 private: 00169 00173 LtbTraits_v3_8(LtbTraits_v3_8& rhs); 00174 00178 LtbTraits_v3_8& operator=(LtbTraits_v3_8& rhs); 00179 00180 }; 00181 00182 } 00183 00184 #endif // LTBREADOUTFORMAT_LTBTRAITS_V3_8_H