EEezCluster


class description - source file - inheritance tree

class EEezCluster : public TObject


    public:
EEezCluster() EEezCluster(const EEezCluster&) virtual ~EEezCluster() void buildCluster(EEezTower* seed) static TClass* Class() void clear() void Consume(EEezCluster* cluster) Float_t getEnergy() Float_t getEta() Int_t getEtabin() Int_t getIndex() TVector3 getMomentum() Float_t getPhi() Int_t getPhibin() Int_t getSector() EEezTower* getSeedTower() Int_t getSubSector() Int_t getType() TString Hash() Int_t hasTower(EEezTower* tower) virtual TClass* IsA() const void setEnergy(Float_t e) void setEnergyCut(Float_t e) void setIndex(Int_t i) void setIndex(Int_t phibin, Int_t etabin) void setMomentum(TVector3 p) void setMomentum(Float_t e, Float_t eta, Float_t phi) void setSeedTower(EEezTower* t) void setType(EEezCluster::EEezClusterType type) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members

    private:
EEmcGeomSimple* m_EETowGeom EEmcSmdGeom* m_EESmdGeom EEezTower* m_SeedTower Float_t m_ClusterEnergy TVector3 m_ClusterMomentum Int_t m_NumTowers Int_t m_NumSeeds EEezStrip* m_UFirst[2] First and last U and V strips which EEezStrip* m_ULast[2] fall within the 9-towers which comprise EEezStrip* m_VFirst[2] this cluster. index=1 gives strips in EEezStrip* m_VLast[2] neighboring sectors, if applicable. Float_t m_EnergyCut Int_t m_Index EEezTowerPtrVec_t m_Towers EEezTowerPtrVec_t m_SeedTowers EEezCluster::EEezClusterType mType public:
static const EEezCluster::EEezClusterType kEEezClusterSingle static const EEezCluster::EEezClusterType kEEezClusterDouble static const EEezCluster::EEezClusterType kEEezClusterDiagonal static const EEezCluster::EEezClusterType kEEezClusterOther

Class Description

 EEezCluster

 Author: Jason C. Webb <jwebb@iucf.indiana.edu>

 Storage class for clusters.  Inherits from EEezTower.  Will have a
 method to build clusters from a specified seed tower.  Is meant to
 be a persistent object... i.e. an array of 720 m_Clusters sitting
 within the cluster maker.  Neighboring clusters can be easily associated
 with this cluster by storing pointers (much like was done for the towers).



EEezCluster()
 Class initialization.

Int_t hasTower ( EEezTower *tower )
 Returns true if the tower has been associated with this cluster
 NOTE: should add a pointer to EEezTower to hold all clusters
 which it has been associated with.

void buildCluster( EEezTower *seed )
 Performs clustering of the specified seed tower.  The energies
 and momentum (energy times direction from vertex) of the seed's
 neighbors are summed, if the neighboring energy exceeds a
 specified threshold.

void setSeedTower( EEezTower *tower )
 Sets the seed tower of this cluster... I don't see the need for
 this method any longer... will probably delete it.

void Consume ( EEezCluster *cluster )
 The idea behind this method was to provide a way to merge clusters
 when doing mixed-event backgrounds.  At the momentum, this method
 does very little and should not be used.

void setType( EEezClusterType type )
 Sets the type of the cluster.

 EEezCluster::kEEezClusterSingle

 "Single Seed" cluster.  The cluster is comprised of 8 towers
 surrounding a single seed tower, such that E_seed / E_cluster
 is larger than the value specified by setShapeLimit().

 EEezCluster::kEEezClusterDouble (not implemented)

 "Double Seed" cluster.  Single-seed clusters which fail the
 shape limit may be classified as a double-seed cluster.  The
 cluster will be comprised of the 10 neighbors of two non-
 diagonally adjacent seed towers.  It is required that the sum
 E_seed1 + E_seed2 / E_cluster is larger than the value
 specified by setShapeLimit().

 EEezCluster::kEEezClusterDiagonal (not implemented)

 "Double Seed Diagonal" cluster.  The cluster is comprised of
 the 12 towers surrounding two diagonally-adjacent seed towers.
 The sum of the two seeds is required to exceed the value
 specified by setShapeLimit().

 EEezCluster::kEEezClusterOther (not implemented)

 This is a catch-all category which will be used to accumulate
 multiple-adjacent seed towers, such as may be frequently encountered
 in AuAu running.   These will be stored in a seperate vector
 from "normal" clusters.... This type will be better defined
 once implemented.


Int_t getType()
 Returns the type of cluster.  See setType() for definitions.



Inline Functions


               void setEnergyCut(Float_t e)
            Float_t getEnergy()
           TVector3 getMomentum()
            Float_t getEta()
            Float_t getPhi()
               void clear()
         EEezTower* getSeedTower()
               void setEnergy(Float_t e)
               void setMomentum(TVector3 p)
               void setMomentum(Float_t e, Float_t eta, Float_t phi)
              Int_t getIndex()
               void setIndex(Int_t i)
               void setIndex(Int_t phibin, Int_t etabin)
              Int_t getEtabin()
              Int_t getPhibin()
              Int_t getSubSector()
              Int_t getSector()
            TString Hash()
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
               void StreamerNVirtual(TBuffer& b)
        EEezCluster EEezCluster(const EEezCluster&)
               void ~EEezCluster()


Author: Jason C. Webb
Last update: Tue Jun 1 11:18:09 2004


ROOT page - Class index - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.