Gnash  0.8.11dev
Classes | Public Types | Public Member Functions | List of all members
gnash::ScreenShotter Class Reference

Handles screen dumps. More...

#include <ScreenShotter.h>

Classes

struct  NoAction
 

Public Types

typedef std::vector< size_t > FrameList
 

Public Member Functions

 ScreenShotter (const std::string &fileName, int quality=100)
 Create a ScreenShotter with output type selected from filename. More...
 
 ScreenShotter (std::string fileName, FileType f, int quality=100)
 Create a ScreenShotter, specifying the output type. More...
 
 ~ScreenShotter ()
 
void now ()
 Take a screenshot at the next possible moment. More...
 
void lastFrame ()
 Take a screenshot when the last frame is reached. More...
 
void last (const Renderer &r) const
 To be called on the last frame before exit. More...
 
template<typename Action >
void last (const Renderer &r, Action *t=0) const
 To be called on the last frame before exit. More...
 
void screenShot (const Renderer &r, size_t frameAdvance)
 Takes a screenshot if required. More...
 
template<typename Action >
void screenShot (const Renderer &r, size_t frameAdvance, Action *t=0)
 Takes a screenshot if required. More...
 
void setFrames (const FrameList &frames)
 Request a list of frames to be rendered to image files. More...
 

Detailed Description

Handles screen dumps.

Member Typedef Documentation

§ FrameList

typedef std::vector<size_t> gnash::ScreenShotter::FrameList

Constructor & Destructor Documentation

§ ScreenShotter() [1/2]

gnash::ScreenShotter::ScreenShotter ( const std::string &  fileName,
int  quality = 100 
)

Create a ScreenShotter with output type selected from filename.

§ ScreenShotter() [2/2]

gnash::ScreenShotter::ScreenShotter ( std::string  fileName,
FileType  f,
int  quality = 100 
)

Create a ScreenShotter, specifying the output type.

§ ~ScreenShotter()

gnash::ScreenShotter::~ScreenShotter ( )

Member Function Documentation

§ last() [1/2]

void gnash::ScreenShotter::last ( const Renderer r) const
inline

To be called on the last frame before exit.

Parameters
rThe renderer to use to render the image. Which frame is last depends on the execution path of the SWF, whether the SWF loops, whether a timeout was requested or a maximum number of advances set. Those conditions are not knowable in advance, so the last frame is a special case.

References gnash::key::r.

§ last() [2/2]

template<typename Action >
void gnash::ScreenShotter::last ( const Renderer r,
Action *  t = 0 
) const
inline

To be called on the last frame before exit.

Template Parameters
ActionThe functor to call only when a screenshot is due.
Parameters
rThe renderer to use to render the image. Which frame is last depends on the execution path of the SWF, whether the SWF loops, whether a timeout was requested or a maximum number of advances set. Those conditions are not knowable in advance, so the last frame is a special case.

References gnash::key::t.

§ lastFrame()

void gnash::ScreenShotter::lastFrame ( )
inline

Take a screenshot when the last frame is reached.

§ now()

void gnash::ScreenShotter::now ( )
inline

Take a screenshot at the next possible moment.

§ screenShot() [1/2]

void gnash::ScreenShotter::screenShot ( const Renderer r,
size_t  frameAdvance 
)
inline

Takes a screenshot if required.

Called on each advance.

Parameters
frameAdvanceused to check whether a screenshot is required as well as to construct the filename.
rThe renderer to use to render the image.

References gnash::key::r.

§ screenShot() [2/2]

template<typename Action >
void gnash::ScreenShotter::screenShot ( const Renderer r,
size_t  frameAdvance,
Action *  t = 0 
)
inline

Takes a screenshot if required.

Called on each advance, invoking a functor before any screenshot is taken.

Template Parameters
ActionThe functor to call only when a screenshot is due.
Parameters
frameAdvanceused to check whether a screenshot is required as well as to construct the filename.
rThe renderer to use to render the image.

References gnash::key::r, setFrames(), and gnash::key::t.

§ setFrames()

void gnash::ScreenShotter::setFrames ( const FrameList frames)

Request a list of frames to be rendered to image files.

Referenced by screenShot().


The documentation for this class was generated from the following files: