#include <dag_delta.h>
Classes | |
class | __check_walkers |
Public Member Functions | |
dag_undelta (bool full=false) | |
dag_undelta (gptr< model > *__nc) | |
dag_undelta (const dag_undelta &_du) | |
~dag_undelta () | |
dag_undelta * | new_copy () const |
void | destroy_copy (undelta_base *__d) const |
bool | unapply (work_node &x, const delta_id &_did) const |
undelta | make_undelta () |
virtual bool | unapply3 (work_node &_x, const work_node &_y, const delta_id &_d) const |
Public Attributes | |
gptr< model > * | old_model |
counted_ptr< model > | rm_dag |
std::vector< model::enhanced_edge > | rm_e |
std::vector< walker > | added_nodes |
std::vector< walker > | added_constraints |
std::vector< walker > | added_ghosts |
std::vector< walker > | added_vars |
std::map< unsigned int, interval > | bounds_chgd |
bool | is_full_undelta |
Friends | |
class | dag_delta |
Definition at line 42 of file dag_delta.h.
coco::dag_undelta::dag_undelta | ( | bool | full = false |
) | [inline] |
Standard Constructor, setting the is_full_undelta member to full
.
Definition at line 101 of file dag_delta.h.
Constructor, setting the is_full_undelta member to true
and storing the original model __nc
.
Definition at line 111 of file dag_delta.h.
coco::dag_undelta::dag_undelta | ( | const dag_undelta & | _du | ) | [inline] |
Standard Copy Constructor
Definition at line 120 of file dag_delta.h.
coco::dag_undelta::~dag_undelta | ( | ) | [inline] |
Standard Destructor
Definition at line 136 of file dag_delta.h.
void coco::dag_undelta::destroy_copy | ( | undelta_base * | __d | ) | const [inline] |
Clone Destructor
Definition at line 147 of file dag_delta.h.
undelta coco::undelta_base::make_undelta | ( | ) | [inline, inherited] |
Construct an undelta from this undelta_base.
Definition at line 283 of file api_deltabase.h.
dag_undelta* coco::dag_undelta::new_copy | ( | ) | const [inline, virtual] |
Undo the dag_delta with delta_id _i
in work node _x
Reimplemented from coco::undelta_base.
Definition at line 327 of file dag_delta.cc.
bool coco::undelta_base::unapply3 | ( | work_node & | _x, | |
const work_node & | _y, | |||
const delta_id & | _d | |||
) | const [inline, virtual, inherited] |
Undo the delta with delta_id _d
in work node _x
, constructing in the process work_node _y
, without changing _x
. 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 unapply
method.
Definition at line 94 of file api_delta.h.
friend class dag_delta [friend] |
Definition at line 152 of file dag_delta.h.
std::vector<walker> coco::dag_undelta::added_constraints |
The vector of constraints added by the dag_delta
Definition at line 62 of file dag_delta.h.
std::vector<walker> coco::dag_undelta::added_ghosts |
The vector of ghosts added by the dag_delta
Definition at line 64 of file dag_delta.h.
std::vector<walker> coco::dag_undelta::added_nodes |
The vector of nodes added by the dag_delta
Definition at line 60 of file dag_delta.h.
std::vector<walker> coco::dag_undelta::added_vars |
The vector of variables added by the dag_delta
Definition at line 66 of file dag_delta.h.
std::map<unsigned int, interval> coco::dag_undelta::bounds_chgd |
This map maps node numbers of ghosts overlaid over other nodes to the bounds of the nodes being overlaid prior to the application of the dag_delta.
Definition at line 71 of file dag_delta.h.
This variable holds the subgraph induced by all nodes which have been removed by the dag_delta.
Definition at line 54 of file dag_delta.h.
std::vector<model::enhanced_edge> coco::dag_undelta::rm_e |
This variable holds the edges which had connected the removed subgraph to the remaining DAG prior to its removal by the dag_delta.
Definition at line 57 of file dag_delta.h.