Changeset 571:9632ea8be6ca in lemon-0.x for src/work/deba/map_base.h
- Timestamp:
- 05/07/04 10:18:30 (19 years ago)
- Branch:
- default
- Phase:
- public
- Convert:
- svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@746
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/work/deba/map_base.h
r378 r571 40 40 */ 41 41 42 MapBase( Registry& r) :registry(0) {43 registry->a dd(*this);42 MapBase(Graph& g, Registry& r) : graph(&g), registry(0) { 43 registry->attach(*this); 44 44 } 45 45 … … 48 48 */ 49 49 50 MapBase(const MapBase& copy) : registry(0) {51 if ( registry) {52 registry->add(*this);50 MapBase(const MapBase& copy) : registry(0), graph(copy.graph) { 51 if (copy.registry) { 52 copy.registry->attach(*this); 53 53 } 54 54 } … … 60 60 const MapBase& operator=(const MapBase& copy) { 61 61 if (registry) { 62 registry-> erase(*this);62 registry->detach(*this); 63 63 } 64 registry = copy.registry;65 if ( registry) {66 registry->add(*this);64 graph = copy.graph; 65 if (copy.registry) { 66 copy.registry->attach(*this); 67 67 } 68 68 } … … 75 75 virtual ~MapBase() { 76 76 if (registry) { 77 registry-> erase(*this);77 registry->detach(*this); 78 78 } 79 79 } … … 82 82 83 83 Registry* registry; 84 Graph* graph; 84 85 85 86 int registry_index; … … 89 90 */ 90 91 91 virtual void init( Graph& g) {92 virtual void init() { 92 93 93 for (KeyIt it( g); g.valid(it); g.next(it)) {94 for (KeyIt it(*graph); graph->valid(it); graph->next(it)) { 94 95 add(it); 95 96 } … … 100 101 */ 101 102 102 virtual void destroy( Graph& g) {103 for (KeyIt it( g); g.valid(it); g.next(it)) {103 virtual void destroy() { 104 for (KeyIt it(*graph); graph->valid(it); graph->next(it)) { 104 105 erase(it); 105 106 }
Note: See TracChangeset
for help on using the changeset viewer.