49 return (*mol1) < (*mol2);
61 fRMSMotherMoleculeDisplacement = 0;
62 fDisplacementType = 0;
73 fRMSMotherMoleculeDisplacement = 0;
74 fDisplacementType = 0;
81 fProductsVector->clear();
82 delete fProductsVector;
94 if (&
right==
this)
return *
this;
99 fDisplacementType =
right.fDisplacementType;
101 if(
right.fProductsVector)
103 fProductsVector =
new vector<G4MoleculeHandle>(*(
right.fProductsVector));
105 else fProductsVector = 0;
108 fReleasedEnergy =
right.fReleasedEnergy;
109 fDecayTime =
right.fDecayTime;
110 fProbability =
right.fProbability;
112 fRMSMotherMoleculeDisplacement =
right.fRMSMotherMoleculeDisplacement;
113 fRMSProductsDisplacementVector =
right.fRMSProductsDisplacementVector;
120 if(!fProductsVector) fProductsVector =
new vector<G4MoleculeHandle> ;
123 fProductsVector->push_back(molHandle);
124 fRMSProductsDisplacementVector.push_back(displacement);
130 return fProductsVector->size();
137 return ((*fProductsVector)[index]).get();
144 if(!fProductsVector)
return -1.;
146 G4int sz = fProductsVector->size();
148 for (
G4int i=0; i<sz ; i++)
150 if(*product != *((*fProductsVector)[i]).
get())
152 value = fRMSProductsDisplacementVector[i];
bool operator()(const G4Molecule *mol1, const G4Molecule *mol2) const
void AddProduct(const G4Molecule *, G4double=0)
G4MolecularDecayChannel()
G4int GetNbProducts() const
const XML_Char int const XML_Char * value
~G4MolecularDecayChannel()
static G4MoleculeHandleManager * Instance()
const G4Molecule * GetProduct(int) const
G4double GetRMSRadialDisplacementOfProduct(const G4Molecule *)