valuenode_sine.h

Go to the documentation of this file.
00001 /* === S Y N F I G ========================================================= */
00022 /* ========================================================================= */
00023 
00024 /* === S T A R T =========================================================== */
00025 
00026 #ifndef __SYNFIG_VALUENODE_SINE_H
00027 #define __SYNFIG_VALUENODE_SINE_H
00028 
00029 /* === H E A D E R S ======================================================= */
00030 
00031 #include "valuenode.h"
00032 
00033 /* === M A C R O S ========================================================= */
00034 
00035 /* === C L A S S E S & S T R U C T S ======================================= */
00036 
00037 namespace synfig {
00038 
00039 class ValueNode_Sine : public LinkableValueNode
00040 {
00041     ValueNode::RHandle angle_;
00042     ValueNode::RHandle amp_;
00043 
00044     ValueNode_Sine(const ValueBase &value);
00045 
00046 public:
00047 
00048     typedef etl::handle<ValueNode_Sine> Handle;
00049     typedef etl::handle<const ValueNode_Sine> ConstHandle;
00050 
00051 
00052     virtual ValueBase operator()(Time t)const;
00053 
00054     virtual ~ValueNode_Sine();
00055 
00056     virtual String get_name()const;
00057     virtual String get_local_name()const;
00058 
00059 
00060     virtual ValueNode::LooseHandle get_link_vfunc(int i)const;
00061     virtual int link_count()const;
00062     virtual String link_name(int i)const;
00063 
00064     virtual String link_local_name(int i)const;
00065     virtual int get_link_index_from_name(const String &name)const;
00066 
00067 protected:
00068     LinkableValueNode* create_new()const;
00069     virtual bool set_link_vfunc(int i,ValueNode::Handle x);
00070 
00071 public:
00072     using synfig::LinkableValueNode::get_link_vfunc;
00073 
00074     using synfig::LinkableValueNode::set_link_vfunc;
00075     static bool check_type(ValueBase::Type type);
00076     static ValueNode_Sine* create(const ValueBase &x);
00077 }; // END of class ValueNode_Sine
00078 
00079 }; // END of namespace synfig
00080 
00081 /* === E N D =============================================================== */
00082 
00083 #endif

Generated on Wed Dec 12 03:11:41 2007 for synfig by  doxygen 1.5.4