LArOpenCV  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
LArImageClusterBase.h
Go to the documentation of this file.
1 
15 #ifndef __LARLITE_LARIMAGECLUSTERBASE_H__
16 #define __LARLITE_LARIMAGECLUSTERBASE_H__
17 
18 #include "Analysis/ana_base.h"
19 #include "Core/ImageManager.h"
21 
22 namespace larlite {
23 
28  class LArImageClusterBase : public ana_base {
29 
30  public:
31 
33  LArImageClusterBase(const std::string name="LArImageClusterBase");
34 
37 
38 
42  bool initialize();
43 
47  bool analyze(storage_manager* storage);
48 
52  bool finalize();
53 
54  larcv::ImageClusterManager& algo_manager(size_t plane_id);
55 
56  const std::vector<larcv::ImageClusterManager>& algo_manager_set() const;
57 
58  const std::string& producer() const { return _producer; }
59 
60  void set_config(const std::string cfg_file) {_config_file=cfg_file;}
61 
62  private:
63  std::vector<larcv::ImageClusterManager> _alg_mgr_v;
66  std::string _producer;
67  bool _profile;
68  std::string _config_file;
73  void Report() const;
74  protected:
75  virtual void _Report_() const = 0;
76  virtual void _Configure_(const ::fcllite::PSet&) = 0;
77  virtual void store_clusters(storage_manager* storage) = 0;
78  virtual void extract_image(storage_manager* storage) = 0;
80 
81  };
82 }
83 #endif
84 
85 //**************************************************************************
86 //
87 // For Analysis framework documentation, read Manual.pdf here:
88 //
89 // http://microboone-docdb.fnal.gov:8080/cgi-bin/ShowDocument?docid=3183
90 //
91 //**************************************************************************
92  // end of doxygen group