- Main Page
- Related Pages
- Namespaces
- Classes
- Files

# valuenode_or.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_OR_H
    00027 #define __SYNFIG_VALUENODE_OR_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_Or : public LinkableValueNode
    00040 {
    00041     ValueNode::RHandle link1_;
    00042     ValueNode::RHandle link2_;
    00043
    00044 public:
    00045     typedef etl::handle<ValueNode_Or> Handle;
    00046     typedef etl::handle<const ValueNode_Or> ConstHandle;
    00047
    00048     ValueNode_Or(const ValueBase &x);
    00049
    00050     virtual ValueBase operator()(Time t)const;
    00051
    00052     virtual ~ValueNode_Or();
    00053
    00054     virtual String get_name()const;
    00055     virtual String get_local_name()const;
    00056
    00057
    00058     virtual ValueNode::LooseHandle get_link_vfunc(int i)const;
    00059     virtual int link_count()const;
    00060     virtual String link_name(int i)const;
    00061
    00062     virtual String link_local_name(int i)const;
    00063     virtual int get_link_index_from_name(const String &name)const;
    00064
    00065 protected:
    00066     LinkableValueNode* create_new()const;
    00067     virtual bool set_link_vfunc(int i,ValueNode::Handle x);
    00068
    00069 public:
    00070     using synfig::LinkableValueNode::get_link_vfunc;
    00071
    00072     using synfig::LinkableValueNode::set_link_vfunc;
    00073     static bool check_type(ValueBase::Type type);
    00074     static ValueNode_Or* create(const ValueBase &x);
    00075 }; // END of class ValueNode_Or
    00076
    00077 }; // END of namespace synfig
    00078
    00079 /* === E N D =============================================================== */
    00080
    00081 #endif