synfig-core  1.0.3
valuenode_or.h
Go to the documentation of this file.
1 /* === S Y N F I G ========================================================= */
23 /* ========================================================================= */
24 
25 /* === S T A R T =========================================================== */
26 
27 #ifndef __SYNFIG_VALUENODE_OR_H
28 #define __SYNFIG_VALUENODE_OR_H
29 
30 /* === H E A D E R S ======================================================= */
31 
32 #include <synfig/valuenode.h>
33 
34 /* === M A C R O S ========================================================= */
35 
36 /* === C L A S S E S & S T R U C T S ======================================= */
37 
38 namespace synfig {
39 
41 {
42  ValueNode::RHandle link1_;
43  ValueNode::RHandle link2_;
44 
45 public:
46  typedef etl::handle<ValueNode_Or> Handle;
47  typedef etl::handle<const ValueNode_Or> ConstHandle;
48 
49  ValueNode_Or(const ValueBase &x);
50 
51  virtual ValueBase operator()(Time t)const;
52 
53  virtual ~ValueNode_Or();
54 
55  virtual String get_name()const;
56  virtual String get_local_name()const;
57 
58  virtual ValueNode::LooseHandle get_link_vfunc(int i)const;
59 
60 protected:
62  virtual bool set_link_vfunc(int i,ValueNode::Handle x);
63 
64 public:
66 
68  static bool check_type(Type &type);
69  static ValueNode_Or* create(const ValueBase &x);
70  virtual Vocab get_children_vocab_vfunc()const;
71 }; // END of class ValueNode_Or
72 
73 }; // END of namespace synfig
74 
75 /* === E N D =============================================================== */
76 
77 #endif