delete fIdConverter;
}
-TEpos& TEpos::operator=(const TEpos&) {
+TEpos& TEpos::operator=(const TEpos& epos) {
//operator=
- if (!fIdConverter) {
- fIdConverter = new AliGenEposIsajetToPdgConverter();
- }
- return *this;
+ if (this != &epos) {
+ if (fIdConverter) {
+ delete fIdConverter;
+ fIdConverter = new AliGenEposIsajetToPdgConverter(*epos.fIdConverter);
+ } else{
+ fIdConverter = 0;
+ }
+ fLaproj = epos.fLaproj;
+ fMaproj = epos.fMaproj;
+ fLatarg = epos.fLatarg;
+ fMatarg = epos.fMatarg;
+ fBminim = epos.fBminim;
+ fBmaxim = epos.fBmaxim;
+ fPhimin = epos.fPhimin;
+ fPhimax = epos.fPhimax;
+ fEcms = epos.fEcms;
+ fSplitting = epos.fSplitting;
+ for(UInt_t i = 0; i < epos.fNoDecays.size(); ++i) {
+ fNoDecays.push_back(epos.fNoDecays[i]);
+ }
+ for(UInt_t i = 0; i < epos.fExtraInputLines.size(); ++i) {
+ fExtraInputLines.push_back(epos.fExtraInputLines[i]);
+ }
+ }
+ return *this;
}
void TEpos::Initialize() {
char epo[256];
char *epoEnv = getenv("EPO");
if (epoEnv) {
- strncpy(epo, epoEnv, 256);
+ strncpy(epo, epoEnv, 255);
} else {
- strncpy(epo, getenv("ALICE_ROOT"), 256);
+ strncpy(epo, getenv("ALICE_ROOT"), 255);
}
- strncat(epo, "/EPOS/epos167", 256);
+ strncat(epo, "/EPOS/epos167", 255);
file << "fname pathnx " << epo << "/" << endl;
file << "fname histo none" << endl;