/[PAMELA software]/DarthVader/TrackerLevel2/src/TrkLevel1.cpp
ViewVC logotype

Diff of /DarthVader/TrackerLevel2/src/TrkLevel1.cpp

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

revision 1.25 by pam-fi, Sat Mar 22 08:32:50 2008 UTC revision 1.27 by pam-fi, Thu Feb 27 11:24:43 2014 UTC
# Line 17  extern "C" { Line 17  extern "C" {
17      float pfaeta3_(int*,float*);      float pfaeta3_(int*,float*);
18      float pfaeta4_(int*,float*);      float pfaeta4_(int*,float*);
19      float pfaetal_(int*,float*);      float pfaetal_(int*,float*);
20        float digsat_(int*);
21      int   npfastrips_(int*,float*);      int   npfastrips_(int*,float*);
22                    
23  }  }
# Line 407  void TrkCluster::GetLevel1Struct(cTrkLev Line 408  void TrkCluster::GetLevel1Struct(cTrkLev
408   *      @param ncog Number of strips to evaluate COG.     *      @param ncog Number of strips to evaluate COG.  
409   * If ncog=0, the COG of the cluster is evaluated according to the cluster multiplicity (defined by the inclusion cut).   * If ncog=0, the COG of the cluster is evaluated according to the cluster multiplicity (defined by the inclusion cut).
410   * If ncog>0, the COG is evaluated using ncog strips, even if they have a negative signal (according to G.Landi)   * If ncog>0, the COG is evaluated using ncog strips, even if they have a negative signal (according to G.Landi)
411     *
412     * (NB TrkCluster::GetLevel1Struct() showld be called first, in order to fill the F77 level1 common with this single cluster)
413   */   */
414  Float_t TrkCluster::GetCOG(Int_t ncog){  Float_t TrkCluster::GetCOG(Int_t ncog){
415                    
416      int ic = 1;      int ic = 1;
417      GetLevel1Struct();      //    GetLevel1Struct(); //Elena: dangerous...
418      return cog_(&ncog,&ic);      return cog_(&ncog,&ic);
419                    
420  };  };
# Line 455  Float_t TrkCluster::GetCOG(Float_t angle Line 458  Float_t TrkCluster::GetCOG(Float_t angle
458   *  @param angle Projected (effective) angle between particle track and detector plane.   *  @param angle Projected (effective) angle between particle track and detector plane.
459   *  @landi flag to apply Landi correction   *  @landi flag to apply Landi correction
460   * Implemented values of neta are 2,3,4. If neta=0, ETA2, ETA3 and ETA4 are applied according to the angle.   * Implemented values of neta are 2,3,4. If neta=0, ETA2, ETA3 and ETA4 are applied according to the angle.
461     * (NB TrkCluster::GetLevel1Struct() showld be called first, in order to fill the F77 level1 common with this single cluster)
462   */   */
463  Float_t TrkCluster::GetETA(Int_t neta, float angle, bool landi){  Float_t TrkCluster::GetETA(Int_t neta, float angle, bool landi){
464                    
# Line 469  Float_t TrkCluster::GetETA(Int_t neta, f Line 473  Float_t TrkCluster::GetETA(Int_t neta, f
473    
474      float ax = angle;      float ax = angle;
475      int ic = 1;      int ic = 1;
476      GetLevel1Struct();      //GetLevel1Struct(); //Elena: dangerous...
477      if(     neta == 0 && !landi) return pfaeta_(&ic,&ax);      if(     neta == 0 && !landi) return pfaeta_(&ic,&ax);
478      else if(neta == 0 && landi ) return pfaetal_(&ic,&ax);      else if(neta == 0 && landi ) return pfaetal_(&ic,&ax);
479      else if(neta == 2          ) return pfaeta2_(&ic,&ax);      else if(neta == 2          ) return pfaeta2_(&ic,&ax);
# Line 481  Float_t TrkCluster::GetETA(Int_t neta, f Line 485  Float_t TrkCluster::GetETA(Int_t neta, f
485  };  };
486    
487  /**  /**
488     * Evaluates the cluster position, in pitch units, relative to the strip
489     *  with the maximum signal (TrkCluster::maxs), by applying the digital
490     *  algorithm for saturated clusters.
491     *
492     *  @return The cluster position (0 also if if no saturated strip is found).
493     *
494     * (NB TrkCluster::GetLevel1Struct() showld be called first, in order to fill the F77 level1 common with this single cluster)
495     */
496    Float_t TrkCluster::GetDigSat() {
497    
498      //  GetLevel1Struct(); //Elena: dangerous...
499      int ic = 1;
500      return digsat_(&ic);
501    
502    }
503    
504    /**
505   * Evaluates the cluster position, in pitch unit, relative to the strip with   * Evaluates the cluster position, in pitch unit, relative to the strip with
506   * the maximum signal (TrkCluster::maxs), by applying the PFA set as default (see TrkParams).   * the maximum signal (TrkCluster::maxs), by applying the PFA set as default (see TrkParams).
507   *  @param angle Projected (effective) angle between particle track and detector plane.   *  @param angle Projected (effective) angle between particle track and detector plane.
# Line 508  Float_t TrkCluster::GetPositionPU(float Line 529  Float_t TrkCluster::GetPositionPU(float
529   * according to the p.f.a.   * according to the p.f.a.
530   * It returns 0 when the COG is used (in this case the number of strip used   * It returns 0 when the COG is used (in this case the number of strip used
531   * equals the multiplicity).   * equals the multiplicity).
532     * (NB TrkCluster::GetLevel1Struct() showld be called first, in order to fill the F77 level1 common with this single cluster)
533   */   */
534  Int_t TrkCluster::GetPFAstrips(float angle){  Int_t TrkCluster::GetPFAstrips(float angle){
535    
536      float ax = angle;      float ax = angle;
537      int ic = 1;      int ic = 1;
538      GetLevel1Struct();      //    GetLevel1Struct(); //Elena: dangerous...
539      return npfastrips_(&ic,&ax);      return npfastrips_(&ic,&ax);
540    
541  }  }

Legend:
Removed from v.1.25  
changed lines
  Added in v.1.27

  ViewVC Help
Powered by ViewVC 1.1.23