Belle II Software  release-05-01-25
PXDResultFilterFactory.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2017 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Nils Braun *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 #pragma once
11 
12 #include <tracking/ckf/pxd/filters/results/BasePXDResultFilter.h>
13 
14 #include <tracking/trackFindingCDC/filters/base/FilterFactory.dcl.h>
15 
16 namespace Belle2 {
21  class PXDResultFilterFactory : public TrackFindingCDC::FilterFactory<BasePXDResultFilter> {
23 
24  private:
26  using Super = TrackFindingCDC::FilterFactory<BasePXDResultFilter>;
27 
28  public:
30  explicit PXDResultFilterFactory(const std::string& defaultFilterName = "all");
31 
34 
36  std::string getIdentifier() const override;
37 
39  std::string getFilterPurpose() const override;
40 
42  std::map<std::string, std::string> getValidFilterNamesAndDescriptions() const override;
43 
45  std::unique_ptr<BasePXDResultFilter> create(const std::string& filterName) const override;
46  };
48 }
Belle2::PXDResultFilterFactory::PXDResultFilterFactory
PXDResultFilterFactory(const std::string &defaultFilterName="all")
Constructor forwarding the default filter name.
Definition: PXDResultFilterFactory.cc:41
Belle2::PXDResultFilterFactory::~PXDResultFilterFactory
~PXDResultFilterFactory()
Default destructor.
Belle2::PXDResultFilterFactory::create
std::unique_ptr< BasePXDResultFilter > create(const std::string &filterName) const override
Create a filter with the given name.
Definition: PXDResultFilterFactory.cc:72
Belle2::PXDResultFilterFactory::Super
TrackFindingCDC::FilterFactory< BasePXDResultFilter > Super
Type of the base class.
Definition: PXDResultFilterFactory.h:34
Belle2::PXDResultFilterFactory::getIdentifier
std::string getIdentifier() const override
Getter for a short identifier for the factory.
Definition: PXDResultFilterFactory.cc:48
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::PXDResultFilterFactory::getValidFilterNamesAndDescriptions
std::map< std::string, std::string > getValidFilterNamesAndDescriptions() const override
Getter for valid filter names and a description for each.
Definition: PXDResultFilterFactory.cc:58
Belle2::PXDResultFilterFactory::getFilterPurpose
std::string getFilterPurpose() const override
Getter for a descriptive purpose of the constructed filters.
Definition: PXDResultFilterFactory.cc:53