EICrecon
JANA based reconstruction for the EPIC detector
Loading...
Searching...
No Matches
InclusiveKinematicsJB.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-3.0-or-later
2// Copyright (C) 2022, 2023 Sylvester Joosten, Dmitry Romanov, Wouter Deconinck
3
4#pragma once
5
6#include <algorithms/algorithm.h>
7#include <edm4eic/HadronicFinalStateCollection.h>
8#include <edm4eic/InclusiveKinematicsCollection.h>
9#include <edm4eic/ReconstructedParticleCollection.h>
10#include <edm4hep/MCParticleCollection.h>
11#include <string>
12#include <string_view>
13
16
17namespace eicrecon {
18
19using InclusiveKinematicsJBAlgorithm = algorithms::Algorithm<
20 algorithms::Input<edm4hep::MCParticleCollection, edm4hep::MCParticleCollection,
21 edm4eic::ReconstructedParticleCollection,
22 edm4eic::HadronicFinalStateCollection>,
23 algorithms::Output<edm4eic::InclusiveKinematicsCollection>>;
24
26 public WithPodConfig<NoConfig> {
27
28public:
29 InclusiveKinematicsJB(std::string_view name)
31 name,
32 {"MCBeamElectrons", "MCBeamProtons", "scatteredElectron", "hadronicFinalState"},
33 {"inclusiveKinematics"},
34 "Determine inclusive kinematics using Jacquet-Blondel method."} {}
35
36 void init() final;
37 void process(const Input&, const Output&) const final;
38
39private:
40 const algorithms::ParticleSvc& m_particleSvc = algorithms::ParticleSvc::instance();
41 double m_crossingAngle{-0.025};
42};
43
44} // namespace eicrecon
Definition InclusiveKinematicsJB.h:26
InclusiveKinematicsJB(std::string_view name)
Definition InclusiveKinematicsJB.h:29
Definition WithPodConfig.h:22
Definition ActsSvc.h:11
-client
Definition CalorimeterClusterRecoCoG.cc:37
algorithms::Algorithm< algorithms::Input< edm4hep::MCParticleCollection, edm4hep::MCParticleCollection, edm4eic::ReconstructedParticleCollection, edm4eic::HadronicFinalStateCollection >, algorithms::Output< edm4eic::InclusiveKinematicsCollection > > InclusiveKinematicsJBAlgorithm
Definition InclusiveKinematicsJB.h:23