All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
BaseFlashFilter.h
Go to the documentation of this file.
1 /**
2  * \file BaseFlashFilter.h
3  *
4  * \ingroup Base
5  *
6  * \brief Class def header for a class BaseFlashFilter
7  *
8  * @author kazuhiro
9  */
10 
11 /** \addtogroup Base
12 
13  @{*/
14 #ifndef OPT0FINDER_BASEFLASHFILTER_H
15 #define OPT0FINDER_BASEFLASHFILTER_H
16 
17 #include "BaseAlgorithm.h"
18 
19 namespace flashmatch {
20  /**
21  \class BaseFlashFilter
22  Algorithm base class for filtering out optical flashes from a candidate list \n
23  to be matched with TPC object.
24  */
25  class BaseFlashFilter : public BaseAlgorithm {
26 
27  public:
28 
29  /// Default constructor
30  BaseFlashFilter(const std::string name="noname") : BaseAlgorithm(kFlashFilter,name)
31  {}
32 
33  /// Default destructor
34  virtual ~BaseFlashFilter(){}
35 
36  /**
37  CORE FUNCTION: takes in a list of flash and returns a list of flash TO BE USED for matching. \n
38  */
39  virtual IDArray_t Filter(const FlashArray_t&) = 0;
40 
41  };
42 }
43 
44 #endif
45 /** @} */ // end of doxygen group
46 
Class def header for a class BaseAlgorithm.
Algorithm type to filter out flash from matching candidate list.
virtual ~BaseFlashFilter()
Default destructor.
virtual IDArray_t Filter(const FlashArray_t &)=0
std::vector< flashmatch::ID_t > IDArray_t
Index collection.
BaseFlashFilter(const std::string name="noname")
Default constructor.
std::vector< flashmatch::Flash_t > FlashArray_t
Collection of Flash objects.
const std::string & name() const
Name getter, defined in a logger instance attribute.
Definition: LoggerFeature.h:51