gramods
ChromaKeyView.hh
1 
2 #ifndef GRAMODS_GRAPHICS_CHROMAKEYVIEW
3 #define GRAMODS_GRAPHICS_CHROMAKEYVIEW
4 
5 // Required before gmCore/OFactory.hh for some compilers
6 #include <gmCore/io_float.hh>
7 
8 #include <gmGraphics/View.hh>
9 
10 BEGIN_NAMESPACE_GMGRAPHICS;
11 
18  : public View {
19 
20 public:
21 
22  ChromaKeyView();
23  virtual ~ChromaKeyView();
24 
29  void renderFullPipeline(ViewSettings settings) override;
30 
36  void traverse(Visitor *visitor) override;
37 
43  void addView(std::shared_ptr<View>);
44 
50  void setKey(gmCore::float3 key);
51 
59  void setTolerance(gmCore::float2 tol);
60 
61  GM_OFI_DECLARE;
62 
63 private:
64 
65  struct Impl;
66  std::unique_ptr<Impl> _impl;
67 };
68 
69 END_NAMESPACE_GMGRAPHICS;
70 
71 #endif
The ChromaKeyView filters another view making it transparent where the chroma key is matched within t...
Definition: ChromaKeyView.hh:18
The base of graphics View implementations.
Definition: View.hh:13
std::array< float, 3 > float3
Array of 3 float.
Definition: io_float.hh:15
std::array< float, 2 > float2
Array of 2 float.
Definition: io_float.hh:9
The visitor of a design pattern for automatic traversal.
Definition: Object.hh:75
Definition: ChromaKeyView.cpp:20
Package of settings affecting the rendering.
Definition: ViewBase.hh:30