/[PAMELA software]/PamelaLevel2/src/PamLevel2.cpp
ViewVC logotype

Diff of /PamelaLevel2/src/PamLevel2.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.113 by pam-fi, Wed Apr 20 09:29:29 2016 UTC revision 1.114 by pamela, Tue Jan 17 09:49:51 2017 UTC
# Line 2799  PamTrack *PamLevel2::GetTrack(int it, co Line 2799  PamTrack *PamLevel2::GetTrack(int it, co
2799                  it < tsorted_nuc->GetEntries() &&                             //enough tracks found                  it < tsorted_nuc->GetEntries() &&                             //enough tracks found
2800                  it >= 0 &&                                                //valid index                  it >= 0 &&                                                //valid index
2801                  true) return (PamTrack*)((*tsorted_nuc)[it]);                 //ok return the track                  true) return (PamTrack*)((*tsorted_nuc)[it]);                 //ok return the track
2802            }else if( s.Contains("HE" ) ){
2803    
2804                //-------------------------------- mixed NUC+STD algorythm
2805                PamTrack* trnuc = NULL;
2806                PamTrack* trstd = NULL;
2807                if( tsorted_nuc &&
2808                    it < tsorted_nuc->GetEntries() &&                             //enough NUC tracks found
2809                    it >= 0 &&              
2810                    true)trnuc = (PamTrack*)((*tsorted_nuc)[it]);
2811                if( tsorted &&
2812                    it < tsorted->GetEntries() &&                             //enough NUC tracks found
2813                    it >= 0 &&              
2814                    true)trstd = (PamTrack*)((*tsorted)[it]);
2815    
2816                if(!trnuc &&  trstd)return trstd;
2817                if( trnuc && !trstd)return trnuc;
2818                if( trnuc && trnuc->GetExtTrack()->chi2 < trstd->GetExtTrack()->chi2 )return trnuc;
2819                return trstd;
2820    
2821          }else{          }else{
2822              if(              if(
2823                  tsorted &&                  tsorted &&
# Line 2822  PamTrack *PamLevel2::GetTrack(int it, co Line 2841  PamTrack *PamLevel2::GetTrack(int it, co
2841                  it < text_nuc->GetEntries() &&                             //enough tracks found                  it < text_nuc->GetEntries() &&                             //enough tracks found
2842                  it >= 0 &&                                                //valid index                  it >= 0 &&                                                //valid index
2843                  true) return (PamTrack*)((*text_nuc)[it]);                  true) return (PamTrack*)((*text_nuc)[it]);
2844    
2845            }else if( s.Contains("HE" ) ){
2846    
2847                //-------------------------------- mixed NUC+STD algorythm
2848                PamTrack* trnuc = NULL;
2849                PamTrack* trstd = NULL;
2850                if( text_nuc &&
2851                    it < text_nuc->GetEntries() &&                             //enough NUC tracks found
2852                    it >= 0 &&              
2853                    true)trnuc = (PamTrack*)((*text_nuc)[it]);
2854                if( text &&
2855                    it < text->GetEntries() &&                                //enough NUC tracks found
2856                    it >= 0 &&              
2857                    true)trstd = (PamTrack*)((*text)[it]);
2858    
2859                if(!trnuc &&  trstd)return trstd;
2860                if( trnuc && !trstd)return trnuc;
2861                if( trnuc && trnuc->GetExtTrack()->chi2 < trstd->GetExtTrack()->chi2 )return trnuc;
2862                return trstd;
2863    
2864          }else{          }else{
2865              if(              if(
2866                  text &&                  text &&
# Line 2863  Int_t  PamLevel2::GetNTracks(const char* Line 2902  Int_t  PamLevel2::GetNTracks(const char*
2902          return trk_ext_obj->GetEntries();//ok          return trk_ext_obj->GetEntries();//ok
2903      }      }
2904      if( s.Contains("EXT", TString::kIgnoreCase) && EXT) {      if( s.Contains("EXT", TString::kIgnoreCase) && EXT) {
2905    
2906            if(s.Contains("HE", TString::kIgnoreCase) && NUC){
2907                int nnuc = (trk2_nuc_obj->TrkLevel2::GetNTracks() ?  trk2_nuc_obj->TrkLevel2::GetNTracks() :  trk_ext_nuc_obj->GetEntries() );      
2908                int next = (trk2_obj->TrkLevel2::GetNTracks() ?  trk2_obj->TrkLevel2::GetNTracks() :  trk_ext_obj->GetEntries() );
2909                return max(nnuc,next);
2910            }
2911          if(s.Contains("NUC", TString::kIgnoreCase) && NUC)          if(s.Contains("NUC", TString::kIgnoreCase) && NUC)
2912              return (trk2_nuc_obj->TrkLevel2::GetNTracks() ?  trk2_nuc_obj->TrkLevel2::GetNTracks() :  trk_ext_nuc_obj->GetEntries() );                return (trk2_nuc_obj->TrkLevel2::GetNTracks() ?  trk2_nuc_obj->TrkLevel2::GetNTracks() :  trk_ext_nuc_obj->GetEntries() );  
2913    
2914            
2915          return (trk2_obj->TrkLevel2::GetNTracks() ?  trk2_obj->TrkLevel2::GetNTracks() :  trk_ext_obj->GetEntries() );          return (trk2_obj->TrkLevel2::GetNTracks() ?  trk2_obj->TrkLevel2::GetNTracks() :  trk_ext_obj->GetEntries() );
2916      }      }
2917    
2918        if(s.Contains("HE", TString::kIgnoreCase) && NUC )
2919            return max(trk2_obj->TrkLevel2::GetNTracks(), trk2_nuc_obj->TrkLevel2::GetNTracks());
2920    
2921      if(s.Contains("NUC", TString::kIgnoreCase) && NUC )      if(s.Contains("NUC", TString::kIgnoreCase) && NUC )
2922          return trk2_nuc_obj->TrkLevel2::GetNTracks();          return trk2_nuc_obj->TrkLevel2::GetNTracks();
2923    
2924            
2925      cout << "Int_t  PamLevel2::GetNTracks("<<alg<<") -- unrecognised algorithm"<<endl;      cout << "Int_t  PamLevel2::GetNTracks("<<alg<<") -- unrecognised algorithm"<<endl;
2926    

Legend:
Removed from v.1.113  
changed lines
  Added in v.1.114

  ViewVC Help
Powered by ViewVC 1.1.23