LM_Data.h

Go to the documentation of this file.
00001 //! \file
00002 //!
00003 //! Header file for the LM_Data classes.
00004 //!
00005 //! Declares the LM_Data class and the member routines which
00006 //! are used in collecting the information for a given event.
00007 //!
00008 //! \author D.K. Hasell
00009 //! \version 1.0
00010 //! \date 2010-10-31
00011 //!
00012 //! \ingroup detector
00013 
00014 // Ensure header file only included once.
00015 
00016 #ifndef LM_DATA_H
00017 #define LM_DATA_H
00018 
00019 // Include the STL header files referenced in this file.
00020 
00021 #include <vector>
00022 
00023 // Include the ROOT header files referened here.
00024 
00025 #include "TObject.h"
00026 
00027 // Use the std namespace.
00028 
00029 using namespace std;
00030 
00031 //! LM_Data class 
00032 //!
00033 //! Defines the class used for writing data to the data file in the
00034 //! LM TBranch.
00035 
00036 class LM_Data : public TObject {
00037 
00038 public:
00039 
00040      //! Constructor.
00041 
00042      LM_Data();
00043 
00044      //! Destructor.
00045 
00046      ~LM_Data();
00047 
00048      // Member functions.
00049 
00050      //! Clear the event vectors.
00051 
00052      void Reset();
00053 
00054 private:
00055 
00056      friend class LM_SD;
00057 
00058      int nLM;
00059 
00060      vector<int> id;
00061      vector<int> tr;
00062 
00063      vector<double> e;
00064      vector<double> t;
00065 
00066      vector<double> tx;
00067      vector<double> ty;
00068      vector<double> tz;
00069 
00070      vector<double> txl;
00071      vector<double> tyl;
00072      vector<double> tzl;
00073 
00074      vector<double> x;
00075      vector<double> y;
00076      vector<double> z;
00077 
00078      vector<double> xl;
00079      vector<double> yl;
00080      vector<double> zl;
00081 
00082      ClassDef( LM_Data, 1 )     //The OLYMPUS LM data class.
00083           };
00084 
00085 #endif