/search.css" rel="stylesheet" type="text/css"/> /search.js">
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

FeeTraits.h
Go to the documentation of this file.
00001 #ifndef FEEREADOUTFORMAT_FEETRAITS_H
00002 #define FEEREADOUTFORMAT_FEETRAITS_H
00003 
00004 /*
00005  *  FeeTraits.h
00006  *  FeeReadoutFormat
00007  *
00008  *  Created by Simon Patton on 7/21/10.
00009  *  Copyright 2010 DayaBay Collaboration. All rights reserved.
00010  *
00011  */
00012 
00013 #include "DaqReadoutFormat/DaqTraits.h"
00014 
00015 namespace DybDaq {
00016     
00017     class FeeTraits : public DaqTraits {
00018         
00019     public:
00020         
00024         static const unsigned int kHead;
00025         
00029         static const unsigned int kHit;
00030         
00034         static const unsigned int kFoot;
00035         
00039         static const unsigned int kHeadTriggerNumber;
00040         
00044         static const unsigned int kTriggerType;
00045         
00049         static const unsigned int kChecked;
00050         
00054         static const unsigned int kError;
00055         
00056         // For FitHit
00057         
00061         static const unsigned int kChargeChannelId;
00062         
00066         static const unsigned int kPeakCycle;
00067         
00071         static const unsigned int kHighRangeAdc;
00072         
00076         static const unsigned int kAdc;
00077         
00081         static const unsigned int kTimeChannelId;
00082         
00086         static const unsigned int kHitNumber;
00087         
00091         static const unsigned int kTdc;
00092         
00093         // For FtbFoot
00094         
00098         static const unsigned int kFootTriggerNumber;
00099         
00103         static const unsigned int kFootDataLength;
00104         
00105         // Added v0.1
00106         
00110         static const unsigned int kMajorVersion;
00111         
00115         static const unsigned int kMinorVersion;
00116         
00120         static const unsigned int kPreAdc;
00121         
00122         // Added v0.1 (as improvement)
00123         
00127         static const unsigned int kHeadMarker;
00128         
00132         static const unsigned int kAdcDataMarker;
00133         
00137         static const unsigned int kTdcDataMarker;
00138         
00142         static const unsigned int kFootMarker;
00143         
00147         static const FeeTraits& defaultTraits();
00148         
00152         static const FeeTraits* readTraits(const char*& buffer);
00153         
00157         virtual ~FeeTraits();
00158         
00162         virtual unsigned int illegalMarker() const;
00163         
00167         virtual unsigned int illegalField() const;
00168         
00172         virtual unsigned int triggerTypeEnd() const = 0;
00173         
00177         virtual const char* triggerTypeAsString(unsigned int triggerType) const;
00178         
00182         virtual unsigned int headSize() const = 0;
00183         
00187         virtual unsigned int hitSize() const = 0;
00188         
00192         virtual unsigned int footSize() const = 0;
00193         
00197         virtual void initializeHead(char* buffer) const = 0;
00198         
00202         virtual void initializeHit(char* buffer) const = 0;
00203         
00207         virtual void initializeFoot(char* buffer) const = 0;
00208         
00209     protected:
00210         
00214         FeeTraits();
00215         
00219         virtual const char** triggerTypeStrings() const = 0;
00220         
00221     private:
00222         
00226         FeeTraits(FeeTraits& rhs);
00227         
00231         FeeTraits& operator=(FeeTraits& rhs);
00232         
00233     };
00234     
00235 }
00236 
00237 #endif // FEEREADOUTFORMAT_FEETRAITS_H
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Fri May 16 2014 09:53:02 for FeeReadoutFormat by doxygen 1.7.4