| 91 | 
  | 
    for (vector<Component*>::iterator i = components.begin();  | 
| 92 | 
  | 
         i !=components.end(); ++i) { | 
| 93 | 
  | 
      molStamp = (*i)->getMoleculeStamp(); | 
| 94 | 
+ | 
      if ( (*i)->haveRegion() ) {         | 
| 95 | 
+ | 
        molStamp->setRegion( (*i)->getRegion() ); | 
| 96 | 
+ | 
      } else { | 
| 97 | 
+ | 
        // set the region to a disallowed value: | 
| 98 | 
+ | 
        molStamp->setRegion( -1 ); | 
| 99 | 
+ | 
      } | 
| 100 | 
+ | 
 | 
| 101 | 
  | 
      nMolWithSameStamp = (*i)->getNMol(); | 
| 102 | 
  | 
       | 
| 103 | 
  | 
      addMoleculeStamp(molStamp, nMolWithSameStamp); | 
| 372 | 
  | 
 | 
| 373 | 
  | 
  void SimInfo::addInteractionPairs(Molecule* mol) { | 
| 374 | 
  | 
    ForceFieldOptions& options_ = forceField_->getForceFieldOptions(); | 
| 375 | 
+ | 
    vector<Atom*>::iterator atomIter; | 
| 376 | 
  | 
    vector<Bond*>::iterator bondIter; | 
| 377 | 
  | 
    vector<Bend*>::iterator bendIter; | 
| 378 | 
  | 
    vector<Torsion*>::iterator torsionIter; | 
| 379 | 
  | 
    vector<Inversion*>::iterator inversionIter; | 
| 380 | 
+ | 
    Atom* atom; | 
| 381 | 
  | 
    Bond* bond; | 
| 382 | 
  | 
    Bend* bend; | 
| 383 | 
  | 
    Torsion* torsion; | 
| 420 | 
  | 
        atomGroups.insert(map<int, set<int> >::value_type(sd->getGlobalIndex(), oneAtomSet));         | 
| 421 | 
  | 
      } | 
| 422 | 
  | 
    }   | 
| 423 | 
+ | 
 | 
| 424 | 
  | 
            | 
| 425 | 
  | 
    for (bond= mol->beginBond(bondIter); bond != NULL;  | 
| 426 | 
  | 
         bond = mol->nextBond(bondIter)) { | 
| 941 | 
  | 
      }        | 
| 942 | 
  | 
    } | 
| 943 | 
  | 
 | 
| 944 | 
< | 
    // Build the identArray_ | 
| 944 | 
> | 
    // Build the identArray_ and regions_ | 
| 945 | 
  | 
 | 
| 946 | 
  | 
    identArray_.clear(); | 
| 947 | 
< | 
    identArray_.reserve(getNAtoms());     | 
| 948 | 
< | 
    for(mol = beginMolecule(mi); mol != NULL; mol = nextMolecule(mi)) {         | 
| 947 | 
> | 
    identArray_.reserve(getNAtoms());    | 
| 948 | 
> | 
    regions_.clear(); | 
| 949 | 
> | 
    regions_.reserve(getNAtoms()); | 
| 950 | 
> | 
  | 
| 951 | 
> | 
    for(mol = beginMolecule(mi); mol != NULL; mol = nextMolecule(mi)) {       | 
| 952 | 
> | 
      int reg = mol->getRegion();       | 
| 953 | 
  | 
      for(atom = mol->beginAtom(ai); atom != NULL; atom = mol->nextAtom(ai)) { | 
| 954 | 
  | 
        identArray_.push_back(atom->getIdent()); | 
| 955 | 
+ | 
        regions_.push_back(reg); | 
| 956 | 
  | 
      } | 
| 957 | 
  | 
    }     | 
| 958 | 
< | 
     | 
| 958 | 
> | 
        | 
| 959 | 
  | 
    topologyDone_ = true; | 
| 960 | 
  | 
  } | 
| 961 | 
  | 
 |