Making the directory structure of AliFemtoUser flat. All files go into one common...
authorakisiel <akisiel@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 16 May 2007 10:25:06 +0000 (10:25 +0000)
committerakisiel <akisiel@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 16 May 2007 10:25:06 +0000 (10:25 +0000)
14 files changed:
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoESDTrackCut.cxx [moved from PWG2/FEMTOSCOPY/AliFemtoUser/Cut/AliFemtoESDTrackCut.cxx with 98% similarity]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoESDTrackCut.h [moved from PWG2/FEMTOSCOPY/AliFemtoUser/Cut/AliFemtoESDTrackCut.h with 97% similarity]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoModelBPLCMSCorrFctn.cxx [new file with mode: 0644]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoModelBPLCMSCorrFctn.h [new file with mode: 0644]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoModelCorrFctnSource.cxx [moved from PWG2/FEMTOSCOPY/AliFemtoUser/Model/AliFemtoModelCorrFctnSource.cxx with 95% similarity]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoModelCorrFctnSource.h [moved from PWG2/FEMTOSCOPY/AliFemtoUser/Model/AliFemtoModelCorrFctnSource.h with 88% similarity]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoModelGausRinvFreezeOutGenerator.cxx [moved from PWG2/FEMTOSCOPY/AliFemtoUser/Model/AliFemtoModelGausRinvFreezeOutGenerator.cxx with 97% similarity]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoModelGausRinvFreezeOutGenerator.h [moved from PWG2/FEMTOSCOPY/AliFemtoUser/Model/AliFemtoModelGausRinvFreezeOutGenerator.h with 96% similarity]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoQPairCut.cxx [moved from PWG2/FEMTOSCOPY/AliFemtoUser/Cut/AliFemtoQPairCut.cxx with 87% similarity]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoQPairCut.h [moved from PWG2/FEMTOSCOPY/AliFemtoUser/Cut/AliFemtoQPairCut.h with 93% similarity]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoShareQualityCorrFctn.cxx [moved from PWG2/FEMTOSCOPY/AliFemtoUser/CorrFctn/AliFemtoShareQualityCorrFctn.cxx with 80% similarity]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoShareQualityCorrFctn.h [moved from PWG2/FEMTOSCOPY/AliFemtoUser/CorrFctn/AliFemtoShareQualityCorrFctn.h with 91% similarity]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoShareQualityPairCut.cxx [moved from PWG2/FEMTOSCOPY/AliFemtoUser/Cut/AliFemtoShareQualityPairCut.cxx with 81% similarity]
PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoShareQualityPairCut.h [moved from PWG2/FEMTOSCOPY/AliFemtoUser/Cut/AliFemtoShareQualityPairCut.h with 97% similarity]

@@ -11,6 +11,9 @@
  ***************************************************************************
  *
  * $Log$
+ * Revision 1.4  2007/05/03 09:46:10  akisiel
+ * Fixing Effective C++ warnings
+ *
  * Revision 1.3  2007/04/27 07:25:59  akisiel
  * Make revisions needed for compilation from the main AliRoot tree
  *
@@ -11,6 +11,9 @@
  ***************************************************************************
  *
  * $Log$
+ * Revision 1.1.1.1  2007/04/25 15:38:41  panos
+ * Importing the HBT code dir
+ *
  * Revision 1.4  2007/03/20 09:37:13  mchojnacki
  * *** empty log message ***
  *
@@ -32,7 +35,7 @@
 //#include "StMaker.h"
 //#endif
 
