EICrecon
JANA based reconstruction for the EPIC detector
Loading...
Searching...
No Matches
CFDROCDigitization_factory.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-3.0-or-later
2// Copyright (C) 2025 Chun Yuen Tsang
3
4#pragma once
5
6#include <iostream>
7
11
12namespace eicrecon {
13
15 : public JOmniFactory<CFDROCDigitization_factory, CFDROCDigitizationConfig> {
16public:
18
19private:
20 std::unique_ptr<AlgoT> m_algo;
21
22 PodioInput<edm4hep::RawTimeSeries> m_in_sim_track{this};
23
24 PodioOutput<edm4eic::RawTrackerHit> m_out_reco_particles{this};
25
26 ParameterRef<double> m_fraction{this, "fraction", config().fraction};
27
28 Service<AlgorithmsInit_service> m_algorithmsInit{this};
29
30public:
31 void Configure() {
32 m_algo = std::make_unique<eicrecon::CFDROCDigitization>(GetPrefix());
33 m_algo->level(static_cast<algorithms::LogLevel>(logger()->level()));
34 m_algo->applyConfig(config());
35 m_algo->init();
36 }
37
38 void ChangeRun(int32_t /* run_number */) {}
39
40 void Process(int32_t /* run_number */, uint64_t /* event_number */) {
41 m_algo->process({m_in_sim_track()}, {m_out_reco_particles().get()});
42 }
43};
44} // namespace eicrecon
Definition JOmniFactory.h:30
CFDROCDigitizationConfig & config()
Retrieve reference to embedded config object.
Definition JOmniFactory.h:576
std::shared_ptr< spdlog::logger > & logger()
Retrieve reference to already-configured logger.
Definition JOmniFactory.h:573
Definition CFDROCDigitization_factory.h:15
void Process(int32_t, uint64_t)
Definition CFDROCDigitization_factory.h:40
void ChangeRun(int32_t)
Definition CFDROCDigitization_factory.h:38
void Configure()
Definition CFDROCDigitization_factory.h:31
Definition CFDROCDigitization.h:25
-client
Definition CalorimeterClusterRecoCoG.cc:37