43 : fVname(vname), fShape(shape), fRpar(0), fNpar(npar), fNmed(nmed),
44 fSolid(solid), fLV(0), fHasNegPars(hasNegPars), fHasMANY(false),
47 if (npar>0 && rpar!=0) {
49 for (
G4int i=0; i<npar; i++) fRpar[i] = rpar[i];
51 fClones.push_back(
this);
55 if (fRpar!=0)
delete [] fRpar;
61 return (
this==&lv) ?
true :
false;
69 fG3Pos.push_back(aG3Pos);
79 fDaughters.push_back(aDaughter);
86 fMothers.push_back(itsMother);
93 fClones.push_back(itsClone);
99 fOverlaps.push_back(overlap);
112 +
" does not exist.";
113 G4Exception(
"G3VolTableEntry::ReplaceDaughter()",
"G3toG40007",
117 fDaughters[
index] = vteNew;
130 +
" does not exist.";
131 G4Exception(
"G3VolTableEntry::ReplaceMother()",
"G3toG40008",
135 fMothers[
index] = vteNew;
150 if (mvte->
GetName() == Mname)
return mvte;
159 if (cvte->
GetName() == Cname)
return cvte;
169 G4cout <<
"Parameters (npar = " << fNpar <<
") fRpar: ";
170 for (
G4int i=0; i<fNpar; i++)
G4cout << fRpar[i] <<
" ";
174 G4cout <<
"================================= " <<
G4endl;
202 for (
G4int i=0; i<fNpar; i++) fRpar[i] = rpar[i];
206 fHasNegPars = hasNegPars;
214 if (fG3Pos.size()>0 && copy>=0 && copy<
G4int(fG3Pos.size())) {
215 std::vector<G3Pos*>::iterator it=fG3Pos.begin();
216 for(
G4int j=0;j<copy;j++) it++;
217 if(it!=fG3Pos.end()) {
255 return fG3Pos.size();
260 if (fG3Pos.size()>0 && copy>=0)
288 return fDaughters.size();
293 return fMothers.size();
298 return fClones.size();
303 return fOverlaps.size();
308 if (i<
G4int(fDaughters.size()) && i>=0)
309 return fDaughters[i];
316 if (i<
G4int(fMothers.size()) && i>=0)
325 if (fMothers.size()>0)
333 if (i<
G4int(fClones.size()) && i>=0)
353 std::vector<G3VolTableEntry*>*