-#include "Base/AliFemtoTrackCut.h"
+#include "AliFemtoTrackCut.h"
 
 class AliFemtoESDTrackCut : public AliFemtoTrackCut 
 {
diff --git a/PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoModelBPLCMSCorrFctn.cxx b/PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoModelBPLCMSCorrFctn.cxx
new file mode 100644 (file)
index 0000000..0c68d6d
--- /dev/null
@@ -0,0 +1,188 @@
+////////////////////////////////////////////////////////////////////////////////
+///                                                                          ///
+/// AliFemtoModelBPLCMSCorrFctn - the class for correlation function which   ///
+/// uses the model framework and weight generation and calculated the 3D     ///
+/// correlation function in the Bertsh-Pratt LCMS system                     ///
+/// Authors: Adam Kisiel, kisiel@mps.ohio-state.edu                          ///
+///                                                                          ///
+////////////////////////////////////////////////////////////////////////////////
+#include "AliFemtoModelBPLCMSCorrFctn.h"
+#include <cstdio>
+
+#ifdef __ROOT__ 
+ClassImp(AliFemtoModelBPLCMSCorrFctn)
+#endif
+
+//____________________________
+AliFemtoModelBPLCMSCorrFctn::AliFemtoModelBPLCMSCorrFctn(char* title, const int& nbins, const float& QLo, const float& QHi)
+  :
+  fNumerator(0),
+  fDenominator(0),
+  fQinvHisto(0)
+{
+
+  // set up numerator
+  char TitNum[100] = "Num";
+  strcat(TitNum,title);
+  fNumerator = new TH3D(TitNum,title,nbins,QLo,QHi,nbins,QLo,QHi,nbins,QLo,QHi);
+  // set up denominator
+  char TitDen[100] = "Den";
+  strcat(TitDen,title);
+  fDenominator = new TH3D(TitDen,title,nbins,QLo,QHi,nbins,QLo,QHi,nbins,QLo,QHi);
+  // set up ave qInv
+  char TitQinv[100] = "Qinv";
+  strcat(TitQinv,title);
+  fQinvHisto = new TH3D(TitQinv,title,nbins,QLo,QHi,nbins,QLo,QHi,nbins,QLo,QHi);
+
+  // to enable error bar calculation...
+  fNumerator->Sumw2();
+  fDenominator->Sumw2();
+}
+
+AliFemtoModelBPLCMSCorrFctn::AliFemtoModelBPLCMSCorrFctn(const AliFemtoModelBPLCMSCorrFctn& aCorrFctn) :
+  fNumerator(0),
+  fDenominator(0),
+  fQinvHisto(0)
+{
+  fNumerator = new TH3D(*aCorrFctn.fNumerator);
+  fDenominator = new TH3D (*aCorrFctn.fDenominator);
+  fQinvHisto = new TH3D(*aCorrFctn.fQinvHisto);
+}
+//____________________________
+AliFemtoModelBPLCMSCorrFctn::~AliFemtoModelBPLCMSCorrFctn(){
+  delete fNumerator;
+  delete fDenominator;
+  delete fQinvHisto;
+}
+//_________________________
+AliFemtoModelBPLCMSCorrFctn& AliFemtoModelBPLCMSCorrFctn::operator=(const AliFemtoModelBPLCMSCorrFctn& aCorrFctn)
+{
+  if (this == &aCorrFctn)
+    return *this;
+  if (fNumerator) delete fNumerator;
+  fNumerator = new TH3D(*aCorrFctn.fNumerator);
+  if (fDenominator) delete fDenominator;
+  fDenominator = new TH3D(*aCorrFctn.fDenominator);
+  if (fQinvHisto) delete fQinvHisto;
+  fQinvHisto = new TH3D(*aCorrFctn.fQinvHisto);
+
+  return *this;
+}
+
+//_________________________
+void AliFemtoModelBPLCMSCorrFctn::WriteOutHistos(){
+
+  fNumerator->Write();
+  fDenominator->Write();
+  fQinvHisto->Write();
+}
+
+//_________________________
+void AliFemtoModelBPLCMSCorrFctn::Finish(){
+  fQinvHisto->Divide(fDenominator);
+}
+
+//____________________________
+AliFemtoString AliFemtoModelBPLCMSCorrFctn::Report(){
+  string stemp = "LCMS Frame Bertsch-Pratt 3D Correlation Function Report:\n";
+  char ctemp[100];
+  sprintf(ctemp,"Number of entries in numerator:\t%E\n",fNumerator->GetEntries());
+  stemp += ctemp;
+  sprintf(ctemp,"Number of entries in denominator:\t%E\n",fDenominator->GetEntries());
+  stemp += ctemp;
+  sprintf(ctemp,"Number of entries in ratio:\t%E\n",fRatio->GetEntries());
+  stemp += ctemp;
+  sprintf(ctemp,"Normalization region in Qinv was:\t%E\t%E\n",fQinvNormLo,fQinvNormHi);
+  stemp += ctemp;
+  sprintf(ctemp,"Number of pairs in Normalization region was:\n");
+  stemp += ctemp;
+  sprintf(ctemp,"In numerator:\t%lu\t In denominator:\t%lu\n",fNumRealsNorm,fNumMixedNorm);
+  stemp += ctemp;
+  /*  if (fCorrection)
+      {
+      float radius = fCorrection->GetRadius();
+      sprintf(ctemp,"Coulomb correction used radius of\t%E\n",radius);
+      }
+      else
+      {
+      sprintf(ctemp,"No Coulomb Correction applied to this CorrFctn\n");
+      }
+      stemp += ctemp;
+  */
+
+  if (fPairCut){
+    sprintf(ctemp,"Here is the PairCut specific to this CorrFctn\n");
+    stemp += ctemp;
+    stemp += fPairCut->Report();
+  }
+  else{
+    sprintf(ctemp,"No PairCut specific to this CorrFctn\n");
+    stemp += ctemp;
+  }
+
+  //  
+  AliFemtoString returnThis = stemp;
+  return returnThis;
+}
+//____________________________
+void AliFemtoModelBPLCMSCorrFctn::AddRealPair( AliFemtoPair* pair){
+
+  if (fPairCut){
+    if (!(fPairCut->Pass(pair))) return;
+  }
+
+  double Qinv = fabs(pair->qInv());   // note - qInv() will be negative for identical pairs...
+  if ((Qinv < fQinvNormHi) && (Qinv > fQinvNormLo)) fNumRealsNorm++;
+  double qOut = fabs(pair->qOutCMS());
+  double qSide = fabs(pair->qSideCMS());
+  double qLong = fabs(pair->qLongCMS());
+
+  fNumerator->Fill(qOut,qSide,qLong);
+}
+//____________________________
+void AliFemtoModelBPLCMSCorrFctn::AddMixedPair( AliFemtoPair* pair){
+
+  if (fPairCut){
+    if (!(fPairCut->Pass(pair))) return;
+  }
+
+  //  double CoulombWeight = (fCorrection ? fCorrection->CoulombCorrect(pair) : 1.0);
+  double CoulombWeight = 1.0;
+
+  double Qinv = fabs(pair->qInv());   // note - qInv() will be negative for identical pairs...
+  if ((Qinv < fQinvNormHi) && (Qinv > fQinvNormLo)) fNumMixedNorm++;
+  double qOut = fabs(pair->qOutCMS());
+  double qSide = fabs(pair->qSideCMS());
+  double qLong = fabs(pair->qLongCMS());
+
+  fDenominator->Fill(qOut,qSide,qLong,CoulombWeight);
+  //  fUncorrectedDenominator->Fill(qOut,qSide,qLong,1.0);
+  fQinvHisto->Fill(qOut,qSide,qLong,Qinv);
+
+  /*
+  // now for the momentum resolution stuff...
+  if (fSmearPair){
+      double CorrWeight =  1.0 + 
+      fLambda*exp((-qOut*qOut*fRout2 -qSide*qSide*fRside2 -qLong*qLong*fRlong2)/0.038936366329);
+    CorrWeight *= CoulombWeight;  // impt.
+
+    fIDNumHisto->Fill(qOut,qSide,qLong,CorrWeight);
+    fIDDenHisto->Fill(qOut,qSide,qLong,CoulombWeight);
+
+    fSmearPair->SetUnsmearedPair(pair);
+    double qOut_prime = fabs(fSmearPair->SmearedPair().qOutCMS());
+    double qSide_prime = fabs(fSmearPair->SmearedPair().qSideCMS());
+    double qLong_prime = fabs(fSmearPair->SmearedPair().qLongCMS());
+
+    fSMNumHisto->Fill(qOut_prime,qSide_prime,qLong_prime,CorrWeight);
+
+    double SmearedCoulombWeight = ( fCorrection ? 
+                                   fCorrection->CoulombCorrect(&(fSmearPair->SmearedPair())) : 
+                                   1.0);
+
+    fSMDenHisto->Fill(qOut_prime,qSide_prime,qLong_prime,SmearedCoulombWeight);
+  }
+  */
+}
+
+
diff --git a/PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoModelBPLCMSCorrFctn.h b/PWG2/FEMTOSCOPY/AliFemtoUser/AliFemtoModelBPLCMSCorrFctn.h
new file mode 100644 (file)
index 0000000..56fdb4d
--- /dev/null
@@ -0,0 +1,56 @@
+////////////////////////////////////////////////////////////////////////////////
+///                                                                          ///
+/// AliFemtoModelBPLCMSCorrFctn - the class for correlation function which   ///
+/// uses the model framework and weight generation and calculated the 3D     ///
+/// correlation function in the Bertsh-Pratt LCMS system                     ///
+/// Authors: Adam Kisiel, kisiel@mps.ohio-state.edu                          ///
+///                                                                          ///
+////////////////////////////////////////////////////////////////////////////////
+#ifndef AliFemtoModelBPLCMS3DCorrFctn_hh
+#define AliFemtoModelBPLCMS3DCorrFctn_hh
+
+#include "AliFemtoCorrFctn.h"
+#include "AliFemtoModelCorrFctn.h"
+#include "AliFemtoPairCut.h"
+#include "TH3D.h"
+
+class AliFemtoModelBPLCMS3DCorrFctn : public AliFemtoModelCorrFctn {
+ public:
+  AliFemtoModelBPLCMSCorrFctn();
+  AliFemtoModelBPLCMSCorrFctn(char* title, const int& nbins, const float& QLo, const float& QHi);
+  AliFemtoModelBPLCMSCorrFctn(const AliFemtoModelBPLCMSCorrFctn& aCorrFctn);
+  virtual ~AliFemtoModelBPLCMSCorrFctn();
+
+  AliFemtoModelBPLCMSCorrFctn& operator=(const AliFemtoModelBPLCMSCorrFctn& aCorrFctn);
+
+  virtual AliFemtoString Report();
+  virtual void AddRealPair(AliFemtoPair*);
+  virtual void AddMixedPair(AliFemtoPair*);
+
+  virtual void Finish();
+
+  virtual void Write();
+
+  virtual AliFemtoModelCorrFctnSource* Clone();
+
+  TH3D* Numerator();
+  TH3D* Denominator();
+  TH3D* QinvHisto();
+
+private:
+  TH3D* fNumerator;
+  TH3D* fDenominator;
+
+  TH3D* fQinvHisto;
+
+#ifdef __ROOT__
+  ClassDef(AliFemtoModelBPLCMSCorrFctn, 1)
+#endif
+};
+
+inline  TH3D* AliFemtoModelBPLCMSCorrFctn::Numerator(){return fNumerator;}
+inline  TH3D* AliFemtoModelBPLCMSCorrFctn::Denominator(){return fDenominator;}
+inline  TH3D* AliFemtoModelBPLCMSCorrFctn::QinvHisto(){return fQinvHisto;}
+
+#endif
+
@@ -10,9 +10,9 @@
   ClassImp(AliFemtoModelCorrFctnSource, 1)
 #endif
 
-#include "Model/AliFemtoModelGausLCMSFreezeOutGenerator.h"
-#include "Model/AliFemtoModelHiddenInfo.h"
-#include "Model/AliFemtoModelCorrFctnSource.h"
+#include "AliFemtoModelGausLCMSFreezeOutGenerator.h"
+#include "AliFemtoModelHiddenInfo.h"
+#include "AliFemtoModelCorrFctnSource.h"
     
 //_______________________
 AliFemtoModelCorrFctnSource::AliFemtoModelCorrFctnSource(): 
@@ -137,7 +137,7 @@ void AliFemtoModelCorrFctnSource::Write()
   AliFemtoModelCorrFctn::Write();
 }
 //_______________________
