PandaRoot
BSEmcXtal.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------
2 // File and Version Information:
3 // $Id: $
4 //
5 // Description:
6 // BSEmcXtal Class -
7 //
8 // Software developed for the BaBar Detector at the SLAC B-Factory.
9 // Adapted for the PANDA experiment at GSI
10 //
11 // Author List:
12 // Gautier Hamel de Monchenault - CEN Saclay & Lawrence Berkeley Lab
13 // Stephen J. Gowdy University of Edinburgh
14 // Dima Melnichuk - adaption for PANDA
15 //
16 // Copyright Information:
17 // Copyright (C) 1996 Lawrence Berkeley Laboratory
18 // Copyright (C) 1996 CEA - Centre d'Etude de Saclay
19 //------------------------------------------------------------------------
20 #ifndef BSEMCXTAL_HH
21 #define BSEMCXTAL_HH
22 
23 #include "Rtypes.h"
24 #include "RtypesCore.h"
25 #include "TGeoArb8.h"
26 #include "TGeoMatrix.h"
27 #include "TVector3.h"
28 
29 #include "BSEmcGeoItem.h"
30 
31 class TBuffer;
32 class TClass;
33 class TMemberInspector;
34 
46 class BSEmcXtal : public BSEmcGeoItem {
47 
48  public:
49  // Constructors
50  BSEmcXtal();
51  BSEmcXtal(Int_t t_id, const TGeoTrap &t_trap, const TVector3 &t_pos, const TGeoRotation &t_rot);
52 
53  // Destructor
54  virtual ~BSEmcXtal();
55 
56  // Operators
57  virtual Bool_t operator==(const BSEmcXtal &t_compare) const;
58  virtual Bool_t operator<(const BSEmcXtal &t_compare) const;
59  // Accessors (const)
60  const TVector3 &GetCentre() const;
61  const TVector3 &GetFrontCentre() const;
62  const TVector3 &GetNormalToFrontFace() const;
63  const TVector3 &GetAxisVector() const;
64  const TGeoTrap &GetGeometry() const;
65  const TGeoRotation &GetRotation() const;
66 
67  Double_t GetNPAngle() const;
68 
69  private:
70  Double_t fLength{-1};
71  const TGeoTrap fTrap{};
72  const TGeoRotation fRotation{};
73  TVector3 fCentre{0, 0, 0};
74  TVector3 fFrontCentre{0, 0, 0};
75  TVector3 fNormalToFrontFace{0, 0, 0};
76  TVector3 fAxis{0, 0, 0};
77 
78  BSEmcXtal(const BSEmcXtal &t_other);
79  BSEmcXtal &operator=(const BSEmcXtal & /*unused*/) { return *this; }
80 
81  ClassDef(BSEmcXtal, 1)
82 };
83 
84 #endif /*BSEMCXTAL_HH*/
const TVector3 & GetCentre() const
represents coordinates of one crystal
Definition: BSEmcXtal.h:46
virtual ~BSEmcXtal()
const TGeoTrap & GetGeometry() const
Convenience object for neighbouring relations used by BSEmcRecursiveClustering.
Definition: BSEmcGeoItem.h:25
virtual Bool_t operator<(const BSEmcXtal &t_compare) const
const TVector3 & GetNormalToFrontFace() const
const TVector3 & GetAxisVector() const
const TVector3 & GetFrontCentre() const
const TGeoRotation & GetRotation() const
Double_t GetNPAngle() const
virtual Bool_t operator==(const BSEmcXtal &t_compare) const