synfig::Layer Class Reference

#include <layer.h>

Inheritance diagram for synfig::Layer:

synfig::Node CurveWarp InsideOut Julia Layer_TimeLoop Mandelbrot Rotate SuperSample synfig::Layer_Clamp synfig::Layer_ColorCorrect synfig::Layer_Composite synfig::Layer_Mime synfig::Layer_SphereDistort synfig::Layer_Stretch Translate Warp Zoom

List of all members.

Public Types

typedef Layer *(* Factory )()
 Type that represents a pointer to a layer's constructor.
typedef std::map< String,
BookEntry
Book
typedef std::map< String,
ValueBase
ParamList
typedef etl::handle< LayerHandle
typedef etl::loose_handle< LayerLooseHandle
typedef etl::handle< const LayerConstHandle
typedef std::map< String,
etl::rhandle< ValueNode > > 
DynamicParamList
typedef ParamVocab Vocab
 A list type which describes all the parameters that a layer has.

Public Member Functions

sigc::signal< void > & signal_status_changed ()
 Status Changed.
sigc::signal< void, String > & signal_param_changed ()
 Parameter changed.
sigc::signal< void > & signal_description_changed ()
 Description Changed.
sigc::signal< void, int,
etl::handle< Canvas > > & 
signal_moved ()
 Moved.
sigc::signal< void, String > & signal_added_to_group ()
sigc::signal< void, String > & signal_removed_from_group ()
virtual ~Layer ()
virtual void on_canvas_set ()
void add_to_group (const String &)
 Adds this layer to the given layer group.
void remove_from_group (const String &)
 Removes this layer from the given layer group.
void remove_from_all_groups ()
 Removes this layer from all layer groups.
String get_group () const
 Gets the name of the group that this layer belongs to.
const DynamicParamListdynamic_param_list () const
 writeme
bool connect_dynamic_param (const String &param, etl::loose_handle< ValueNode >)
bool disconnect_dynamic_param (const String &param)
void enable ()
 Enables the layer for rendering (Making it active).
void disable ()
 Disables the layer for rendering. (Making it inactive).
void set_active (bool x)
 Sets the 'active' flag for the Layer to the state described by x.
bool active () const
 Returns that status of the 'active' flag.
int get_depth () const
 Returns the position of the layer in the canvas.
float get_z_depth () const
float get_z_depth (const synfig::Time &t) const
void set_z_depth (float x)
void set_canvas (etl::loose_handle< Canvas > canvas)
 Sets the Canvas that this Layer is a part of.
etl::loose_handle< Canvasget_canvas () const
 Returns a handle to the Canvas to which this Layer belongs.
const Stringget_description () const
void set_description (const String &x)
const String get_non_empty_description () const
 Returns the layer's description if it's not empty, else its local name.
const String get_param_local_name (const String &param_name) const
 Returns the localised version of the given layer parameter.
virtual Rect get_bounding_rect () const
virtual Rect get_full_bounding_rect (Context context) const
virtual String get_name () const
 Returns a string containing the name of the Layer.
virtual String get_local_name () const
 Returns a string containing the localized name of the Layer.
virtual Vocab get_param_vocab () const
 Gets the parameter vocabulary.
virtual String get_version () const
 Gets the version string for this layer.
virtual etl::handle< Transformget_transform () const
virtual bool set_version (const String &ver)
 Sets the virtual version to use for backwards-compatibility.
virtual void reset_version ()
 Resets the virtual version.
virtual bool set_param (const String &param, const ValueBase &value)
 Sets the parameter described by param to value.
virtual bool set_param_list (const ParamList &)
 Sets a list of parameters.
virtual ValueBase get_param (const String &param) const
 Get the value of the specified parameter.
virtual ParamList get_param_list () const
 Get a list of all of the parameters and their values.
virtual void set_time (Context context, Time time) const
 Sets the time for the selected Layer and those under it.
virtual void set_time (Context context, Time time, const Point &point) const
 Sets the time for the selected Layer and those under it for a specific point.
virtual Color get_color (Context context, const Point &pos) const
 Gets the color of the Canvas at pos.
virtual bool accelerated_render (Context context, Surface *surface, int quality, const RendDesc &renddesc, ProgressCallback *cb) const
 Renders the Canvas to the given Surface in an accelerated manner.
virtual Handle hit_check (Context context, const Point &point) const
 Checks to see if a part of the layer is directly under point.
