#include <api_deltabase.h>

Public Member Functions | |
| delta_base () | |
| delta_base (const std::string &a) | |
| delta_base (const char *a) | |
| delta_base (const delta_base &__d) | |
| virtual delta_base * | new_copy () const PURE_VIRTUALvirtual void destroy_copy(delta_base *__d) const PURE_VIRTUALvirtual~delta_base() |
| delta | make_delta (const std::string &a) |
| const std::string & | get_action () const |
| virtual void | convert (work_node &_x, delta_base *&_d) |
| virtual void | unkeep () |
| virtual bool | apply (work_node &_x, undelta_base *&_u, const delta_id &_d) const |
| virtual bool | apply3 (work_node &_x, const work_node &_y, undelta_base *&_u, const delta_id &_d) const |
Protected Attributes | |
| std::string | _action |
Definition at line 150 of file api_deltabase.h.
| coco::delta_base::delta_base | ( | ) | [inline] |
Standard Constructor
Definition at line 158 of file api_deltabase.h.
| coco::delta_base::delta_base | ( | const std::string & | a | ) | [inline] |
Constructor, explicitly setting the action to a
Definition at line 160 of file api_deltabase.h.
| coco::delta_base::delta_base | ( | const char * | a | ) | [inline] |
Constructor, explicitly setting the action to a
Definition at line 162 of file api_deltabase.h.
| coco::delta_base::delta_base | ( | const delta_base & | __d | ) | [inline] |
Standard Copy Constructor, which is usually not used.
Definition at line 164 of file api_deltabase.h.
| virtual bool coco::delta_base::apply | ( | work_node & | _x, | |
| undelta_base *& | _u, | |||
| const delta_id & | _d | |||
| ) | const [inline, virtual] |
Apply the delta with delta_id _d to work node _x. In this process the undo information for this delta is stored in _u.
Reimplemented in coco::annotation_delta, coco::bound_delta, coco::boxes_delta, coco::dag_delta, coco::infeasible_delta, coco::point_delta, coco::semantics_delta, coco::split_delta, and coco::table_delta.
Definition at line 198 of file api_deltabase.h.
| bool coco::delta_base::apply3 | ( | work_node & | _x, | |
| const work_node & | _y, | |||
| undelta_base *& | _u, | |||
| const delta_id & | _d | |||
| ) | const [inline, virtual] |
Apply the delta with delta_id _d to work node _x, constructing in the process work_node _y, without changing _x. In this process the undo information for this delta is stored in _u. This method should be overloaded in the specializations of this class for maximal efficiency, but it need not since a standard procedure is available, which uses the work_node copy constructur and the apply method.
Definition at line 88 of file api_delta.h.
| virtual void coco::delta_base::convert | ( | work_node & | _x, | |
| delta_base *& | _d | |||
| ) | [inline, virtual] |
Convert this delta to a delta which can be stored in _x, this is e.g. used for all delta version, which are actually stored as annotation changes.
Reimplemented in coco::table_delta.
Definition at line 189 of file api_deltabase.h.
| const std::string& coco::delta_base::get_action | ( | ) | const [inline] |
Retrieve the action information (the delta type) for this delta.
Definition at line 184 of file api_deltabase.h.
| delta coco::delta_base::make_delta | ( | const std::string & | a | ) | [inline] |
Construct a delta from this delta_base with the action a.
Definition at line 175 of file api_deltabase.h.
| virtual delta_base* coco::delta_base::new_copy | ( | ) | const [inline, virtual] |
Clone Operation, which can be overloaded Clone Destructor Standard Destructor
Reimplemented in coco::annotation_delta, coco::bound_delta, coco::boxes_delta, coco::dag_delta, coco::infeasible_delta, coco::point_delta, coco::semantics_delta, coco::split_delta, and coco::table_delta.
Definition at line 167 of file api_deltabase.h.
| virtual void coco::delta_base::unkeep | ( | ) | [inline, virtual] |
Perform this operation when the delta is released (unkept) from a work_node.
Reimplemented in coco::dag_delta.
Definition at line 194 of file api_deltabase.h.
std::string coco::delta_base::_action [protected] |
The action (type) of this delta
Definition at line 154 of file api_deltabase.h.
1.5.8