IFrameFilter.h
Go to the documentation of this file.
1 #ifndef WIRECELL_IFRAMEFILTER
2 #define WIRECELL_IFRAMEFILTER
3 
6 #include "WireCellIface/IFrame.h"
7 
8 namespace WireCell {
9 
10  /** A frame filter is something that applies some transformation
11  * on its input frame to produce and output frame. This is a
12  * functional node so does no buffering. The unit of the sample
13  * of the output frame may differ from input.
14  *
15  * Note, if the output frame samples are conceptually integral
16  * they are nonetheless still stored as floating point values.
17  * Consumers of the output frame should take care of rounding and
18  * truncating as required.
19  */
20  class IFrameFilter : public IFunctionNode<IFrame,IFrame>
21  {
22  public:
23  typedef std::shared_ptr<IFrameFilter> pointer;
24 
25  virtual ~IFrameFilter() ;
26 
27  virtual std::string signature() {
28  return typeid(IFrameFilter).name();
29  }
30 
31  // supply:
32  // virtual bool operator()(const input_pointer& in, output_pointer& out);
33 
34  };
35 
36 
37 }
38 
39 #endif
static QCString name
Definition: declinfo.cpp:673
std::string string
Definition: nybbler.cc:12
virtual std::string signature()
Set the signature for all subclasses.
Definition: IFrameFilter.h:27
std::shared_ptr< IFrameFilter > pointer
Definition: IFrameFilter.h:23
Definition: Main.h:22