virtual Handle clone (const GUID &deriv_guid=GUID()) const
 Duplicates the Layer.
virtual bool reads_context () const
 Returns true if the layer needs to be able to examine its context.
virtual Handle simple_clone () const
 Duplicates the Layer without duplicating the value nodes.

Static Public Member Functions

static void register_in_book (const BookEntry &)
static Bookbook ()
static bool subsys_init ()
static bool subsys_stop ()
static Layer::LooseHandle create (const String &type)
 Creates a Layer of type type.

Protected Member Functions

 Layer ()
virtual void on_changed ()
 This is called whenever a parameter is changed.
virtual void get_times_vfunc (Node::time_set &set) const
 Called to figure out the animation time information.

Friends

class ValueNode
class Context

Classes

struct  BookEntry


Detailed Description

Todo:
writeme
See also:
Canvas

Member Typedef Documentation

Type that represents a pointer to a layer's constructor.

typedef etl::handle<Layer> synfig::Layer::Handle

Reimplemented in synfig::Layer_Bitmap.

typedef etl::loose_handle<Layer> synfig::Layer::LooseHandle

typedef etl::handle<const Layer> synfig::Layer::ConstHandle

typedef std::map<String,etl::rhandle<ValueNode> > synfig::Layer::DynamicParamList

A list type which describes all the parameters that a layer has.

See also:
get_param_vocab()


Constructor & Destructor Documentation

Layer::Layer (  )  [protected]

References f.

synfig::Layer::~Layer (  )  [virtual]


Member Function Documentation

void Layer::register_in_book ( const BookEntry entry  )  [static]

Layer::Book & Layer::book (  )  [static]

bool Layer::subsys_init (  )  [static]

References _layer_book, INCLUDE_LAYER, and LAYER_ALIAS.

Referenced by synfig::Main::Main().

bool Layer::subsys_stop (  )  [static]

References _layer_book.

Referenced by synfig::Main::Main(), and synfig::Main::~Main().

sigc::signal<void>& synfig::Layer::signal_status_changed (  )  [inline]

Status Changed.

sigc::signal<void,String>& synfig::Layer::signal_param_changed (  )  [inline]

Parameter changed.

sigc::signal<void>& synfig::Layer::signal_description_changed (  )  [inline]

Description Changed.

sigc::signal<void, int, etl::handle<Canvas> >& synfig::Layer::signal_moved (  )  [inline]

Moved.

sigc::signal<void, String>& synfig::Layer::signal_added_to_group (  )  [inline]

Referenced by add_to_group().

sigc::signal<void, String>& synfig::Layer::signal_removed_from_group (  )  [inline]

Referenced by remove_from_all_groups().

void synfig::Layer::on_canvas_set (  )  [virtual]

Reimplemented in Import, and synfig::Layer_PasteCanvas.

Referenced by set_canvas().

void Layer::add_to_group ( const String x  ) 

Adds this layer to the given layer group.

References remove_from_all_groups(), and signal_added_to_group().

void Layer::remove_from_group ( const String x  ) 

Removes this layer from the given layer group.

References remove_from_all_groups().

void Layer::remove_from_all_groups (  ) 

Removes this layer from all layer groups.

References signal_removed_from_group().

Referenced by add_to_group(), remove_from_group(), and ~Layer().

String Layer::get_group (  )  const

Gets the name of the group that this layer belongs to.

const DynamicParamList& synfig::Layer::dynamic_param_list (  )  const [inline]

bool Layer::connect_dynamic_param ( const String param,
etl::loose_handle< ValueNode value_node 
)

bool Layer::disconnect_dynamic_param ( const String param  ) 

void synfig::Layer::enable (  )  [inline]

Enables the layer for rendering (Making it active).

References set_active().

void synfig::Layer::disable (  )  [inline]

Disables the layer for rendering. (Making it inactive).

When a layer is disabled, it will be skipped when the canvas is rendered.

References set_active().

void Layer::set_active ( bool  x  ) 

Sets the 'active' flag for the Layer to the state described by x.

When a layer is disabled, it will be skipped when the canvas is rendered.

References synfig::Node::on_changed().

Referenced by disable(), and enable().

bool synfig::Layer::active (  )  const [inline]

Returns that status of the 'active' flag.

Referenced by clone(), get_full_bounding_rect(), and simple_clone().

int Layer::get_depth (  )  const

Returns the position of the layer in the canvas.

Returns negative on error

References get_canvas().

float synfig::Layer::get_z_depth (  )  const [inline]

