9 #include <calobase/RawCluster.h>
10 #include <calobase/RawClusterContainer.h>
11 #include <calobase/RawClusterUtility.h>
12 #include <calobase/RawTowerGeomContainer.h>
17 #include <CLHEP/Vector/ThreeVector.h>
36 os <<
" ClusterJetInput: ";
38 os <<
"CLUSTER_CEMC to Jet::CEMC_CLUSTER";
40 os <<
"CLUSTER_EEMC to Jet::EEMC_CLUSTER";
42 os <<
"CLUSTER_HCALIN to Jet::HCALIN_CLUSTER";
44 os <<
"CLUSTER_HCALOUT to Jet::HCALOUT_CLUSTER";
50 if (
_verbosity > 0) cout <<
"ClusterJetInput::process_event -- entered" << endl;
51 GlobalVertexMap *vertexmap = findNode::getClass<GlobalVertexMap>(topNode,
"GlobalVertexMap");
54 cout <<
"ClusterJetInput::get_input - Fatal Error - GlobalVertexMap node is missing. Please turn on the do_global flag in the main macro in order to reconstruct the global vertex." << endl;
57 return std::vector<Jet *>();
60 if (vertexmap->
empty())
62 cout <<
"ClusterJetInput::get_input - Fatal Error - GlobalVertexMap node is empty. Please turn on the do_bbc or tracking reco flags in the main macro in order to reconstruct the global vertex." << endl;
63 return std::vector<Jet *>();
69 clusters = findNode::getClass<RawClusterContainer>(topNode,
"CLUSTER_CEMC");
72 return std::vector<Jet *>();
77 clusters = findNode::getClass<RawClusterContainer>(topNode,
"CLUSTER_EEMC");
80 return std::vector<Jet *>();
85 clusters = findNode::getClass<RawClusterContainer>(topNode,
"CLUSTER_HCALIN");
88 return std::vector<Jet *>();
93 clusters = findNode::getClass<RawClusterContainer>(topNode,
"CLUSTER_HCALOUT");
96 return std::vector<Jet *>();
101 clusters = findNode::getClass<RawClusterContainer>(topNode,
"TOPOCLUSTER_HCAL");
104 return std::vector<Jet *>();
109 clusters = findNode::getClass<RawClusterContainer>(topNode,
"TOPOCLUSTER_EMCAL");
112 return std::vector<Jet *>();
117 clusters = findNode::getClass<RawClusterContainer>(topNode,
"CLUSTER_FEMC");
120 return std::vector<Jet *>();
125 clusters = findNode::getClass<RawClusterContainer>(topNode,
"CLUSTER_FHCAL");
128 return std::vector<Jet *>();
133 return std::vector<Jet *>();
138 CLHEP::Hep3Vector vertex;
142 return std::vector<Jet *>();
144 std::vector<Jet *> pseudojets;
147 for (rtiter = begin_end.first; rtiter != begin_end.second; ++rtiter)
154 jet->
set_px(E_vec_cluster.x());
155 jet->
set_py(E_vec_cluster.y());
156 jet->
set_pz(E_vec_cluster.z());
159 pseudojets.push_back(jet);
162 if (
_verbosity > 0) cout <<
"ClusterJetInput::process_event -- exited" << endl;