StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StEEmcStripClusterFinderIU.h
1 
22 #ifndef _ST_STRIP_CLUSTER_FINDER_IU_H_
23 #define _ST_STRIP_CLUSTER_FINDER_IU_H_
24 
25 #include <Rtypes.h>
26 
27 #include "StRoot/StEEmcUtil/EEmcGeom/EEmcGeomDefs.h"
28 
29 #include "StSimpleCluster.h"
30 #include "StEEmcStripClusterFinder.h"
31 class EEmcElement_t;
32 
34 
35  public:
37  virtual ~StEEmcStripClusterFinderIU_t() { /* */ };
38 
40  virtual void clear();
41 
43  virtual Int_t find( const ESmdLayer_t& smdLayer, StSimpleClusterVec_t& cluster );
44 
45  // modifiers
46  void setIgnoreCorners( Bool_t ignore = true ){ mIgnoreCorners = ignore; };
47  void setUseNaiveFloorShape( Bool_t useNaive = true ){ mUseNaiveFloorShape = useNaive; };
48  void setApplyClusterSplitting( Bool_t apply = true ){ mApplyClusterSplitting = apply; };
49  void setMaxExtent( Int_t maxExtent );
50  void setMinStripsPerCluster( Int_t min_strips );
51  void setMinSeedDistance( Int_t min ){ mMinSeedDistance = min; };
52  void setSeedFloorConst( Float_t seedFloor ){ mSeedFloor = seedFloor; };
53  void setSeedEnergyThres( LayerOfSMD_t layer, Float_t thres ){ mSeedEnergyThres[ layer ] = thres; };
54 
55  protected:
56  // variables for user options
57  Bool_t mIgnoreCorners;
58  Bool_t mUseNaiveFloorShape;
59  Bool_t mApplyClusterSplitting;
60  Int_t mMaxExtent;
61  Int_t mMinStripsPerCluster;
62  Int_t mMinSeedDistance;
63  Float_t mSeedFloor;
64  Float_t mSeedEnergyThres[2];
65 
66  // variable internal to the class
67  Bool_t mNeedsToBeCleared;
68  Float_t mSeedFloorArray[ kEEmcNumStrips ];
69  Int_t mFirstClusterIDForEachStrip[ kEEmcNumStrips ];
70  Int_t mClosestClusterIDForEachStrip[ kEEmcNumStrips ];
71 
72  // for sorting
73  static Bool_t energyGreaterThan( const EEmcElement_t *s1, const EEmcElement_t *s2 );
74 
75  private:
76  ClassDef( StEEmcStripClusterFinderIU_t, 1 );
77 
78 };
79 
80 #endif
81 
82 /*
83  * $Id: StEEmcStripClusterFinderIU.h,v 1.1 2012/11/26 19:05:55 sgliske Exp $
84  * $Log: StEEmcStripClusterFinderIU.h,v $
85  * Revision 1.1 2012/11/26 19:05:55 sgliske
86  * moved from offline/users/sgliske/StRoot/StEEmcPool/StEEmcHitMaker to StRoot/StEEmcPool/StEEmcHitMaker
87  *
88  *
89  */
virtual void clear()
clear between events
LayerOfSMD_t
enum to keep track of layers
virtual Int_t find(const ESmdLayer_t &smdLayer, StSimpleClusterVec_t &cluster)
find some clusters