Todo:
This needs to be documented further.

Referenced by get_param().

float Layer::get_z_depth ( const synfig::Time t  )  const

Todo:
This needs to be documented further.

References dynamic_param_list().

void synfig::Layer::set_z_depth ( float  x  )  [inline]

Todo:
This needs to be documented further.

void synfig::Layer::set_canvas ( etl::loose_handle< Canvas canvas  ) 

Sets the Canvas that this Layer is a part of.

References on_canvas_set().

etl::loose_handle< synfig::Canvas > synfig::Layer::get_canvas (  )  const

const String& synfig::Layer::get_description (  )  const [inline]

Todo:
This needs to be documented further.

Referenced by clone(), get_non_empty_description(), simple_clone(), and Outline::sync().

void Layer::set_description ( const String x  ) 

const String synfig::Layer::get_non_empty_description (  )  const [inline]

Returns the layer's description if it's not empty, else its local name.

References get_description(), and get_local_name().

Referenced by synfig::Layer_Composite::set_param().

const String Layer::get_param_local_name ( const String param_name  )  const

Returns the localised version of the given layer parameter.

References get_param_vocab().

Rect Layer::get_bounding_rect (  )  const [virtual]

Rect Layer::get_full_bounding_rect ( Context  context  )  const [virtual]

String Layer::get_name (  )  const [virtual]

Returns a string containing the name of the Layer.

References synfig::ValueBase::get(), and get_param().

Referenced by clone(), synfig::Layer_Mime::get_local_name(), synfig::Layer_Composite::set_param(), and simple_clone().

String Layer::get_local_name (  )  const [virtual]

Returns a string containing the localized name of the Layer.

Reimplemented in synfig::Layer_Mime, and synfig::Layer_PasteCanvas.

References synfig::ValueBase::get(), and get_param().

Referenced by get_non_empty_description().

Layer::Vocab Layer::get_param_vocab ( void   )  const [virtual]

String Layer::get_version (  )  const [virtual]

Gets the version string for this layer.

Reimplemented in synfig::Layer_Mime.

References synfig::ValueBase::get(), and get_param().

etl::handle< Transform > Layer::get_transform (  )  const [virtual]

Todo:
This needs to be documented further.

Reimplemented in InsideOut, Rotate, synfig::Layer_SphereDistort, synfig::Layer_Stretch, Translate, Twirl, Warp, and Zoom.

bool Layer::set_version ( const String ver  )  [virtual]

Sets the virtual version to use for backwards-compatibility.

See also:
reset_version()

Reimplemented in Layer_Freetype, Layer_TimeLoop, Outline, Plant, and synfig::Layer_Mime.

void Layer::reset_version (  )  [virtual]

Resets the virtual version.

See also:
set_version()

Reimplemented in Layer_Freetype, Layer_TimeLoop, and Outline.

bool Layer::set_param ( const String param,
const ValueBase value 
) [virtual]

bool Layer::set_param_list ( const ParamList list  )  [virtual]

Sets a list of parameters.

References set_param().

ValueBase Layer::get_param ( const String param  )  const [virtual]

Layer::ParamList Layer::get_param_list (  )  const [virtual]

Get a list of all of the parameters and their values.

References get_param(), and get_param_vocab().

Referenced by clone(), synfig::optimize_layers(), and simple_clone().

void Layer::set_time ( Context  context,
Time  time 
) const [virtual]

Sets the time for the selected Layer and those under it.

Parameters:
context Context iterator referring to next Layer.
time writeme
See also:
Handle::set_time()

Reimplemented in Import, Layer_TimeLoop, Outline, Region, NoiseDistort, Noise, synfig::Layer_Duplicate, synfig::Layer_MotionBlur, and synfig::Layer_PasteCanvas.

References synfig::Context::set_time().

Referenced by synfig::optimize_layers().

void Layer::set_time ( Context  context,
Time  time,
const Point point 
) const [virtual]

Sets the time for the selected Layer and those under it for a specific point.

Parameters:
context Context iterator referring to next Layer.
time writeme
point writeme
See also:
Handle::set_time()
Todo:
point should be of the type const Point &

Reimplemented in Import, NoiseDistort, Noise, synfig::Layer_Duplicate, and synfig::Layer_MotionBlur.

References synfig::Context::set_time().

Color Layer::get_color ( Context  context,
const Point pos 
) const [virtual]

