00001 #ifndef ORDERED_NODE_CLASS
00002 #define ORDERED_NODE_CLASS
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #include "node.h"
00019
00020 namespace nodes {
00021
00023
00024 class NODES_CLASS_STYLE ordered_node : public node {
00025
00026 public:
00027 ordered_node(int number_of_links = 0)
00028 : node(number_of_links)
00029 {}
00031
00032 virtual ~ordered_node()
00033 {}
00034
00035 enum MODES { EXACT=0 };
00036 enum COMPARE_OUTCOMES { NODE_ERROR = -99, LESS = -1, EQUAL = 0, GREAT = 1 };
00037
00038 virtual int compare(const ordered_node &formal(other), int mode = EXACT) const
00039 { if (mode) {}; return LESS; }
00041
00045 };
00046
00047 }
00048
00049 #endif
00050