FrameFanin.h
Go to the documentation of this file.
1 #ifndef WIRECELL_GEN_FRAMEFANIN
2 #define WIRECELL_GEN_FRAMEFANIN
3 
7 
8 #include <vector>
9 #include <string>
10 
11 namespace WireCell {
12  namespace Gen {
13 
14  // Fan in N frames to one.
15  class FrameFanin : public IFrameFanin , public IConfigurable {
16  public:
17  FrameFanin(size_t multiplicity = 2);
18  virtual ~FrameFanin();
19 
20  virtual std::vector<std::string> input_types();
21 
22  virtual bool operator()(const input_vector& invec, output_pointer& out);
23 
24  // IConfigurable
25  virtual void configure(const WireCell::Configuration& cfg);
27 
28  private:
30  std::vector<std::string> m_tags;
32  };
33  }
34 }
35 
36 #endif
std::vector< input_pointer > input_vector
Definition: IFaninNode.h:46
virtual void configure(const WireCell::Configuration &cfg)
Accept a configuration.
Definition: FrameFanin.cxx:44
cfg
Definition: dbjson.py:29
virtual std::vector< std::string > input_types()
Definition: FrameFanin.cxx:64
virtual bool operator()(const input_vector &invec, output_pointer &out)
Definition: FrameFanin.cxx:72
Definition: Main.h:22
std::vector< std::string > m_tags
Definition: FrameFanin.h:30
tagrules::Context m_ft
Definition: FrameFanin.h:31
Json::Value Configuration
Definition: Configuration.h:50
std::shared_ptr< const IFrame > output_pointer
Definition: IFaninNode.h:45
virtual WireCell::Configuration default_configuration() const
Optional, override to return a hard-coded default configuration.
Definition: FrameFanin.cxx:23
FrameFanin(size_t multiplicity=2)
Definition: FrameFanin.cxx:15