BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
EmcShower.h
Go to the documentation of this file.
1#ifndef EMCSHOWER_H
2#define EMCSHOWER_H
3
4#include "CLHEP/Geometry/Point3D.h"
5#include "EmcShDigi.h"
6#include <list>
7#ifndef ENABLE_BACKWARDS_COMPATIBILITY
8typedef HepGeom::Point3D<double> HepPoint3D;
9#endif
10
11using namespace std;
12//------------------------------------
13// Collaborating Class Declarations --
14//------------------------------------
15
16class EmcShower {
17public:
18 // Constructors
19 EmcShower();
20
21 // Destructors
22 ~EmcShower();
23
24 // Copy and assignment
25 EmcShower( const EmcShower& aShower );
26 EmcShower& operator=( const EmcShower& aShower );
27
28 // Operators
29 bool operator==( const EmcShower& otherShower ) const;
30 bool operator!=( const EmcShower& otherShower ) const;
31 bool operator>=( const EmcShower& otherShower ) const;
32 bool operator<=( const EmcShower& otherShower ) const;
33 bool operator>( const EmcShower& otherShower ) const;
34 bool operator<( const EmcShower& otherShower ) const;
35
36 const double& energy() const { return m_energy; }
37 const double& theta() const { return m_theta; }
38 const double& phi() const { return m_phi; }
39 const unsigned int& module() const { return m_module; }
40 const unsigned int& thetaIndex() const { return m_thetaIndex; }
41 const unsigned int& phiIndex() const { return m_phiIndex; }
42 const long int& numberOfDigis() const { return m_numberOfDigis; }
43 const std::list<EmcShDigi> digiList() const { return m_digiList; }
44 const EmcShDigi maxima() const { return m_maxima; }
45 const HepPoint3D& where() const { return m_where; }
46 const double& x() const { return m_x; }
47 const double& y() const { return m_y; }
48 const double& z() const { return m_z; }
49
50 // Modifiers
51 void addDigi( EmcShDigi d );
52
53 void setEnergy( double energy ) { m_energy = energy; }
54 void setTheta( double theta ) { m_theta = theta; }
55 void setPhi( double phi ) { m_phi = phi; }
56 void setModule( unsigned int module ) { m_module = module; }
57 void setThetaIndex( unsigned int thetaIndex ) { m_thetaIndex = thetaIndex; }
58 void setPhiIndex( unsigned int phiIndex ) { m_phiIndex = phiIndex; }
59 void setNumberOfDigis( long int numberOfDigis ) { m_numberOfDigis = numberOfDigis; }
60 void setDigiList( std::list<EmcShDigi> digiList ) { m_digiList = digiList; }
61 void setMaxima( EmcShDigi maxima ) { m_maxima = maxima; }
62 void setWhere( HepPoint3D where ) { m_where = where; }
63 void setX( double x ) { m_x = x; }
64 void setY( double y ) { m_y = y; }
65 void setZ( double z ) { m_z = z; }
66
67private:
68 double m_energy;
69 double m_theta;
70 double m_phi;
71 unsigned int m_module;
72 unsigned int m_thetaIndex;
73 unsigned int m_phiIndex;
74 long int m_numberOfDigis;
75 EmcShDigi m_maxima;
76 std::list<EmcShDigi> m_digiList;
77 HepPoint3D m_where;
78 double m_x;
79 double m_y;
80 double m_z;
81};
82
83inline bool EmcShower::operator!=( const EmcShower& otherShower ) const {
84 return !( *this == otherShower );
85}
86
87#endif // EMCSHOWER_H
HepGeom::Point3D< double > HepPoint3D
HepGeom::Point3D< double > HepPoint3D
Definition EmcShower.h:8
NTuple::Array< double > m_z
NTuple::Array< double > m_x
NTuple::Array< double > m_y
bool operator==(const EmcShower &otherShower) const
Definition EmcShower.cxx:66
void setPhi(double phi)
Definition EmcShower.h:55
bool operator<=(const EmcShower &otherShower) const
Definition EmcShower.cxx:84
const double & z() const
Definition EmcShower.h:48
const unsigned int & thetaIndex() const
Definition EmcShower.h:40
const double & x() const
Definition EmcShower.h:46
void setEnergy(double energy)
Definition EmcShower.h:53
const double & theta() const
Definition EmcShower.h:37
void setTheta(double theta)
Definition EmcShower.h:54
bool operator>=(const EmcShower &otherShower) const
Definition EmcShower.cxx:76
const double & y() const
Definition EmcShower.h:47
const double & energy() const
Definition EmcShower.h:36
void setDigiList(std::list< EmcShDigi > digiList)
Definition EmcShower.h:60
void setPhiIndex(unsigned int phiIndex)
Definition EmcShower.h:58
void setX(double x)
Definition EmcShower.h:63
bool operator!=(const EmcShower &otherShower) const
Definition EmcShower.h:83
const double & phi() const
Definition EmcShower.h:38
bool operator<(const EmcShower &otherShower) const
void setY(double y)
Definition EmcShower.h:64
void addDigi(EmcShDigi d)
void setThetaIndex(unsigned int thetaIndex)
Definition EmcShower.h:57
EmcShower & operator=(const EmcShower &aShower)
Definition EmcShower.cxx:45
const EmcShDigi maxima() const
Definition EmcShower.h:44
const long int & numberOfDigis() const
Definition EmcShower.h:42
void setZ(double z)
Definition EmcShower.h:65
const HepPoint3D & where() const
Definition EmcShower.h:45
void setMaxima(EmcShDigi maxima)
Definition EmcShower.h:61
const unsigned int & phiIndex() const
Definition EmcShower.h:41
bool operator>(const EmcShower &otherShower) const
Definition EmcShower.cxx:92
void setWhere(HepPoint3D where)
Definition EmcShower.h:62
const std::list< EmcShDigi > digiList() const
Definition EmcShower.h:43
void setNumberOfDigis(long int numberOfDigis)
Definition EmcShower.h:59
const unsigned int & module() const
Definition EmcShower.h:39
void setModule(unsigned int module)
Definition EmcShower.h:56