synfig-core  1.0.3
trgt_yuv.h
Go to the documentation of this file.
1 /* === S Y N F I G ========================================================= */
22 /* ========================================================================= */
23 
24 /* === S T A R T =========================================================== */
25 
26 #ifndef __SYNFIG_TRGT_PPM_H
27 #define __SYNFIG_TRGT_PPM_H
28 
29 /* === H E A D E R S ======================================================= */
30 
31 #include <synfig/target_scanline.h>
32 #include <synfig/string.h>
33 #include <synfig/surface.h>
34 #include <synfig/smartfile.h>
35 #include <synfig/targetparam.h>
36 #include <cstdio>
37 
38 /* === M A C R O S ========================================================= */
39 
40 /* === T Y P E D E F S ===================================================== */
41 
42 /* === C L A S S E S & S T R U C T S ======================================= */
43 
45 {
47 
48 private:
49 
50  synfig::String filename;
51  synfig::SmartFILE file;
52  synfig::Surface surface;
53 
54  bool dithering;
55 
56 public:
57 
58  yuv(const char *filename, const synfig::TargetParam& /* params */);
59  virtual ~yuv();
60 
61  virtual bool init(synfig::ProgressCallback *cb);
62  virtual bool set_rend_desc(synfig::RendDesc *desc);
63  virtual bool start_frame(synfig::ProgressCallback *cb);
64  virtual void end_frame();
65 
66  virtual synfig::Color* start_scanline(int scanline);
67  virtual bool end_scanline();
68 };
69 
70 /* === E N D =============================================================== */
71 
72 #endif