6#include <unordered_map>
90 void AddParticle(
const std::string& particle_name,
double min_energy = 0.,
double max_energy = 0.);
155 auto Print() -> std::string;
165 std::unordered_map<int32_t, std::pair<double, double>>
list_;
Mode mode_
Filtering mode.
double maximum_allowed_energy_
global maximum engergy in GeV
auto GetMaxEnergy() const -> double
Get the global max energy threshold.
ParticleFilter()=default
Default constructor.
auto IsPointAllowed(const R3BNeulandPoint &neuland_point) -> bool
Check if the neuland point is allowed.
auto Print() -> std::string
Print the configuration of the current filter.
ParticleFilter(Mode mode)
constructor with mode
auto is_allowed_with_whitelist(const R3BNeulandPoint &neuland_point) -> bool
void SetMinEnergy(double energy)
Set the global energy range with a minimum value.
static auto Create(const Options &options) -> ParticleFilter
Generator for the filter object from the configuration.
void SetMode(Mode mode)
Set the mode of the fileter.
std::unordered_map< int32_t, std::pair< double, double > > list_
Whitelist with min energy values [GeV].
Mode
A enum class for the point filtering mode.
void AddParticle(const std::string &particle_name, double min_energy=0., double max_energy=0.)
Add particle to the list.
double minimum_allowed_energy_
global minimum engergy in GeV
auto is_allowed_with_blacklist(const R3BNeulandPoint &neuland_point) -> bool
auto GetMode() const -> Mode
Get the mode of the filter.
void SetMaxEnergy(double energy)
Set the global energy range with a maximum value.
PDGConverter pdg_converter_
auto GetMinEnergy() const -> double
Get the global minimum energy threshold.
Simulation of NeuLAND Bar/Paddle.
AnalysisApplication::Options Options
Option structure to create a filter.
std::vector< std::string > particle_names
std::vector< double > energy_range_mins
std::vector< double > energy_range_maxs