BlobReframer.h
Go to the documentation of this file.
1 /* A blob reframer outputs a frame for each input cluster of blobs.
2  *
3  * The output frame will only have samples which contribute to channel
4  * and time regions covered by the blobs. The output samples are
5  * taken from the frame that is reached back via blob->slice->frame.
6  * If multiple frames are reached they are nonetheless combined into
7  * one output frame.
8  */
9 
10 #ifndef WIRECELLIMG_BLOBREFRAMER
11 #define WIRECELLIMG_BLOBREFRAMER
12 
15 
16 namespace WireCell {
17 
18  namespace Img {
19 
20  class BlobReframer : public IClusterFramer, public IConfigurable {
21  public:
22 
23  BlobReframer();
24  virtual ~BlobReframer();
25 
26  virtual void configure(const WireCell::Configuration& cfg);
28 
29  virtual bool operator()(const input_pointer& in, output_pointer& out);
30 
31  };
32  }
33 }
34 
35 #endif
virtual WireCell::Configuration default_configuration() const
Optional, override to return a hard-coded default configuration.
cfg
Definition: dbjson.py:29
std::shared_ptr< const ICluster > input_pointer
Definition: IFunctionNode.h:39
virtual void configure(const WireCell::Configuration &cfg)
Accept a configuration.
std::shared_ptr< const IFrame > output_pointer
Definition: IFunctionNode.h:40
Definition: Main.h:22
Json::Value Configuration
Definition: Configuration.h:50
virtual bool operator()(const input_pointer &in, output_pointer &out)
The calling signature: