DepoSetFanout.h
Go to the documentation of this file.
1 #ifndef WIRECELL_GEN_DEPOSETFANOUT
2 #define WIRECELL_GEN_DEPOSETFANOUT
3 
6 #include "WireCellUtil/Logging.h"
7 
8 namespace WireCell {
9  namespace Gen {
10 
11  // Fan out 1 deposet to N set at construction or configuration time.
12  class DepoSetFanout : public IDepoSetFanout, public IConfigurable {
13  public:
14  DepoSetFanout(size_t multiplicity = 0);
15  virtual ~DepoSetFanout();
16 
17  // INode, override because we get multiplicity at run time.
18  virtual std::vector<std::string> output_types();
19 
20  // IFanout
21  virtual bool operator()(const input_pointer& in, output_vector& outv);
22 
23  // IConfigurable
24  virtual void configure(const WireCell::Configuration& cfg);
26 
27  private:
29 
31  };
32  }
33 }
34 
35 
36 #endif
37 
virtual std::vector< std::string > output_types()
virtual WireCell::Configuration default_configuration() const
Optional, override to return a hard-coded default configuration.
cfg
Definition: dbjson.py:29
DepoSetFanout(size_t multiplicity=0)
std::vector< output_pointer > output_vector
Definition: IFanoutNode.h:45
std::shared_ptr< spdlog::logger > logptr_t
Definition: Logging.h:24
Definition: Main.h:22
std::shared_ptr< const IDepoSet > input_pointer
Definition: IFanoutNode.h:43
Json::Value Configuration
Definition: Configuration.h:50
virtual bool operator()(const input_pointer &in, output_vector &outv)
virtual void configure(const WireCell::Configuration &cfg)
Accept a configuration.