#include <G4MolecularConfiguration.hh>
|
| G4MolecularConfigurationManager () |
|
| ~G4MolecularConfigurationManager () |
|
int | GetNumberOfCreatedSpecies () |
|
G4int | Insert (const G4MoleculeDefinition *molDef, const G4ElectronOccupancy &eOcc, G4MolecularConfiguration *molConf) |
|
G4int | Insert (const G4MoleculeDefinition *molDef, int charge, G4MolecularConfiguration *molConf) |
|
G4int | Insert (const G4MoleculeDefinition *molDef, const G4String &label, G4MolecularConfiguration *molConf) |
|
void | AddUserID (const G4String &name, G4MolecularConfiguration *molecule) |
|
void | RecordNewlyLabeledConfiguration (G4MolecularConfiguration *molConf) |
|
const G4ElectronOccupancy * | FindCommonElectronOccupancy (const G4MoleculeDefinition *molDef, const G4ElectronOccupancy &eOcc) |
|
G4MolecularConfiguration * | GetMolecularConfiguration (const G4MoleculeDefinition *molDef, const G4ElectronOccupancy &eOcc) |
|
G4MolecularConfiguration * | GetMolecularConfiguration (const G4MoleculeDefinition *molDef, int charge) |
|
G4MolecularConfiguration * | GetMolecularConfiguration (const G4MoleculeDefinition *molDef, const G4String &label) |
|
G4MolecularConfiguration * | GetMolecularConfiguration (int moleculeID) |
|
G4MolecularConfiguration * | GetMolecularConfiguration (const G4String &userID) |
|
G4MolecularConfiguration * | GetOrCreateMolecularConfiguration (const G4MoleculeDefinition *molDef, const G4ElectronOccupancy &eOcc) |
|
G4MolecularConfiguration * | GetOrCreateMolecularConfiguration (const G4MoleculeDefinition *molDef, int charge) |
|
void | RemoveMolecularConfigurationFromTable (G4MolecularConfiguration *) |
|
const std::vector
< G4MolecularConfiguration * > & | GetAllSpecies () |
|
std::map< G4String,
G4MolecularConfiguration * > & | GetUserIDTable () |
|
G4MolecularConfiguration::G4MolecularConfigurationManager::G4MolecularConfigurationManager |
( |
| ) |
|
|
inline |
G4MolecularConfiguration::G4MolecularConfigurationManager::~G4MolecularConfigurationManager |
( |
| ) |
|
Definition at line 150 of file G4MolecularConfiguration.cc.
156 G4MolecularConfigurationManager::MolElectronConfTable::iterator it1;
157 G4MolecularConfigurationManager::ElectronOccupancyTable::
160 for (it1 = fElecOccTable.begin(); it1 != fElecOccTable.end(); it1++)
162 for (it2 = it1->second.begin(); it2 != it1->second.end(); it2++)
170 fElecOccTable.clear();
static G4MolecularConfigurationManager * fgManager
Definition at line 869 of file G4MolecularConfiguration.cc.
872 UserIDTable::iterator it = fUserIDTable.find(userID);
874 if(it == fUserIDTable.end())
876 fUserIDTable[userID] = molecule;
878 else if(molecule != it->second)
883 description <<
"The user identifier " << userID
884 <<
" was already given in another configuration in the table"
886 G4Exception(
"G4MolecularConfiguration::G4MolecularConfigurationManager::AddUserID",
887 "CONF_ALREADY_RECORDED",
std::ostringstream G4ExceptionDescription
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
Definition at line 217 of file G4MolecularConfiguration.cc.
222 MolElectronConfTable::iterator it1 = fElecOccTable.find(molDef);
224 if(it1 == fElecOccTable.end())
230 ElectronOccupancyTable& table2 = it1->second;
231 ElectronOccupancyTable::iterator it2 = table2.find(eOcc);
235 if (it2 == table2.end())
241 return &(it2->first);
const std::vector<G4MolecularConfiguration*>& G4MolecularConfiguration::G4MolecularConfigurationManager::GetAllSpecies |
( |
| ) |
|
|
inline |
Definition at line 248 of file G4MolecularConfiguration.cc.
251 MolElectronConfTable::iterator it1 = fElecOccTable.find(molDef);
253 if(it1 == fElecOccTable.end())
return 0;
255 ElectronOccupancyTable& table2 = it1->second;
256 ElectronOccupancyTable::iterator it = table2.find(eOcc);
258 if(it == table2.end())
Definition at line 308 of file G4MolecularConfiguration.cc.
313 MolChargeConfTable::iterator it1 = fChargeTable.find(molDef);
315 if(it1 == fChargeTable.end())
return 0;
317 ChargeTable& table2 = it1->second;
318 ChargeTable::iterator it = table2.find(charge);
320 if(it == table2.end())
Definition at line 920 of file G4MolecularConfiguration.cc.
925 MolLabelConfTable::iterator it1 = fLabelTable.find(molDef);
927 if(it1 == fLabelTable.end())
return 0;
929 LabelTable& table2 = it1->second;
931 LabelTable::iterator it2 = table2.find(label);
935 if(it2 == table2.end())
return 0;
Definition at line 943 of file G4MolecularConfiguration.cc.
945 if(moleculeID > (
int) fMolConfPerID.size() ||
946 moleculeID < 0)
return 0;
948 return fMolConfPerID[moleculeID];
int G4MolecularConfiguration::G4MolecularConfigurationManager::GetNumberOfCreatedSpecies |
( |
| ) |
|
|
inline |
Definition at line 1320 of file G4MolecularConfiguration.cc.
1323 MolElectronConfTable::iterator it1 = fElecOccTable.find(molDef);
1325 if(it1 == fElecOccTable.end())
1330 ElectronOccupancyTable& table2 = it1->second;
1331 ElectronOccupancyTable::iterator it = table2.find(eOcc);
1333 if(it == table2.end())
G4MolecularConfiguration(const G4MoleculeDefinition *, const G4ElectronOccupancy &, const G4String &label="")
Definition at line 1352 of file G4MolecularConfiguration.cc.
1355 MolChargeConfTable::iterator it1 = fChargeTable.find(molDef);
1357 if(it1 == fChargeTable.end())
1365 ChargeTable& table2 = it1->second;
1366 ChargeTable::iterator it = table2.find(charge);
1368 if(it == table2.end())
G4MolecularConfiguration(const G4MoleculeDefinition *, const G4ElectronOccupancy &, const G4String &label="")
Definition at line 178 of file G4MolecularConfiguration.cc.
184 ElectronOccupancyTable& table2 = fElecOccTable[molDef];
185 ElectronOccupancyTable::iterator it = table2.find(eOcc);
187 if(it == table2.end())
189 table2[eOcc] = molConf;
194 errMsg <<
"The same molecular configuration seemed to be recorded twice";
196 "SetMolecularConfiguration(const G4MoleculeDefinition* molDef,"
197 "const G4ElectronOccupancy& eOcc,"
198 "G4MolecularConfiguration* molConf)",
207 fMolConfPerID.push_back(molConf);
210 return fLastMoleculeID;
std::ostringstream G4ExceptionDescription
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
Definition at line 273 of file G4MolecularConfiguration.cc.
279 ChargeTable& table2 = fChargeTable[molDef];
280 ChargeTable::iterator it = table2.find(charge);
282 if(it == table2.end())
284 table2[charge] = molConf;
290 errMsg <<
"The same molecular configuration seemed to be recorded twice";
292 "SetMolecularConfiguration(const G4MoleculeDefinition* molDef,"
294 "G4MolecularConfiguration* molConf)",
299 fMolConfPerID.push_back(molConf);
301 return fLastMoleculeID;
std::ostringstream G4ExceptionDescription
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
Definition at line 955 of file G4MolecularConfiguration.cc.
960 LabelTable& tmpMap = fLabelTable[molDef];
961 LabelTable::iterator it = tmpMap.find(label);
963 if(it == tmpMap.end())
966 tmpMap[label] = molConf;
973 errMsg <<
"The same molecular configuration seemed to be recorded twice";
975 "SetMolecularConfiguration(const G4MoleculeDefinition* molDef,"
976 "const G4String& label,"
977 "G4MolecularConfiguration* molConf)",
981 fMolConfPerID.push_back(molConf);
983 return fLastMoleculeID;
std::ostringstream G4ExceptionDescription
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
Definition at line 843 of file G4MolecularConfiguration.cc.
849 LabelTable::iterator it = tmpMap.find(*molConf->
fLabel);
851 if(it == tmpMap.end())
853 tmpMap[*(molConf->
fLabel)] = molConf;
858 errMsg <<
"The same molecular configuration seemed to be recorded twice";
860 "SetMolecularConfiguration(const G4MoleculeDefinition* molDef,"
861 "const G4String& label,"
862 "G4MolecularConfiguration* molConf)",
std::ostringstream G4ExceptionDescription
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
const G4MoleculeDefinition * fMoleculeDefinition
void G4MolecularConfiguration::G4MolecularConfigurationManager::RemoveMolecularConfigurationFromTable |
( |
G4MolecularConfiguration * |
configuration | ) |
|
Definition at line 896 of file G4MolecularConfiguration.cc.
898 MolElectronConfTable::iterator it1 =
900 MolElectronConfTable::iterator end = fElecOccTable.end();
902 if (it1 == end)
return;
904 std::map<G4ElectronOccupancy, G4MolecularConfiguration*, comparator>::
908 if (it2 == it1->second.end())
return;
const G4ElectronOccupancy * GetElectronOccupancy() const
const G4MoleculeDefinition * GetDefinition() const
const G4ElectronOccupancy * fElectronOccupancy
G4Mutex MolecularConfigurationManager::fManagerCreationMutex |
|
static |
The documentation for this class was generated from the following files: