PandaRoot
PndEmcClusterDistances.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 //--------------------------------------------------------------------------
14 // File and Version Information:
15 //
16 // Description:
17 // Class PndEmcClusterDistances.
18 //
19 // Environment:
20 // Software developed for the BaBar Detector at the SLAC B-Factory.
21 //
22 // Author List:
23 // Phil Strother Originator
24 //
25 // Copyright Information:
26 // Copyright (C) 1998 University of Edinburgh
27 //
28 // Dima Melnichuk, adaption for pandaroot
29 //------------------------------------------------------------------------
30 //#pragma once
31 #ifndef PNDEMCCLUSTERDISTANCES_H
32 #define PNDEMCCLUSTERDISTANCES_H
33 
35 #include "TObject.h"
36 
37 class TVector3;
38 class PndEmcXtal;
39 class PndEmcDigi;
40 
42 
43  public:
44  // Constructors
45  PndEmcClusterDistances(const PndEmcCluster &cluster, const TClonesArray *digiArray);
47 
48  // Destructor
49  virtual ~PndEmcClusterDistances();
50 
51  Double_t RadialDistance(const PndEmcDigi *const) const;
52  // This is the radial distance (in cm) of the digi from the cluster
53  // centroid in a plane containing the estimated shower max (assumed EM)
54  // whose normal points back to the IP.
55 
56  Double_t AngularDistance(const PndEmcDigi *const) const;
57  // Just sqrt( dTheta**2 + dPhi**2). In mr.
58 
59  Double_t AngularSeparation(const PndEmcDigi *const) const;
60 
61  // The angle between the cluster centroid and the digi in question, in mr.
62 
63  private:
64  PndEmcClusterDistances &operator=(const PndEmcClusterDistances &) { return *this; };
65 
66  // Data members
67  TVector3 *fShowerMaxLocation;
68  TVector3 *fClusterLocation;
69  PndEmcXtal *fTheGeom;
70  TVector3 *fTheNormalToFrontFace;
71  Double_t fDistanceOfPlane;
72  Double_t fClusPhi;
73  Double_t fClusTheta;
74 
75  ClassDef(PndEmcClusterDistances, 1)
76 };
77 
78 #endif // PNDEMCCLUSTERDISTANCES_HH
represents coordinates of one crystal
Definition: PndEmcXtal.h:47
Double_t RadialDistance(const PndEmcDigi *const) const
PndEmcClusterDistances(const PndEmcCluster &cluster, const TClonesArray *digiArray)
virtual ~PndEmcClusterDistances()
Double_t AngularDistance(const PndEmcDigi *const) const
Double_t AngularSeparation(const PndEmcDigi *const) const