374 |
PamTrack::PamTrack(const PamTrack& track) { |
PamTrack::PamTrack(const PamTrack& track) { |
375 |
|
|
376 |
TrkTrack *t = track.trk_track; |
TrkTrack *t = track.trk_track; |
377 |
|
ExtTrack *e = track.trk_ext_track; |
378 |
CaloTrkVar *c = track.calo_track; |
CaloTrkVar *c = track.calo_track; |
379 |
ToFTrkVar *o = track.tof_track; |
ToFTrkVar *o = track.tof_track; |
380 |
OrbitalInfoTrkVar *r = track.orb_track; |
OrbitalInfoTrkVar *r = track.orb_track; |
381 |
|
|
382 |
trk_track = 0; |
trk_ext_track = 0; |
383 |
calo_track = 0; |
trk_track = 0; |
384 |
tof_track = 0; |
calo_track = 0; |
385 |
orb_track = 0; |
tof_track = 0; |
386 |
|
orb_track = 0; |
387 |
|
if(e) |
388 |
|
trk_ext_track = new ExtTrack(*e); |
389 |
if (t) |
if (t) |
390 |
trk_track = new TrkTrack(*t); |
trk_track = new TrkTrack(*t); |
391 |
if (c) |
if (c) |
394 |
tof_track = new ToFTrkVar(*o); |
tof_track = new ToFTrkVar(*o); |
395 |
if (r) |
if (r) |
396 |
orb_track = new OrbitalInfoTrkVar(*r); |
orb_track = new OrbitalInfoTrkVar(*r); |
397 |
|
|
398 |
candeleteobj = 1; |
candeleteobj = 1; |
399 |
pscore = 0; |
pscore = 0; |
400 |
iscore = 0; |
iscore = 0; |
401 |
|
|
402 |
} |
} |
403 |
void PamTrack::Clear() { |
void PamTrack::Clear(Option_t *option) { |
404 |
|
|
405 |
// cout << "PamTrack::Clear() "<<candeleteobj<<endl; |
// cout << "PamTrack::Clear( "<<option<<" ) "<<candeleteobj<<endl; |
406 |
if (candeleteobj) { |
if (candeleteobj) { |
407 |
|
|
408 |
if (trk_ext_track) |
if (trk_ext_track) |
409 |
trk_ext_track->ExtTrack::Clear(); |
trk_ext_track->ExtTrack::Clear(option); |
410 |
if (trk_track) |
if (trk_track) |
411 |
trk_track->TrkTrack::Clear(); |
trk_track->TrkTrack::Clear(); |
412 |
if (calo_track) |
if (calo_track) |
431 |
// cout << "PamTrack::Delete() "<<candeleteobj<<endl; |
// cout << "PamTrack::Delete() "<<candeleteobj<<endl; |
432 |
if (candeleteobj) { |
if (candeleteobj) { |
433 |
if (trk_ext_track) { |
if (trk_ext_track) { |
434 |
trk_ext_track->ExtTrack::Clear(); |
trk_ext_track->ExtTrack::Clear("C"); |
435 |
delete trk_ext_track; |
delete trk_ext_track; |
436 |
} |
} |
437 |
if (trk_track) { |
if (trk_track) { |
1453 |
// create TCloneArrays to store tracks and its images |
// create TCloneArrays to store tracks and its images |
1454 |
if (!tsorted) |
if (!tsorted) |
1455 |
tsorted = new TClonesArray("PamTrack", trk2_obj->GetNTracks()); |
tsorted = new TClonesArray("PamTrack", trk2_obj->GetNTracks()); |
1456 |
tsorted->Delete(); |
tsorted->Clear("C+C");//Delete(); |
1457 |
TClonesArray &ttsorted = *tsorted; |
TClonesArray &ttsorted = *tsorted; |
1458 |
|
|
1459 |
if (!timage) |
if (!timage) |
1460 |
timage = new TClonesArray("PamTrack", trk2_obj->GetNTracks()); |
timage = new TClonesArray("PamTrack", trk2_obj->GetNTracks()); |
1461 |
timage->Delete(); |
timage->Clear("C+C");//Delete(); |
1462 |
TClonesArray &ttimage = *timage; |
TClonesArray &ttimage = *timage; |
1463 |
|
|
1464 |
|
|
1994 |
//----------------------------------------------------------- |
//----------------------------------------------------------- |
1995 |
// create/reset TCloneArrays to store tracks and their images |
// create/reset TCloneArrays to store tracks and their images |
1996 |
//----------------------------------------------------------- |
//----------------------------------------------------------- |
1997 |
|
|
1998 |
|
// cout << " PamLevel2::SortTracksNew() --- Clear TClonesArray objects"<<endl; |
1999 |
|
|
2000 |
// main tracks from standard alg |
// main tracks from standard alg |
2001 |
if (!tsorted) |
// if (!tsorted) |
2002 |
tsorted = new TClonesArray("PamTrack", trk2_obj->GetNTracks()); |
// tsorted = new TClonesArray("PamTrack", trk2_obj->GetNTracks()); |
2003 |
tsorted->Delete(); |
// tsorted->Clear("C+C");//Delete(); |
2004 |
// track images from standard alg |
// // track images from standard alg |
2005 |
if (!timage) |
// if (!timage) |
2006 |
timage = new TClonesArray("PamTrack", trk2_obj->GetNTracks()); |
// timage = new TClonesArray("PamTrack", trk2_obj->GetNTracks()); |
2007 |
timage->Delete(); |
// timage->Clear("C+C");//Delete(); |
2008 |
// tracks from extended algorythm |
// // tracks from extended algorythm |
2009 |
if(EXT && !text) |
// if(EXT && !text) |
2010 |
text = new TClonesArray("PamTrack",trk_ext_obj->GetEntries()); |
// text = new TClonesArray("PamTrack",trk_ext_obj->GetEntries()); |
2011 |
if(text)text->Delete(); |
// if(text)text->Clear("C+C");//Delete(); |
2012 |
|
|
2013 |
|
if(tsorted)delete tsorted; |
2014 |
|
if(timage) delete timage; |
2015 |
|
if(text) delete text; |
2016 |
|
tsorted = new TClonesArray("PamTrack", trk2_obj->GetNTracks()); |
2017 |
|
timage = new TClonesArray("PamTrack", trk2_obj->GetNTracks()); |
2018 |
|
text = new TClonesArray("PamTrack",trk_ext_obj->GetEntries()); |
2019 |
|
|
2020 |
//----------------------------------------------------------- |
//----------------------------------------------------------- |
2021 |
// create/reset TCloneArrays to store tracks and their images |
// create/reset TCloneArrays to store tracks and their images |
2022 |
//----------------------------------------------------------- |
//----------------------------------------------------------- |
2023 |
if(NUC){ |
if(NUC){ |
2024 |
|
|
2025 |
|
|
2026 |
|
if(tsorted_nuc)delete tsorted_nuc; |
2027 |
|
if(timage_nuc) delete timage_nuc; |
2028 |
|
if(text_nuc) delete text_nuc; |
2029 |
|
tsorted_nuc = new TClonesArray("PamTrack", trk2_nuc_obj->GetNTracks()); |
2030 |
|
timage_nuc = new TClonesArray("PamTrack", trk2_nuc_obj->GetNTracks()); |
2031 |
|
text_nuc = new TClonesArray("PamTrack",trk_ext_nuc_obj->GetEntries()); |
2032 |
|
|
2033 |
// main tracks from standard alg |
// main tracks from standard alg |
2034 |
if (!tsorted_nuc) |
// if (!tsorted_nuc) |
2035 |
tsorted_nuc = new TClonesArray("PamTrack", trk2_nuc_obj->GetNTracks()); |
// tsorted_nuc = new TClonesArray("PamTrack", trk2_nuc_obj->GetNTracks()); |
2036 |
tsorted_nuc->Delete(); |
// tsorted_nuc->Clear("C+C");//Delete(); |
2037 |
// track images from standard alg |
// // track images from standard alg |
2038 |
if (!timage_nuc) |
// if (!timage_nuc) |
2039 |
timage_nuc = new TClonesArray("PamTrack", trk2_nuc_obj->GetNTracks()); |
// timage_nuc = new TClonesArray("PamTrack", trk2_nuc_obj->GetNTracks()); |
2040 |
timage_nuc->Delete(); |
// timage_nuc->Clear("C+C");//Delete(); |
2041 |
// tracks from extended algorythm |
// // tracks from extended algorythm |
2042 |
if(EXT && !text_nuc) |
// if(EXT && !text_nuc) |
2043 |
text_nuc = new TClonesArray("PamTrack",trk_ext_nuc_obj->GetEntries()); |
// text_nuc = new TClonesArray("PamTrack",trk_ext_nuc_obj->GetEntries()); |
2044 |
if(text_nuc)text_nuc->Delete(); |
// if(text_nuc)text_nuc->Clear("C+C");//Delete(); |
2045 |
|
|
2046 |
} |
} |
2047 |
//-------------------------------------------------- |
//-------------------------------------------------- |
2048 |
// retrieve sorting method |
// retrieve sorting method |