CMS 3D CMS Logo

MyCluster.h
Go to the documentation of this file.
1 #ifndef MYCLUSTER_H
2 #define MYCLUSTER_H
3 #include "CLHEP/Vector/LorentzVector.h"
4 
5 #include <vector>
6 
8 
9 struct MatchParam{
10  int index;
11  double distance;
12 };
13 
14 struct CalCell{
15  CLHEP::HepLorentzVector Momentum;
16  int pid;
17  bool used;
18 };
19 
20 
21 struct CalCluster{
22  CLHEP::HepLorentzVector Momentum;
23  double em;
24  double hd;
25  int type;
26  int ncells;
27  std::vector<CalCell> clusterCellList;
28  std::vector<MatchParam> MatchedClusters;
29  std::vector<CalCluster> SubClusterList;
30 };
31 
32 class CellGreater {
33  public:
34  bool operator () (const CalCell& i, const CalCell& j) {
35  return (i.Momentum.e() > j.Momentum.e());
36  }
37 };
38 
40  public:
41  bool operator () (const CalCell& i, const CalCell& j) {
42  return (i.Momentum.perp() > j.Momentum.perp());
43  }
44 };
45 
47  public:
48  bool operator () (const CalCluster& i, const CalCluster& j) {
49  return (i.Momentum.e() > j.Momentum.e());
50  }
51 };
52 
54  public:
55  bool operator () (const CalCluster& i, const CalCluster& j) {
56  return (i.Momentum.perp() > j.Momentum.perp());
57  }
58 };
60  public:
61 
62  bool operator () (const CalCluster& i, const CalCluster& j) {
63  return (i.Momentum.perp() > j.Momentum.perp());
64  }
65 };
66 
67 
68 #endif
ClusterPtGreater
Definition: MyCluster.h:59
ClusterEtGreater
Definition: MyCluster.h:53
mps_fire.i
i
Definition: mps_fire.py:355
CellGreater
Definition: MyCluster.h:32
CalCluster::ncells
int ncells
Definition: MyCluster.h:26
CalCluster::SubClusterList
std::vector< CalCluster > SubClusterList
Definition: MyCluster.h:29
CalCell
Definition: MyCluster.h:14
ClusterHd
Definition: MyCluster.h:7
CalCluster::em
double em
Definition: MyCluster.h:23
CalCluster::hd
double hd
Definition: MyCluster.h:24
ClusterPtGreater::operator()
bool operator()(const CalCluster &i, const CalCluster &j)
Definition: MyCluster.h:62
ClusterEm
Definition: MyCluster.h:7
MatchParam
Definition: MyCluster.h:9
MatchParam::index
int index
Definition: MyCluster.h:10
CalCluster::clusterCellList
std::vector< CalCell > clusterCellList
Definition: MyCluster.h:27
ClusterTower
Definition: MyCluster.h:7
ClusterEtGreater::operator()
bool operator()(const CalCluster &i, const CalCluster &j)
Definition: MyCluster.h:55
RecHitHd
Definition: MyCluster.h:7
RecHitEm
Definition: MyCluster.h:7
CalCluster::Momentum
CLHEP::HepLorentzVector Momentum
Definition: MyCluster.h:22
CalCluster
Definition: MyCluster.h:21
CalCell::pid
int pid
Definition: MyCluster.h:16
CellEtGreater
Definition: MyCluster.h:39
MatchParam::distance
double distance
Definition: MyCluster.h:11
ClusterGreater
Definition: MyCluster.h:46
CaloTowerEm
Definition: MyCluster.h:7
CalCluster::type
int type
Definition: MyCluster.h:25
ClusterGreater::operator()
bool operator()(const CalCluster &i, const CalCluster &j)
Definition: MyCluster.h:48
CellGreater::operator()
bool operator()(const CalCell &i, const CalCell &j)
Definition: MyCluster.h:34
CalCell::Momentum
CLHEP::HepLorentzVector Momentum
Definition: MyCluster.h:15
CalCluster::MatchedClusters
std::vector< MatchParam > MatchedClusters
Definition: MyCluster.h:28
CalCell::used
bool used
Definition: MyCluster.h:17
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
CaloTowerHd
Definition: MyCluster.h:7
CellEtGreater::operator()
bool operator()(const CalCell &i, const CalCell &j)
Definition: MyCluster.h:41
ClusterEmHd
Definition: MyCluster.h:7