FrameFanout.h
Go to the documentation of this file.
1 #ifndef WIRECELL_GEN_FRAMEFANOUT
2 #define WIRECELL_GEN_FRAMEFANOUT
3 
7 #include "WireCellUtil/Logging.h"
8 
9 namespace WireCell {
10  namespace Gen {
11 
12  // Fan out 1 frame to N set at construction or configuration time.
13  class FrameFanout : public IFrameFanout, public IConfigurable {
14  public:
15  FrameFanout(size_t multiplicity = 0);
16  virtual ~FrameFanout();
17 
18  // INode, override because we get multiplicity at run time.
19  virtual std::vector<std::string> output_types();
20 
21  // IFanout
22  virtual bool operator()(const input_pointer& in, output_vector& outv);
23 
24  // IConfigurable
25  virtual void configure(const WireCell::Configuration& cfg);
27 
28  private:
30 
33  };
34  }
35 }
36 
37 
38 #endif
39 
cfg
Definition: dbjson.py:29
FrameFanout(size_t multiplicity=0)
Definition: FrameFanout.cxx:13
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 IFrame > input_pointer
Definition: IFanoutNode.h:43
virtual std::vector< std::string > output_types()
Definition: FrameFanout.cxx:47
Json::Value Configuration
Definition: Configuration.h:50
tagrules::Context m_ft
Definition: FrameFanout.h:31
virtual WireCell::Configuration default_configuration() const
Optional, override to return a hard-coded default configuration.
Definition: FrameFanout.cxx:22
virtual bool operator()(const input_pointer &in, output_vector &outv)
Definition: FrameFanout.cxx:55
virtual void configure(const WireCell::Configuration &cfg)
Accept a configuration.
Definition: FrameFanout.cxx:35