valuenode_timedswap.h

Go to the documentation of this file.
00001 /* === S Y N F I G ========================================================= */
00021 /* ========================================================================= */
00022 
00023 /* === S T A R T =========================================================== */
00024 
00025 #ifndef __SYNFIG_VALUENODE_TIMEDSWAP_H
00026 #define __SYNFIG_VALUENODE_TIMEDSWAP_H
00027 
00028 /* === H E A D E R S ======================================================= */
00029 
00030 #include "valuenode.h"
00031 
00032 /* === M A C R O S ========================================================= */
00033 
00034 /* === C L A S S E S & S T R U C T S ======================================= */
00035 
00036 namespace synfig {
00037 
00038 struct ValueNode_TimedSwap : public LinkableValueNode
00039 {
00040     typedef etl::handle<ValueNode_TimedSwap> Handle;
00041     typedef etl::handle<const ValueNode_TimedSwap> ConstHandle;
00042 
00043 private:
00044 
00045     ValueNode::RHandle before;
00046     ValueNode::RHandle after;
00047     ValueNode::RHandle swap_time;
00048     ValueNode::RHandle swap_length;
00049 
00050     ValueNode_TimedSwap(ValueBase::Type id);
00051 
00052 public:
00053 
00054 //  static Handle create(ValueBase::Type id);
00055 
00056     virtual ~ValueNode_TimedSwap();
00057 
00058     bool set_before(const ValueNode::Handle &a);
00059     ValueNode::Handle get_before()const;
00060     bool set_after(const ValueNode::Handle &a);
00061     ValueNode::Handle get_after()const;
00062 
00063     void set_swap_time_real(Time x);
00064     bool set_swap_time(const ValueNode::Handle &x);
00065     ValueNode::Handle get_swap_time()const;
00066 
00067     void set_swap_length_real(Time x);
00068     bool set_swap_length(const ValueNode::Handle &x);
00069     ValueNode::Handle get_swap_length()const;
00070 
00071 
00072     virtual bool set_link_vfunc(int i,ValueNode::Handle x);
00073     virtual ValueNode::LooseHandle get_link_vfunc(int i)const;
00074     virtual int link_count()const;
00075     virtual String link_local_name(int i)const;
00076     virtual String link_name(int i)const;
00077     virtual int get_link_index_from_name(const String &name)const;
00078 
00079     virtual ValueBase operator()(Time t)const;
00080 
00081     virtual String get_name()const;
00082     virtual String get_local_name()const;
00083 //  static bool check_type(const ValueBase::Type &type);
00084 
00085 protected:
00086 
00087     virtual LinkableValueNode* create_new()const;
00088 
00089 public:
00090     using synfig::LinkableValueNode::get_link_vfunc;
00091     using synfig::LinkableValueNode::set_link_vfunc;
00092     static bool check_type(ValueBase::Type type);
00093     static ValueNode_TimedSwap* create(const ValueBase &x);
00094 }; // END of class ValueNode_TimedSwap
00095 
00096 }; // END of namespace synfig
00097 
00098 /* === E N D =============================================================== */
00099 
00100 #endif

Generated on Wed Aug 15 05:00:23 2007 for synfig by  doxygen 1.5.3