synfig-core  1.0.3
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
synfig::Node Class Reference

#include <node.h>

Inheritance diagram for synfig::Node:
synfig::Canvas synfig::Layer synfig::ValueNode CurveWarp InsideOut Julia Layer_Stroboscope 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 synfig::LinkableValueNode synfig::PlaceholderValueNode synfig::ValueNode_Animated synfig::ValueNode_Const

Public Types

typedef TimePointSet time_set

Public Member Functions

sigc::signal< void > & signal_deleted ()
sigc::signal< void > & signal_changed ()
sigc::signal< void, GUID > & signal_guid_changed ()
 GUID Changed.
virtual ~Node ()
void changed ()
const GUIDget_guid () const
 Gets the GUID for this Node.
virtual void set_guid (const GUID &x)
 Sets the GUID for this Node.
int get_time_last_changed () const
 Gets the time when the Node was changed.
void add_child (Node *x)
 Adds the parameter as the child of the current Node.
void remove_child (Node *x)
 Removes the parameter as a child of the current Node.
int parent_count () const
 Returns how many parenst has the current Node.
const time_setget_times () const
 Returns the cached times values for all the children.
RWLockget_rw_lock () const
 Writeme!
virtual String get_string () const =0

Public Attributes

std::set< Node * > parent_set

Protected Member Functions

 Node ()
void begin_delete ()
virtual void on_changed ()
virtual void on_guid_changed (GUID guid)
virtual void get_times_vfunc (time_set &set) const =0

Member Typedef Documentation

Todo:
This needs to be documented further.

Constructor & Destructor Documentation

Node::Node ( )
protected
Node::~Node ( )
virtual

Member Function Documentation

sigc::signal<void>& synfig::Node::signal_deleted ( )
inline

Referenced by begin_delete().

sigc::signal<void>& synfig::Node::signal_changed ( )
inline
sigc::signal<void,GUID>& synfig::Node::signal_guid_changed ( )
inline

GUID Changed.

Note
The second parameter is the OLD guid!

Referenced by on_guid_changed().

void Node::changed ( )
const synfig::GUID & Node::get_guid ( ) const
void Node::set_guid ( const GUID x)
virtual
int Node::get_time_last_changed ( ) const

Gets the time when the Node was changed.

void Node::add_child ( Node x)
void Node::remove_child ( Node x)
int Node::parent_count ( ) const

Returns how many parenst has the current Node.

References parent_set.

const Node::time_set & Node::get_times ( ) const

Returns the cached times values for all the children.

References get_times_vfunc().

RWLock& synfig::Node::get_rw_lock ( ) const
inline

Writeme!

virtual String synfig::Node::get_string ( ) const
pure virtual
void Node::begin_delete ( )
protected
void Node::on_changed ( )
protectedvirtual

Used when the node has changed. Makes changed the parent too. To be overloaded by the derivative classes. Emits a signal where the the GUI can be connected to.

Reimplemented in synfig::Canvas, synfig::Layer, synfig::ValueNode, and synfig::ValueNode_Bone.

References get_string(), parent_set, and signal_changed().

Referenced by changed().

void Node::on_guid_changed ( synfig::GUID  guid)
protectedvirtual

Used when the node's GUID has changed. To be overloaded by the derivative classes. Emits a signal where the the GUI can be connected to.

References signal_guid_changed().

Referenced by set_guid().

virtual void synfig::Node::get_times_vfunc ( time_set set) const
protectedpure virtual

Function to be overloaded that fills the Time Point Set with all the children Time Points.

Implemented in synfig::Canvas, synfig::Layer, synfig::LinkableValueNode, synfig::PlaceholderValueNode, synfig::ValueNode_DynamicList, synfig::Layer_PasteCanvas, synfig::ValueNode_Animated, and synfig::ValueNode_Const.

Referenced by get_times().

Member Data Documentation

std::set<Node*> synfig::Node::parent_set

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