#include <G3MatTable.hh>
Public Member Functions | |
G3MatTable () | |
virtual | ~G3MatTable () |
G4Material * | get (G4int id) const |
void | put (G4int id, G4Material *material) |
void | Clear () |
Definition at line 53 of file G3MatTable.hh.
G3MatTable::G3MatTable | ( | ) |
Definition at line 33 of file G3MatTable.cc.
00034 { 00035 fMatVector = new G3MaterialVector(); 00036 }
G3MatTable::~G3MatTable | ( | ) | [virtual] |
Definition at line 38 of file G3MatTable.cc.
References Clear().
00039 { 00040 Clear(); 00041 delete fMatVector; 00042 }
void G3MatTable::Clear | ( | ) |
Definition at line 59 of file G3MatTable.cc.
Referenced by ~G3MatTable().
00060 { 00061 G3MatTableEntry* a; 00062 while (fMatVector->size()>0) { 00063 a = fMatVector->back(); 00064 fMatVector->pop_back(); 00065 for (G3MaterialVector::iterator i=fMatVector->begin(); 00066 i!=fMatVector->end();){ 00067 if (*i==a) { 00068 i = fMatVector->erase(i); 00069 } 00070 else { 00071 ++i; 00072 } 00073 } 00074 if ( a ) delete a; 00075 } 00076 }
G4Material * G3MatTable::get | ( | G4int | id | ) | const |
Definition at line 44 of file G3MatTable.cc.
References G4Material::GetMaterial().
Referenced by G4gstmed().
00045 { 00046 for (size_t i=0; i< fMatVector->size(); i++) { 00047 G3MatTableEntry* mte = (*fMatVector)[i]; 00048 if (id == mte->GetID()) return mte->GetMaterial(); 00049 } 00050 return 0; 00051 }
void G3MatTable::put | ( | G4int | id, | |
G4Material * | material | |||
) |
Definition at line 53 of file G3MatTable.cc.
Referenced by G4gsmate(), and G4gsmixt().
00054 { 00055 G3MatTableEntry* mte = new G3MatTableEntry(id, material); 00056 fMatVector->push_back(mte); 00057 }