-AliFemtoModelCorrFctnSource* AliFemtoModelCorrFctnSource::Clone()
+AliFemtoModelCorrFctn* AliFemtoModelCorrFctnSource::Clone()
 {
   AliFemtoModelCorrFctnSource *tCopy = new AliFemtoModelCorrFctnSource(*this);
   
@@ -9,10 +9,10 @@
 #ifndef AliFemtoModelCorrFctnSource_hh
 #define AliFemtoModelCorrFctnSource_hh
 
-#include "Base/AliFemtoCorrFctn.h"
-#include "Infrastructure/AliFemtoPair.h"
-#include "Model/AliFemtoModelManager.h"
-#include "Model/AliFemtoModelCorrFctn.h"
+#include "AliFemtoCorrFctn.h"
+#include "AliFemtoPair.h"
+#include "AliFemtoModelManager.h"
+#include "AliFemtoModelCorrFctn.h"
 
 class AliFemtoModelCorrFctnSource: public AliFemtoModelCorrFctn {
 
@@ -31,7 +31,7 @@ public:
 
   virtual void Write();
 
-  virtual AliFemtoModelCorrFctnSource* Clone();
+  virtual AliFemtoModelCorrFctn* Clone();
 
 protected:
 
@@ -11,7 +11,7 @@
 
 #include "math.h"
 #include "AliFemtoModelGausRinvFreezeOutGenerator.h"
-#include "Model/AliFemtoModelHiddenInfo.h"
+#include "AliFemtoModelHiddenInfo.h"
 #include "AliFemtoLorentzVector.h"
 
 //_______________________
@@ -41,8 +41,8 @@ void AliFemtoModelGausRinvFreezeOutGenerator::GenerateFreezeOut(AliFemtoPair *aP
   // Generate two particle emission points with respect
   // to their pair momentum 
   // The source is the 3D Gaussian ellipsoid in the LCMS frame
-  AliFemtoModelHiddenInfo *inf1 = (AliFemtoModelHiddenInfo *) aPair->track1()->HiddenInfo();
-  AliFemtoModelHiddenInfo *inf2 = (AliFemtoModelHiddenInfo *) aPair->track2()->HiddenInfo();
+  AliFemtoModelHiddenInfo *inf1 = (AliFemtoModelHiddenInfo *) aPair->Track1()->HiddenInfo();
+  AliFemtoModelHiddenInfo *inf2 = (AliFemtoModelHiddenInfo *) aPair->Track2()->HiddenInfo();
 
   if ((!inf1) || (!inf2)) { cout << "Hidden info not created! "  << endl; exit(kFALSE); }
 
@@ -8,7 +8,7 @@
 #ifndef AliFemtoModelGausRinvFreezeOutGenerator_hh
 #define AliFemtoModelGausRinvFreezeOutGenerator_hh
 
-#include "Model/AliFemtoModelFreezeOutGenerator.h"
+#include "AliFemtoModelFreezeOutGenerator.h"
 
 #include "TRandom.h"
 
@@ -7,6 +7,9 @@
  ***************************************************************************
  *
  * $Log$
+ * Revision 1.4  2007/05/03 09:46:10  akisiel
+ * Fixing Effective C++ warnings
+ *
  * Revision 1.3  2007/04/27 07:25:59  akisiel
  * Make revisions needed for compilation from the main AliRoot tree
  *
@@ -48,17 +51,17 @@ bool AliFemtoQPairCut::Pass(const AliFemtoPair* pair)
 {
   //bool temp = true;
   //temp ? fNPairsPassed++ : fNPairsFailed++;
-  if ((fabs(pair->qLongCMS())<fQlong[0])||(fabs(pair->qLongCMS())>fQlong[1]))
+  if ((fabs(pair->QLongCMS())<fQlong[0])||(fabs(pair->QLongCMS())>fQlong[1]))
   {
        fNPairsFailed++;
        return false;
   }
-  if ((fabs(pair->qOutCMS())<fQout[0])||(fabs(pair->qOutCMS())>fQout[1]))
+  if ((fabs(pair->QOutCMS())<fQout[0])||(fabs(pair->QOutCMS())>fQout[1]))
   {
        fNPairsFailed++;
        return false;
   }
-  if ((fabs(pair->qSideCMS())<fQside[0])||(fabs(pair->qSideCMS())>fQside[1]))
+  if ((fabs(pair->QSideCMS())<fQside[0])||(fabs(pair->QSideCMS())>fQside[1]))
   {
        fNPairsFailed++;
        return false;
@@ -8,6 +8,9 @@
  ***************************************************************************
  *
  * $Log$
+ * Revision 1.1.1.1  2007/04/25 15:38:41  panos
+ * Importing the HBT code dir
+ *
  * Revision 1.1.1.1  2007/03/07 10:14:49  mchojnacki
  * First version on CVS
  *
@@ -23,7 +26,7 @@
 //#include "StMaker.h"
 //#endif
 
-#include "Base/AliFemtoPairCut.h"
+#include "AliFemtoPairCut.h"
 
 class AliFemtoQPairCut : public AliFemtoPairCut{
 public:
@@ -7,7 +7,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 
 #include "AliFemtoShareQualityCorrFctn.h"
-//#include "Infrastructure/AliFemtoHisto.hh"
+//#include "AliFemtoHisto.hh"
 #include <cstdio>
 
 #ifdef __ROOT__ 
@@ -129,19 +129,19 @@ AliFemtoString AliFemtoShareQualityCorrFctn::Report(){
   return returnThis;
 }
 //____________________________
-void AliFemtoShareQualityCorrFctn::AddRealPair(const AliFemtoPair* pair){
-  double Qinv = fabs(pair->qInv());   // note - qInv() will be negative for identical pairs...
+void AliFemtoShareQualityCorrFctn::AddRealPair( AliFemtoPair* pair){
+  double Qinv = fabs(pair->QInv());   // note - qInv() will be negative for identical pairs...
   Int_t nh = 0;
   Int_t an = 0;
   Int_t ns = 0;
   
-  for (unsigned int imap=0; imap<pair->track1()->Track()->TPCclusters().GetNbits(); imap++) {
+  for (unsigned int imap=0; imap<pair->Track1()->Track()->TPCclusters().GetNbits(); imap++) {
     // If both have clusters in the same row
-    if (pair->track1()->Track()->TPCclusters().TestBitNumber(imap) && 
-       pair->track2()->Track()->TPCclusters().TestBitNumber(imap)) {
+    if (pair->Track1()->Track()->TPCclusters().TestBitNumber(imap) && 
+       pair->Track2()->Track()->TPCclusters().TestBitNumber(imap)) {
       // Do they share it ?
-      if (pair->track1()->Track()->TPCsharing().TestBitNumber(imap) ||
-         pair->track2()->Track()->TPCsharing().TestBitNumber(imap))
+      if (pair->Track1()->Track()->TPCsharing().TestBitNumber(imap) &&
+         pair->Track2()->Track()->TPCsharing().TestBitNumber(imap))
        {
          if (Qinv < 0.01) {
            cout << "Shared cluster in row " << imap << endl; 
@@ -157,8 +157,8 @@ void AliFemtoShareQualityCorrFctn::AddRealPair(const AliFemtoPair* pair){
        nh+=2;
       }
     }
-    else if (pair->track1()->Track()->TPCclusters().TestBitNumber(imap) ||
-            pair->track2()->Track()->TPCclusters().TestBitNumber(imap)) {
+    else if (pair->Track1()->Track()->TPCclusters().TestBitNumber(imap) ||
+            pair->Track2()->Track()->TPCclusters().TestBitNumber(imap)) {
       // One track has a hit, the other does not
       an++;
       nh++;
@@ -167,16 +167,16 @@ void AliFemtoShareQualityCorrFctn::AddRealPair(const AliFemtoPair* pair){
   if (Qinv < 0.01) {
     cout << "Qinv of the pair is " << Qinv << endl;
     cout << "Clusters: " << endl;
-    for (unsigned int imap=0; imap<pair->track1()->Track()->TPCclusters().GetNbits(); imap++) {
+    for (unsigned int imap=0; imap<pair->Track1()->Track()->TPCclusters().GetNbits(); imap++) {
       cout << imap ;
-      if (pair->track1()->Track()->TPCclusters().TestBitNumber(imap)) cout << " 1 ";
+      if (pair->Track1()->Track()->TPCclusters().TestBitNumber(imap)) cout << " 1 ";
       else cout << " 0 " ;
-      if (pair->track2()->Track()->TPCclusters().TestBitNumber(imap)) cout << " 1 ";
+      if (pair->Track2()->Track()->TPCclusters().TestBitNumber(imap)) cout << " 1 ";
       else cout << " 0 " ;
       cout << "     ";
-      if (pair->track1()->Track()->TPCsharing().TestBitNumber(imap)) cout << " S ";
+      if (pair->Track1()->Track()->TPCsharing().TestBitNumber(imap)) cout << " S ";
       else cout << " X ";
-      if (pair->track2()->Track()->TPCsharing().TestBitNumber(imap)) cout << " S ";
+      if (pair->Track2()->Track()->TPCsharing().TestBitNumber(imap)) cout << " S ";
       else cout << " X ";
       cout << endl;
     }
@@ -191,29 +191,29 @@ void AliFemtoShareQualityCorrFctn::AddRealPair(const AliFemtoPair* pair){
   }
 
   if (Qinv < 0.01) {
-    cout << "Quality  Sharity " << hsmval << " " << hsfval << " " << pair->track1()->Track() << " " << pair->track2()->Track() << endl;
+    cout << "Quality  Sharity " << hsmval << " " << hsfval << " " << pair->Track1()->Track() << " " << pair->Track2()->Track() << endl;
   }
 
   fShareNumerator->Fill(Qinv, hsfval);
   fQualityNumerator->Fill(Qinv, hsmval);
   //  cout << "AliFemtoShareQualityCorrFctn::AddRealPair : " << pair->qInv() << " " << Qinv <<
-  //" " << pair->track1().FourMomentum() << " " << pair->track2().FourMomentum() << endl;
+  //" " << pair->Track1().FourMomentum() << " " << pair->Track2().FourMomentum() << endl;
 }
 //____________________________
-void AliFemtoShareQualityCorrFctn::AddMixedPair(const AliFemtoPair* pair){
+void AliFemtoShareQualityCorrFctn::AddMixedPair( AliFemtoPair* pair){
   double weight = 1.0;
-  double Qinv = fabs(pair->qInv());   // note - qInv() will be negative for identical pairs...
+  double Qinv = fabs(pair->QInv());   // note - qInv() will be negative for identical pairs...
   Int_t nh = 0;
   Int_t an = 0;
   Int_t ns = 0;
   
-  for (unsigned int imap=0; imap<pair->track1()->Track()->TPCclusters().GetNbits(); imap++) {
+  for (unsigned int imap=0; imap<pair->Track1()->Track()->TPCclusters().GetNbits(); imap++) {
     // If both have clusters in the same row
-    if (pair->track1()->Track()->TPCclusters().TestBitNumber(imap) && 
-       pair->track2()->Track()->TPCclusters().TestBitNumber(imap)) {
+    if (pair->Track1()->Track()->TPCclusters().TestBitNumber(imap) && 
+       pair->Track2()->Track()->TPCclusters().TestBitNumber(imap)) {
       // Do they share it ?
-      if (pair->track1()->Track()->TPCsharing().TestBitNumber(imap) ||
-         pair->track2()->Track()->TPCsharing().TestBitNumber(imap))
+      if (pair->Track1()->Track()->TPCsharing().TestBitNumber(imap) ||
+         pair->Track2()->Track()->TPCsharing().TestBitNumber(imap))
        {
          //      cout << "A shared cluster !!!" << endl;
          //    cout << "imap idx1 idx2 " 
@@ -230,8 +230,8 @@ void AliFemtoShareQualityCorrFctn::AddMixedPair(const AliFemtoPair* pair){
        nh+=2;
       }
     }
-    else if (pair->track1()->Track()->TPCclusters().TestBitNumber(imap) ||
-            pair->track2()->Track()->TPCclusters().TestBitNumber(imap)) {
+    else if (pair->Track1()->Track()->TPCclusters().TestBitNumber(imap) ||
+            pair->Track2()->Track()->TPCclusters().TestBitNumber(imap)) {
       // One track has a hit, the other does not
       an++;
       nh++;
@@ -11,7 +11,7 @@
 
 #include "TH1D.h"
 #include "TH2D.h"
-#include "Base/AliFemtoCorrFctn.h"
+#include "AliFemtoCorrFctn.h"
 
 class AliFemtoShareQualityCorrFctn : public AliFemtoCorrFctn {
 public:
@@ -22,8 +22,8 @@ public:
   AliFemtoShareQualityCorrFctn& operator=(const AliFemtoShareQualityCorrFctn& aCorrFctn);
 
   virtual AliFemtoString Report();
-  virtual void AddRealPair(const AliFemtoPair*);
-  virtual void AddMixedPair(const AliFemtoPair*);
+  virtual void AddRealPair(AliFemtoPair*);
+  virtual void AddMixedPair(AliFemtoPair*);
 
   virtual void Finish();
 
@@ -40,13 +40,13 @@ bool AliFemtoShareQualityPairCut::Pass(const AliFemtoPair* pair){
   Int_t an = 0;
   Int_t ns = 0;
   
-  for (unsigned int imap=0; imap<pair->track1()->Track()->TPCclusters().GetNbits(); imap++) {
+  for (unsigned int imap=0; imap<pair->Track1()->Track()->TPCclusters().GetNbits(); imap++) {
     // If both have clusters in the same row
-    if (pair->track1()->Track()->TPCclusters().TestBitNumber(imap) && 
-       pair->track2()->Track()->TPCclusters().TestBitNumber(imap)) {
+    if (pair->Track1()->Track()->TPCclusters().TestBitNumber(imap) && 
+       pair->Track2()->Track()->TPCclusters().TestBitNumber(imap)) {
       // Do they share it ?
-      if (pair->track1()->Track()->TPCsharing().TestBitNumber(imap) &&
-         pair->track2()->Track()->TPCsharing().TestBitNumber(imap))
+      if (pair->Track1()->Track()->TPCsharing().TestBitNumber(imap) &&
+         pair->Track2()->Track()->TPCsharing().TestBitNumber(imap))
        {
          //      cout << "A shared cluster !!!" << endl;
          //    cout << "imap idx1 idx2 " 
@@ -63,8 +63,8 @@ bool AliFemtoShareQualityPairCut::Pass(const AliFemtoPair* pair){
        nh+=2;
       }
     }
-    else if (pair->track1()->Track()->TPCclusters().TestBitNumber(imap) ||
-            pair->track2()->Track()->TPCclusters().TestBitNumber(imap)) {
+    else if (pair->Track1()->Track()->TPCclusters().TestBitNumber(imap) ||
+            pair->Track2()->Track()->TPCclusters().TestBitNumber(imap)) {
       // One track has a hit, the other does not
       an++;
       nh++;
@@ -80,9 +80,9 @@ bool AliFemtoShareQualityPairCut::Pass(const AliFemtoPair* pair){
   }
   //  if (hsmval > -0.4) {
   cout << "Pair quality: " << hsmval << " " << an << " " << nh << " " 
-       << (pair->track1()->Track()) << " " 
-       << (pair->track2()->Track()) << endl;
-  cout << "Bits: " << pair->track1()->Track()->TPCclusters().GetNbits() << endl;
+       << (pair->Track1()->Track()) << " " 
+       << (pair->Track2()->Track()) << endl;
+  cout << "Bits: " << pair->Track1()->Track()->TPCclusters().GetNbits() << endl;
     //  }
   if (hsfval > 0.0) {
     cout << "Pair sharity: " << hsfval << " " << ns << " " << nh << "    " << hsmval << " " << an << " " << nh << endl;
@@ -22,7 +22,7 @@
 //#include "StMaker.h"
 //#endif
 
-#include "Base/AliFemtoPairCut.h"
+#include "AliFemtoPairCut.h"
 
 class AliFemtoShareQualityPairCut : public AliFemtoPairCut{
 public: