CbmRoot
Loading...
Searching...
No Matches
DigiEventSelector.h
Go to the documentation of this file.
1/* Copyright (C) 2022-2025 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Shreya Roy [committer], Pierre-Alain Loizeau, Norbert Herrmann, Volker Friese, Dominik Smith */
4
5#ifndef CBM_ALGO_DIGIEVENTSELECTOR_H
6#define CBM_ALGO_DIGIEVENTSELECTOR_H 1
7
11
12#include <cstdint>
13#include <gsl/span>
14#include <map>
15
16namespace cbm::algo::evbuild
17{
18
26 std::map<ECbmModuleId, size_t> fMinNumDigis = {};
27 std::map<ECbmModuleId, size_t> fMinNumLayers = {};
28 };
29
30
41
42 public:
45
50 bool operator()(const DigiEvent& event) const;
51
55 void RegisterSetup(std::shared_ptr<RecoSetup> pSetup) { fpRecoSetup = pSetup; }
56
58 std::string ToString() const;
59
60
61 private: // methods
67 bool CheckStsStations(gsl::span<const CbmStsDigi> digis, size_t minNum) const;
68
74 bool CheckTofLayers(gsl::span<const CbmTofDigi> digis, size_t minNum) const;
75
76
77 private: // members
79 std::shared_ptr<RecoSetup> fpRecoSetup;
80 };
81
82} // namespace cbm::algo::evbuild
83
84#endif /* CBM_ALGO_DIGIEVENTSELECTOR_H */
A collection of reconstruction setup unit interfaces for different CBM subsystems.
Configuration of the DigiEventSelector class.
void RegisterSetup(std::shared_ptr< RecoSetup > pSetup)
Registers tracking setup.
DigiEventSelectorConfig fConfig
Configuration / parameters.
bool operator()(const DigiEvent &event) const
Test one event for the selection criteria.
bool CheckStsStations(gsl::span< const CbmStsDigi > digis, size_t minNum) const
Test for the number of STS stations.
std::shared_ptr< RecoSetup > fpRecoSetup
Tracking setup (access to stations info)
bool CheckTofLayers(gsl::span< const CbmTofDigi > digis, size_t minNum) const
Test for the number of TOF layers.
std::string ToString() const
Info to string.
DigiEventSelector(DigiEventSelectorConfig config)
Constructor with configuration.
Event data with event number and trigger time.
Definition DigiData.h:82
std::map< ECbmModuleId, size_t > fMinNumLayers
std::map< ECbmModuleId, size_t > fMinNumDigis