LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
Modifier.h
Go to the documentation of this file.
1 #ifndef art_Framework_Core_Modifier_h
2 #define art_Framework_Core_Modifier_h
3 // vim: set sw=2 expandtab :
4 
5 //============================================================
6 // The base class of all modules that will insert products.
7 //============================================================
8 
13 
14 namespace art {
15 
16  class Modifier : public ModuleBase, private ProductRegistryHelper {
17  public:
18  template <typename UserConfig, typename UserKeysToIgnore = void>
19  using Table =
21 
22  ~Modifier() noexcept;
23  Modifier();
24 
25  Modifier(Modifier const&) = delete;
26  Modifier(Modifier&&) = delete;
27  Modifier& operator=(Modifier const&) = delete;
28  Modifier& operator=(Modifier&&) = delete;
29 
31  void registerProducts(ProductDescriptions& productsToRegister);
32 
33  protected:
37  };
38 
39 } // namespace art
40 
41 #endif /* art_Framework_Core_Modifier_h */
42 
43 // Local Variables:
44 // mode: c++
45 // End:
~Modifier() noexcept
void registerProducts(ProductDescriptions &productsToRegister)
Definition: Modifier.cc:16
void produces(std::string const &instanceName={}, Persistable const persistable=Persistable::Yes)
std::vector< BranchDescription > ProductDescriptions
void fillProductDescriptions()
Definition: Modifier.cc:10
ProducesCollector & producesCollector() noexcept
TypeLabelLookup_t const & expectedProducts() const
Definition: MVAAlg.h:12