Ignore:
Timestamp:
Nov 5, 2010, 3:45:55 PM (14 years ago)
Author:
garnier
Message:

update ti head

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/processes/hadronic/models/de_excitation/photon_evaporation/src/G4NuclearLevelStore.cc

    r819 r1340  
    2424// ********************************************************************
    2525//
     26// $Id: G4NuclearLevelStore.cc,v 1.4 2010/10/07 07:50:13 mkelsey Exp $
    2627//
     28// 20101006  M. Kelsey -- Drop static data members.
    2729
    2830#include "G4NuclearLevelStore.hh"
    2931#include <sstream>
    30 
    31 std::map<G4String,G4NuclearLevelManager*> G4NuclearLevelStore::theManagers;
    32 G4String G4NuclearLevelStore::dirName("");
    3332
    3433G4NuclearLevelStore* G4NuclearLevelStore::GetInstance()
     
    5655G4NuclearLevelStore::~G4NuclearLevelStore()
    5756{
    58     std::map<G4String,G4NuclearLevelManager*>::iterator i;
     57    ManagersMap::iterator i;
    5958    for (i = theManagers.begin(); i != theManagers.end(); ++i)
    60     {
    61         if ( (*i).second ) delete (*i).second;
    62     }
     59      delete i->second;
    6360}
    6461
    65 G4String G4NuclearLevelStore::GenerateKey(const G4int Z, const G4int A)
    66 {
     62G4String
     63G4NuclearLevelStore::GenerateFilename(const G4int Z, const G4int A) const {
    6764    std::ostringstream streamName;
    6865    streamName << 'z' << Z << ".a" << A;
     
    7269
    7370
    74 G4NuclearLevelManager* G4NuclearLevelStore::GetManager(const G4int Z, const G4int A)
    75 {
     71G4NuclearLevelManager*
     72G4NuclearLevelStore::GetManager(const G4int Z, const G4int A) {
    7673    G4NuclearLevelManager * result = 0;
    7774    if (A < 1 || Z < 1 || A < Z)
     
    8178        return result;
    8279    }
     80
    8381    // Generate the key = filename
    84     G4String key(this->GenerateKey(Z,A));
     82    G4int key = GenerateKey(Z,A);
    8583   
    8684    // Check if already exists that key
    87     std::map<G4String,G4NuclearLevelManager*>::iterator idx = theManagers.find(key);
     85    ManagersMap::iterator idx = theManagers.find(key);
    8886    // If doesn't exists then create it
    8987    if ( idx == theManagers.end() )
    9088    {
    91         result = new G4NuclearLevelManager();
    92         result->SetNucleus(Z,A,dirName + key);
    93         theManagers.insert(std::make_pair(key,result));
     89        G4String file = GenerateFilename(Z,A);
     90        result = new G4NuclearLevelManager(Z,A,dirName + file);
     91        theManagers.insert(std::make_pair(key,result));
    9492    }
    9593    // But if it exists...
Note: See TracChangeset for help on using the changeset viewer.