COIN-OR::LEMON - Graph Library

Changeset 2305:4a2236cc98a0 in lemon-0.x for lemon/matrix_maps.h


Ignore:
Timestamp:
11/21/06 18:28:08 (13 years ago)
Author:
Balazs Dezso
Branch:
default
Phase:
public
Convert:
svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@3080
Message:

Keeping order of alteration observers

Removing some automatic callback generation
exception safety reason

File:
1 edited

Legend:

Unmodified
Added
Removed
  • lemon/matrix_maps.h

    r2260 r2305  
    355355    }
    356356
     357    virtual void add(const std::vector<Key>& keys) {
     358      int new_size = 0;
     359      for (int i = 0; i < (int)keys.size(); ++i) {
     360        if (size(Parent::getNotifier()->id(keys[i]) + 1) >= new_size) {
     361          new_size = size(Parent::getNotifier()->id(keys[i]) + 1);     
     362        }
     363      }
     364      if (new_size > (int)values.size()) {
     365        values.resize(new_size);
     366      }
     367    }
     368
    357369    virtual void erase(const Key&) {}
     370
     371    virtual void erase(const std::vector<Key>&) {}
    358372
    359373    virtual void build() {
     
    496510    }
    497511
     512    virtual void add(const std::vector<Key>& keys) {
     513      int new_size = 0;
     514      for (int i = 0; i < (int)keys.size(); ++i) {
     515        if (size(Parent::getNotifier()->id(keys[i]) + 1) >= new_size) {
     516          new_size = size(Parent::getNotifier()->id(keys[i]) + 1);     
     517        }
     518      }
     519      if (new_size > (int)values.size()) {
     520        values.resize(new_size);
     521      }
     522    }
     523
    498524    virtual void erase(const Key&) {}
     525
     526    virtual void erase(const std::vector<Key>&) {}
    499527
    500528    virtual void build() {
Note: See TracChangeset for help on using the changeset viewer.