bool Layer::accelerated_render ( Context  context,
Surface surface,
int  quality,
const RendDesc renddesc,
ProgressCallback cb 
) const [virtual]

Renders the Canvas to the given Surface in an accelerated manner.

Parameters:
context Context iterator referring to next Layer.
surface Pointer to Surface to render to.
quality The requested quality-level to render at.
renddesc The associated RendDesc.
cb Pointer to callback object. May be NULL if there is no callback.
Returns:
true on success, false on failure
See also:
Handle::accelerated_render()

Reimplemented in FilledRect, Metaballs, Layer_Freetype, Layer_Bevel, synfig::BooleanCurve, synfig::Layer_Clamp, CurveWarp, Rotate, Layer_Shade, synfig::Layer_SphereDistort, synfig::Layer_Stretch, SuperSample, Layer_TimeLoop, Translate, Warp, Zoom, Blur_Layer, synfig::Layer_ColorCorrect, Halftone2, Halftone3, LumaKey, RadialBlur, CheckerBoard, Circle, Rectangle, ConicalGradient, CurveGradient, LinearGradient, RadialGradient, SpiralGradient, Noise, Plant, synfig::Layer_Bitmap, synfig::Layer_Composite, synfig::Layer_Duplicate, synfig::Layer_Mime, synfig::Layer_MotionBlur, synfig::Layer_PasteCanvas, synfig::Layer_Shape, and synfig::Layer_SolidColor.

References _, synfig::ProgressCallback::error(), synfig::render(), and synfig::surface_target().

synfig::Layer::Handle Layer::hit_check ( synfig::Context  context,
const Point point 
) const [virtual]

Checks to see if a part of the layer is directly under point.

Parameters:
context Context iterator referring to next Layer.
point The point to check
Returns:
The handle of the layer under point. If there is not a layer under point, then returns an empty handle.

Reimplemented in FilledRect, Metaballs, SimpleCircle, CurveWarp, InsideOut, Rotate, synfig::Layer_SphereDistort, synfig::Layer_Stretch, Translate, Twirl, Warp, XORPattern, Zoom, Halftone2, Halftone3, LumaKey, CheckerBoard, Circle, Rectangle, ConicalGradient, CurveGradient, LinearGradient, RadialGradient, SpiralGradient, NoiseDistort, Noise, synfig::Layer_Bitmap, synfig::Layer_PasteCanvas, synfig::Layer_Shape, and synfig::Layer_SolidColor.

References synfig::Context::hit_check().

Layer::Handle Layer::clone ( const GUID deriv_guid = GUID()  )  const [virtual]

bool Layer::reads_context (  )  const [virtual]

Returns true if the layer needs to be able to examine its context.

context to render itself, other than for simple blending. For example, the blur layer will return true - it can't do its job if it can't see its context, and the circle layer will return false - rendering a circle doesn't depend on the underlying context until the final blend operation.

Reimplemented in Layer_Bevel, Layer_Shade, Twirl, Blur_Layer, Halftone2, Halftone3, LumaKey, RadialBlur, NoiseDistort, synfig::Layer_Duplicate, and synfig::Layer_MotionBlur.

Referenced by synfig::Layer_Composite::set_param().

Layer::Handle Layer::simple_clone (  )  const [virtual]

Duplicates the Layer without duplicating the value nodes.

References active(), book(), create(), dynamic_param_list(), get_description(), get_name(), and get_param_list().

void Layer::on_changed (  )  [protected, virtual]

This is called whenever a parameter is changed.

Reimplemented from synfig::Node.

References synfig::Time::end(), and synfig::Node::on_changed().

void Layer::get_times_vfunc ( Node::time_set set  )  const [protected, virtual]

Called to figure out the animation time information.

Implements synfig::Node.

Reimplemented in synfig::Layer_PasteCanvas.

Referenced by synfig::Layer_PasteCanvas::get_times_vfunc().

Layer::LooseHandle synfig::Layer::create ( const String type  )  [static]

Creates a Layer of type type.

If the Layer type is unknown, then a Mime layer is created in its place.

Parameters:
type A string describing the name of the layer to construct.
Returns:
Always returns a handle to a new Layer.
See also:
Mime

References book().

Referenced by clone(), synfig::open_canvas_as(), synfig::optimize_layers(), process_global_flags(), and simple_clone().


Friends And Related Function Documentation

friend class ValueNode [friend]

friend class Context [friend]


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

Generated on Fri Jul 31 00:01:58 2009 for synfig-core by  doxygen 1.5.6