BlobGrouping.h
Go to the documentation of this file.
1 /** BlobGrouping takes in a channel-level cluster and produces another with channels merged ('m' nodes)
2  *
3  * The input cluster must have (b,w), (c,w) and (s,b) edges and may have (b,b) edges.
4  *
5  * The output cluster will have (m, b) and (s,b) edges and if the input has (b,b) edges, they are preserved.
6  *
7  * Grouping is done in the "coarse grained" strategy.
8  *
9  * See manual for more info.
10  */
11 #ifndef WIRECELL_BLOBGROUPING_H
12 #define WIRECELL_BLOBGROUPING_H
13 
16 
17 namespace WireCell {
18 
19  namespace Img {
20 
21 
22  class BlobGrouping : public IClusterFilter, public IConfigurable {
23  public:
24 
25  BlobGrouping();
26  virtual ~BlobGrouping();
27 
28  virtual void configure(const WireCell::Configuration& cfg);
30 
31  virtual bool operator()(const input_pointer& in, output_pointer& out);
32 
33  private:
34 
35  };
36 
37  } // Img
38 
39 
40 } // WireCell
41 
42 
43 #endif /* WIRECELL_BLOBGROUPING_H */
virtual bool operator()(const input_pointer &in, output_pointer &out)
The calling signature:
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
std::shared_ptr< const ICluster > output_pointer
Definition: IFunctionNode.h:40
Definition: Main.h:22
virtual void configure(const WireCell::Configuration &cfg)
Accept a configuration.
Json::Value Configuration
Definition: Configuration.h:50