mEmcClusterNewModule.h

Go to the documentation of this file.
00001 #ifndef __MEMCCLUSTERNEWMODULE_H__
00002 #define __MEMCCLUSTERNEWMODULE_H__
00003 
00004 //
00005 // EMC basic clustering class (for PHOOL).
00006 //
00007 // Alexander Bazilevsky Sep-00
00008 //
00009 
00010 #include "phool.h"
00011 #include "EMCModule.h"
00012 #include "EmcScSectorRec.h"
00013 #include "EmcGlSectorRec.h"
00014 
00015 class PHCompositeNode;
00016 class mEmcGeometryModule;
00017 class EmcModule;
00025 class mEmcClusterNewModule: public EMCModule {
00026 
00027 public:
00028 
00029   mEmcClusterNewModule(mEmcGeometryModule*, int runnumber=0);
00030   virtual ~mEmcClusterNewModule(){}
00031   void SetMinClusterEnergy(float eClMin){ fMinClusterEnergySc=eClMin; fMinClusterEnergyGl=eClMin; }
00032   void SetMinClusterEnergyPbSc(float eClMin){ fMinClusterEnergySc=eClMin; }
00033   void SetMinClusterEnergyPbGl(float eClMin){ fMinClusterEnergyGl=eClMin; }
00034   void SetTowerThreshold(float Thresh);
00035   void SetTowerThreshold(int is, float Thresh);
00036   void SetTowerThresholdPbSc(float Thresh);
00037   void SetTowerThresholdPbGl(float Thresh);
00038   void SetPeakThreshold(float Thresh);
00039   void SetPeakThreshold(int is, float Thresh);
00040   PHBoolean  event(PHCompositeNode * root);
00041   void ToF_Process( EmcModule* phit, float dist, EmcModule& hmax,
00042                     float* ptof,    float* petof,    float* ptofcorr,
00043                     float* pdtof,
00044                     float* ptofmin, float* petofmin, float* ptofmincorr,
00045                     float* ptofmax, float* petofmax, float* ptofmaxcorr );
00046 
00047 private: 
00048 
00049   EmcScSectorRec ScSector[6];
00050   EmcGlSectorRec GlSector[2];
00051   float fMinClusterEnergySc;
00052   float fMinClusterEnergyGl;
00053   int fRunNumber;
00054 };
00055 
00056 #endif /*__MEMCCLUSTERNEWMODULE_H__*/