Documentation for target_scanline.h
authorCarlos Lopez <genetita@gmail.com>
Thu, 29 Jul 2010 17:02:21 +0000 (19:02 +0200)
committerCarlos Lopez <genetita@gmail.com>
Thu, 29 Jul 2010 17:02:21 +0000 (19:02 +0200)
synfig-core/src/synfig/target_scanline.h

index c9e8199..518faa3 100644 (file)
@@ -1,6 +1,6 @@
 /* === S Y N F I G ========================================================= */
 /*!    \file target_scanline.h
-**     \brief Template Header
+**     \brief Template Header for the Target Scanline class
 **
 **     $Id$
 **
 namespace synfig {
 
 /*!    \class Target_Scanline
-**     \brief Render-target
-**     \todo writeme
+**     \brief This is a Target class that implements the render fucntion
+* for a line by line render procedure
 */
 class Target_Scanline : public Target
 {
+       //! Number of threads to use
        int threads_;
+       //! Current frame being rendered
        int curr_frame_;
 
 public:
        typedef etl::handle<Target_Scanline> Handle;
        typedef etl::loose_handle<Target_Scanline> LooseHandle;
        typedef etl::handle<const Target_Scanline> ConstHandle;
-
+       //! Default constructor (threads = 2 current frame = 0)
        Target_Scanline();
 
        //! Renders the canvas to the target
@@ -61,7 +63,12 @@ public:
        **      \see end_frame(), start_scanline()
        */
        virtual bool start_frame(ProgressCallback *cb=NULL)=0;
-
+       //! Returns the number of peniding frames to render. If it is zero it
+       //! stops rendering frames.
+       //! \todo Fix the calculation of frames to really render the last frame
+       //! When start frame= 1f and end frame = 1f it just render one frame (at 1f)
+       //! When start frame= 1f and end frame = 2f it just render one frame (at 1f)
+       //! which is a bug.
        virtual int next_frame(Time& time);
 
        //! Marks the end of a frame
@@ -84,11 +91,11 @@ public:
        **      \see start_scanline()
        */
        virtual bool end_scanline()=0;
-
+       //! Sets the number of threads
        void set_threads(int x) { threads_=x; }
-
+       //! Gets the number of threads
        int get_threads()const { return threads_; }
-
+       //! Puts the rendered surface onto the target.
        bool add_frame(const synfig::Surface *surface);
 private:
 }; // END of class Target_Scanline