CLAM-Development  1.4.0
FrameTransformation.hxx
Go to the documentation of this file.
1 #ifndef _FrameTransformation_
2 #define _FrameTransformation_
3 
4 #include "Processing.hxx"
5 #include "InControl.hxx"
6 
8 
9 namespace CLAM
10 {
11  class Frame;
12 
14  {
15  public:
17  : mAmount("Amount", this) //soon to be deprecated
18  {
19  }
20  virtual bool Do(const Frame& in,Frame& out) = 0;
21 
22  const ProcessingConfig& GetConfig() const { return mConfig; }
23 
24  virtual bool ConcreteStart(){ return InitControls();}
25 
27  virtual bool InitControls()
28  {
29  mAmount.DoControl(0.);
30  return true;
31  }
32 
33  protected:
34 
36 
37  FloatInControl mAmount; //soon to be deprecated
38  };
39 
40  //@todo: could also add ports here
41  template <typename T>
43  {
44  public:
45  virtual bool Do(const T&, T&) = 0;
46  };
47 
48 } // namespace CLAM
49 
50 #endif
51