ROOT logo
//
// *** Configuration script for delta(++), delta(--) and delta(0) analysis with 2010 runs ***
// 
// A configuration script for RSN package needs to define the followings:
//
// (1) decay tree of each resonance to be studied, which is needed to select
//     true pairs and to assign the right mass to all candidate daughters
// (2) cuts at all levels: single daughters, tracks, events
// (3) output objects: histograms or trees
//
Bool_t ConfigDeltaPP7TeV
(  
   AliRsnMiniAnalysisTask *task, 
   Bool_t                  isMC, 
   const char             *suffix,
   AliRsnCutSet           *cutsPair
)
{
   // manage suffix
   if (strlen(suffix) > 0) suffix = Form("_%s", suffix);


   // integrated pion cut TOF
   AliRsnCutDelta *cutPiTOF = new AliRsnCutDelta("cutPionTOF",AliPID::kPion,kFALSE);
   // cut set TOF
   AliRsnCutSet *cutSetPiTOF = new AliRsnCutSet("setPionForDeltaTOF", AliRsnTarget::kDaughter);
   cutSetPiTOF->AddCut(cutPiTOF);
   cutSetPiTOF->SetCutScheme(cutPiTOF->GetName());   
   // add to task TOF
   Int_t iCutPiTOF = task->AddTrackCuts(cutSetPiTOF);
   
   // integrated proton cut TOF
   AliRsnCutDelta *cutPTOF = new AliRsnCutDelta("cutProtonTOF",AliPID::kProton,kFALSE);
   // cut set TOF
   AliRsnCutSet *cutSetPTOF = new AliRsnCutSet("setProtonForDeltaTOF", AliRsnTarget::kDaughter);
   cutSetPTOF->AddCut(cutPTOF);
   cutSetPTOF->SetCutScheme(cutPTOF->GetName());
   // add to task TOF
   Int_t iCutPTOF = task->AddTrackCuts(cutSetPTOF);

/////////////////////////////////////////////////////SYSTEMATICS
 
   AliRsnCutDelta *cutPiTOF1 = new AliRsnCutDelta("cutPionTOF1",AliPID::kPion,kFALSE);
   cutPiTOF1->SetTPCNSigmaProton(2.0);
   cutPiTOF1->SetTPCNSigmaPion(3.0);
   cutPiTOF1->SetTOFNSigmaProton(2.0);
   cutPiTOF1->SetTOFNSigmaPion(3.0);
   AliRsnCutSet *cutSetPiTOF1 = new AliRsnCutSet("setPionForDeltaTOF1", AliRsnTarget::kDaughter);
   cutSetPiTOF1->AddCut(cutPiTOF1);
   cutSetPiTOF1->SetCutScheme(cutPiTOF1->GetName());
   Int_t iCutPiTOF1 = task->AddTrackCuts(cutSetPiTOF1);

   AliRsnCutDelta *cutPTOF1 = new AliRsnCutDelta("cutProtonTOF1",AliPID::kProton,kFALSE);
   cutPTOF1->SetTPCNSigmaProton(2.0);
   cutPTOF1->SetTPCNSigmaPion(3.0);
   cutPTOF1->SetTOFNSigmaProton(2.0);
   cutPTOF1->SetTOFNSigmaPion(3.0);
   AliRsnCutSet *cutSetPTOF1 = new AliRsnCutSet("setProtonForDeltaTOF1", AliRsnTarget::kDaughter);
   cutSetPTOF1->AddCut(cutPTOF1);
   cutSetPTOF1->SetCutScheme(cutPTOF1->GetName());
   Int_t iCutPTOF1 = task->AddTrackCuts(cutSetPTOF1);

   AliRsnCutDelta *cutPiTOF2 = new AliRsnCutDelta("cutPionTOF2",AliPID::kPion,kFALSE);
   cutPiTOF2->SetTPCNSigmaProton(3.0);
   cutPiTOF2->SetTPCNSigmaPion(2.0);
   cutPiTOF2->SetTOFNSigmaProton(3.0);
   cutPiTOF2->SetTOFNSigmaPion(2.0);
   AliRsnCutSet *cutSetPiTOF2 = new AliRsnCutSet("setPionForDeltaTOF2", AliRsnTarget::kDaughter);
   cutSetPiTOF2->AddCut(cutPiTOF2);
   cutSetPiTOF2->SetCutScheme(cutPiTOF2->GetName());
   Int_t iCutPiTOF2 = task->AddTrackCuts(cutSetPiTOF2);

   AliRsnCutDelta *cutPTOF2 = new AliRsnCutDelta("cutProtonTOF2",AliPID::kProton,kFALSE);
   cutPTOF2->SetTPCNSigmaProton(3.0);
   cutPTOF2->SetTPCNSigmaPion(2.0);
   cutPTOF2->SetTOFNSigmaProton(3.0);
   cutPTOF2->SetTOFNSigmaPion(2.0);
   AliRsnCutSet *cutSetPTOF2 = new AliRsnCutSet("setProtonForDeltaTOF2", AliRsnTarget::kDaughter);
   cutSetPTOF2->AddCut(cutPTOF2);
   cutSetPTOF2->SetCutScheme(cutPTOF2->GetName());
   Int_t iCutPTOF2 = task->AddTrackCuts(cutSetPTOF2); 

   AliRsnCutDelta *cutPiTOF3 = new AliRsnCutDelta("cutPionTOF3",AliPID::kPion,kFALSE);
   cutPiTOF3->SetTPCNSigmaProton(4.0);
   cutPiTOF3->SetTPCNSigmaPion(3.0);
   cutPiTOF3->SetTOFNSigmaProton(4.0);
   cutPiTOF3->SetTOFNSigmaPion(3.0);
   AliRsnCutSet *cutSetPiTOF3 = new AliRsnCutSet("setPionForDeltaTOF3", AliRsnTarget::kDaughter);
   cutSetPiTOF3->AddCut(cutPiTOF3);
   cutSetPiTOF3->SetCutScheme(cutPiTOF3->GetName());
   Int_t iCutPiTOF3 = task->AddTrackCuts(cutSetPiTOF3);

   AliRsnCutDelta *cutPTOF3 = new AliRsnCutDelta("cutProtonTOF3",AliPID::kProton,kFALSE);
   cutPiTOF3->SetTPCNSigmaProton(4.0);
   cutPiTOF3->SetTPCNSigmaPion(3.0);
   cutPiTOF3->SetTOFNSigmaProton(4.0);
   cutPiTOF3->SetTOFNSigmaPion(3.0);
   AliRsnCutSet *cutSetPTOF3 = new AliRsnCutSet("setProtonForDeltaTOF3", AliRsnTarget::kDaughter);
   cutSetPTOF3->AddCut(cutPTOF3);
   cutSetPTOF3->SetCutScheme(cutPTOF3->GetName());
   Int_t iCutPTOF3 = task->AddTrackCuts(cutSetPTOF3); 

   AliRsnCutDelta *cutPiTOF4 = new AliRsnCutDelta("cutPionTOF4",AliPID::kPion,kFALSE);
   cutPiTOF4->SetTPCNSigmaProton(3.0);
   cutPiTOF4->SetTPCNSigmaPion(4.0);
   cutPiTOF4->SetTOFNSigmaProton(3.0);
   cutPiTOF4->SetTOFNSigmaPion(4.0);
   AliRsnCutSet *cutSetPiTOF4 = new AliRsnCutSet("setPionForDeltaTOF4", AliRsnTarget::kDaughter);
   cutSetPiTOF4->AddCut(cutPiTOF4);
   cutSetPiTOF4->SetCutScheme(cutPiTOF4->GetName());
   Int_t iCutPiTOF4 = task->AddTrackCuts(cutSetPiTOF4);

   AliRsnCutDelta *cutPTOF4 = new AliRsnCutDelta("cutProtonTOF4",AliPID::kProton,kFALSE);
   cutPTOF4->SetTPCNSigmaProton(3.0);
   cutPTOF4->SetTPCNSigmaPion(4.0);
   cutPTOF4->SetTOFNSigmaProton(3.0);
   cutPTOF4->SetTOFNSigmaPion(4.0);
   AliRsnCutSet *cutSetPTOF4 = new AliRsnCutSet("setProtonForDeltaTOF4", AliRsnTarget::kDaughter);
   cutSetPTOF4->AddCut(cutPTOF4);
   cutSetPTOF4->SetCutScheme(cutPTOF4->GetName());
   Int_t iCutPTOF4 = task->AddTrackCuts(cutSetPTOF4);

   AliRsnCutDelta *cutPiTOF5 = new AliRsnCutDelta("cutPionTOF5",AliPID::kPion,kFALSE);
   cutPiTOF5->SetTOFMomProton(2.3);
   AliRsnCutSet *cutSetPiTOF5 = new AliRsnCutSet("setPionForDeltaTOF5", AliRsnTarget::kDaughter);
   cutSetPiTOF5->AddCut(cutPiTOF5);
   cutSetPiTOF5->SetCutScheme(cutPiTOF5->GetName());
   Int_t iCutPiTOF5 = task->AddTrackCuts(cutSetPiTOF5);

   AliRsnCutDelta *cutPTOF5 = new AliRsnCutDelta("cutProtonTOF5",AliPID::kProton,kFALSE);
   cutPTOF5->SetTOFMomProton(2.3);
   AliRsnCutSet *cutSetPTOF5 = new AliRsnCutSet("setProtonForDeltaTOF5", AliRsnTarget::kDaughter);
   cutSetPTOF5->AddCut(cutPTOF5);
   cutSetPTOF5->SetCutScheme(cutPTOF5->GetName());
   Int_t iCutPTOF5 = task->AddTrackCuts(cutSetPTOF5);

   AliRsnCutDelta *cutPiTOF6 = new AliRsnCutDelta("cutPionTOF6",AliPID::kPion,kFALSE);
   cutPiTOF6->SetTOFMomProton(2.7);
   AliRsnCutSet *cutSetPiTOF6 = new AliRsnCutSet("setPionForDeltaTOF6", AliRsnTarget::kDaughter);
   cutSetPiTOF6->AddCut(cutPiTOF6);
   cutSetPiTOF6->SetCutScheme(cutPiTOF6->GetName());
   Int_t iCutPiTOF6 = task->AddTrackCuts(cutSetPiTOF6);

   AliRsnCutDelta *cutPTOF6 = new AliRsnCutDelta("cutProtonTOF6",AliPID::kProton,kFALSE);
   cutPTOF6->SetTOFMomProton(2.7);
   AliRsnCutSet *cutSetPTOF6 = new AliRsnCutSet("setProtonForDeltaTOF6", AliRsnTarget::kDaughter);
   cutSetPTOF6->AddCut(cutPTOF6);
   cutSetPTOF6->SetCutScheme(cutPTOF6->GetName());
   Int_t iCutPTOF6 = task->AddTrackCuts(cutSetPTOF6);

/////////////////////////////////////////////////////SYSTEMATICS END


   
   //
   // -- Values ------------------------------------------------------------------------------------
   //
//CreateValue(AliRsnMiniValue::EType type, Bool_t useMC = kFALSE); 

   /* IM resolution    */ Int_t resID  = task->CreateValue(AliRsnMiniValue::kInvMassRes, kTRUE);
   /* invariant mass   */ Int_t imID   = task->CreateValue(AliRsnMiniValue::kInvMass, kFALSE);
   /* transv. momentum */ Int_t ptID   = task->CreateValue(AliRsnMiniValue::kPt, kFALSE);
   /* centrality       */ Int_t centID = task->CreateValue(AliRsnMiniValue::kMult, kFALSE);


   /* 1st daughter pt  */ Int_t fdpt   = task->CreateValue(AliRsnMiniValue::kFirstDaughterPt  , kFALSE);
   /* 2nd daughter pt  */ Int_t sdpt   = task->CreateValue(AliRsnMiniValue::kSecondDaughterPt , kFALSE);
   /* 1st daughter p   */ Int_t fdp    = task->CreateValue(AliRsnMiniValue::kFirstDaughterP   , kFALSE);
   /* 2nd daughter p   */ Int_t sdp    = task->CreateValue(AliRsnMiniValue::kSecondDaughterP  , kFALSE);
   
   /* pseudorapidity   */ Int_t etaID  = task->CreateValue(AliRsnMiniValue::kEta , kFALSE);
   /* rapidity         */ Int_t yID    = task->CreateValue(AliRsnMiniValue::kY   , kFALSE);


   
   //
   // -- Create all needed outputs -----------------------------------------------------------------
   //
   
   // use an array for more compact writing, which are different on mixing and charges
   // [0] = unlike
   // [1] = mixing
   // [2] = like ++
   // [3] = like --
      
   Bool_t  use      [12] = { 1       	,  1          ,  1         ,  1         ,  1         ,  1         ,  isMC       ,   isMC       ,  1          ,   1         ,  isMC       ,   isMC         };
   Bool_t  useIM    [12] = { 1       	,  1          ,  1         ,  1         ,  1         ,  1         ,  1          ,   1          ,  1          ,   1         ,  1          ,   1            };
   TString name     [12] = {"UnlikePM"	, "UnlikeMP"  , "MixingPM" , "MixingMP" , "LikePP"   , "LikeMM"   , "TruesPP"   ,  "TruesMM"   , "MixingPP"  ,  "MixingMM" , "TRUESPM"   ,  "TRUESMP"     };
   TString comp     [12] = {"PAIR"   	, "PAIR"      , "MIX"      , "MIX"      , "PAIR"     , "PAIR"     , "TRUE"      ,  "TRUE"      , "MIX"       ,  "MIX"      , "TRUE"      ,  "TRUE"        };
   TString output   [12] = {"SPARSE"   	, "SPARSE"    , "SPARSE"   , "SPARSE"   , "SPARSE"   , "SPARSE"   , "SPARSE"    ,  "SPARSE"    , "SPARSE"    ,  "SPARSE"   , "SPARSE"    ,  "SPARSE"      };
   Char_t  charge1  [12] = {'+'      	, '-'         , '+'        , '-'        , '+'        , '-'        , '+'         ,  '-'         , '+'         ,  '-'        , '+'         ,  '-'           };
   Char_t  charge2  [12] = {'-'      	, '+'         , '-'        , '+'        , '+'        , '-'        , '+'         ,  '-'         , '+'         ,  '-'        , '-'         ,  '+'           };
   Int_t   cutID1   [12] = {iCutPTOF    , iCutPTOF    , iCutPTOF   , iCutPTOF   , iCutPTOF   , iCutPTOF   , iCutPTOF    ,  iCutPTOF    , iCutPTOF    ,  iCutPTOF   , iCutPTOF    ,  iCutPTOF      };
   Int_t   cutID2   [12] = {iCutPiTOF   , iCutPiTOF   , iCutPiTOF  , iCutPiTOF  , iCutPiTOF  , iCutPiTOF  , iCutPiTOF   ,  iCutPiTOF   , iCutPiTOF   ,  iCutPiTOF  , iCutPiTOF   ,  iCutPiTOF     };
   Int_t   cutID3   [12] = {iCutPTOF1 	, iCutPTOF1   , iCutPTOF1  , iCutPTOF1  , iCutPTOF1  , iCutPTOF1  , iCutPTOF1   ,  iCutPTOF1   , iCutPTOF1   ,  iCutPTOF1  , iCutPTOF1   ,  iCutPTOF1     };
   Int_t   cutID4   [12] = {iCutPiTOF1	, iCutPiTOF1  , iCutPiTOF1 , iCutPiTOF1 , iCutPiTOF1 , iCutPiTOF1 , iCutPiTOF1  ,  iCutPiTOF1  , iCutPiTOF1  ,  iCutPiTOF1 , iCutPiTOF1  ,  iCutPiTOF1    };
   Int_t   cutID5   [12] = {iCutPTOF2 	, iCutPTOF2   , iCutPTOF2  , iCutPTOF2  , iCutPTOF2  , iCutPTOF2  , iCutPTOF2   ,  iCutPTOF2   , iCutPTOF2   ,  iCutPTOF2  , iCutPTOF2   ,  iCutPTOF2     };
   Int_t   cutID6   [12] = {iCutPiTOF2	, iCutPiTOF2  , iCutPiTOF2 , iCutPiTOF2 , iCutPiTOF2 , iCutPiTOF2 , iCutPiTOF2  ,  iCutPiTOF2  , iCutPiTOF2  ,  iCutPiTOF2 , iCutPiTOF2  ,  iCutPiTOF2    };
   Int_t   cutID7   [12] = {iCutPTOF3 	, iCutPTOF3   , iCutPTOF3  , iCutPTOF3  , iCutPTOF3  , iCutPTOF3  , iCutPTOF3   ,  iCutPTOF3   , iCutPTOF3   ,  iCutPTOF3  , iCutPTOF3   ,  iCutPTOF3     };
   Int_t   cutID8   [12] = {iCutPiTOF3	, iCutPiTOF3  , iCutPiTOF3 , iCutPiTOF3 , iCutPiTOF3 , iCutPiTOF3 , iCutPiTOF3  ,  iCutPiTOF3  , iCutPiTOF3  ,  iCutPiTOF3 , iCutPiTOF3  ,  iCutPiTOF3    };
   Int_t   cutID9   [12] = {iCutPTOF4 	, iCutPTOF4   , iCutPTOF4  , iCutPTOF4  , iCutPTOF4  , iCutPTOF4  , iCutPTOF4   ,  iCutPTOF4   , iCutPTOF4   ,  iCutPTOF4  , iCutPTOF4   ,  iCutPTOF4     };
   Int_t   cutID10  [12] = {iCutPiTOF4	, iCutPiTOF4  , iCutPiTOF4 , iCutPiTOF4 , iCutPiTOF4 , iCutPiTOF4 , iCutPiTOF4  ,  iCutPiTOF4  , iCutPiTOF4  ,  iCutPiTOF4 , iCutPiTOF4  ,  iCutPiTOF4    };
   Int_t   cutID11  [12] = {iCutPTOF5 	, iCutPTOF5   , iCutPTOF5  , iCutPTOF5  , iCutPTOF5  , iCutPTOF5  , iCutPTOF5   ,  iCutPTOF5   , iCutPTOF5   ,  iCutPTOF5  , iCutPTOF5   ,  iCutPTOF5     };
   Int_t   cutID12  [12] = {iCutPiTOF5	, iCutPiTOF5  , iCutPiTOF5 , iCutPiTOF5 , iCutPiTOF5 , iCutPiTOF5 , iCutPiTOF5  ,  iCutPiTOF5  , iCutPiTOF5  ,  iCutPiTOF5 , iCutPiTOF5  ,  iCutPiTOF5    };
   Int_t   cutID13  [12] = {iCutPTOF6 	, iCutPTOF6   , iCutPTOF6  , iCutPTOF6  , iCutPTOF6  , iCutPTOF6  , iCutPTOF6   ,  iCutPTOF6   , iCutPTOF6   ,  iCutPTOF6  , iCutPTOF6   ,  iCutPTOF6     };
   Int_t   cutID14  [12] = {iCutPiTOF6	, iCutPiTOF6  , iCutPiTOF6 , iCutPiTOF6 , iCutPiTOF6 , iCutPiTOF6 , iCutPiTOF6  ,  iCutPiTOF6  , iCutPiTOF6  ,  iCutPiTOF6 , iCutPiTOF6  ,  iCutPiTOF6    };
   Int_t   ipdg     [12] = {2114        , -2114       , 2114       , -2114      , 2224       , -2224      , 2224        ,  -2224       , 2224        ,   -2224     , 2114        ,  -2114         };
   
   

   for (Int_t i = 0; i < 12; i++) {
      if (!use[i]) continue;
 
       AliRsnMiniOutput *outTOF = task->CreateOutput(Form("deltatof_%s%s", name[i].Data(), suffix), output[i].Data(), comp[i].Data());
      // selection settings
      outTOF->SetCutID(0, cutID1[i]);
      outTOF->SetCutID(1, cutID2[i]);
      outTOF->SetDaughter(0, AliRsnDaughter::kProton);
      outTOF->SetDaughter(1, AliRsnDaughter::kPion);
      outTOF->SetCharge(0, charge1[i]);
      outTOF->SetCharge(1, charge2[i]);
      outTOF->SetMotherPDG(ipdg[i]);
      outTOF->SetMotherMass(1.232);
      // pair cuts
      outTOF->SetPairCuts(cutsPair);
      // axis X: invmass (or resolution)
      if (useIM[i])
         outTOF->AddAxis(imID, 100, 1.0, 2.0);
      else
         outTOF->AddAxis(resID, 200, -0.02, 0.02);
      // axis Y: transverse momentum
      outTOF->AddAxis(ptID, 100, 0.0, 10.0);
     // axis Z: Multiplicity
      outTOF->AddAxis( centID , 120 , 0.0, 120  ); 
      
      outTOF->AddAxis( fdpt   , 100 , 0.0, 10.0 ); 
      outTOF->AddAxis( sdpt   , 100 , 0.0, 10.0 ); 
      outTOF->AddAxis( fdp    , 100 , 0.0, 10.0 ); 
      outTOF->AddAxis( sdp    , 100 , 0.0, 10.0 ); 
      outTOF->AddAxis( etaID  , 20  ,-1.0, 1.0  );
      outTOF->AddAxis( yID    , 10  ,-0.5, 0.5 ); 
 
 
 
      AliRsnMiniOutput *outTOF1 = task->CreateOutput(Form("config1deltatof_%s%s", name[i].Data(), suffix), output[i].Data(), comp[i].Data());
      outTOF1->SetCutID(0, cutID3[i]);
      outTOF1->SetCutID(1, cutID4[i]);
      outTOF1->SetDaughter(0, AliRsnDaughter::kProton);
      outTOF1->SetDaughter(1, AliRsnDaughter::kPion);
      outTOF1->SetCharge(0, charge1[i]);
      outTOF1->SetCharge(1, charge2[i]);
      outTOF1->SetMotherPDG(ipdg[i]);
      outTOF1->SetMotherMass(1.232);
      outTOF1->SetPairCuts(cutsPair);
      if (useIM[i])
         outTOF1->AddAxis(imID, 100, 1.0, 2.0);
      else
         outTOF1->AddAxis(resID, 200, -0.02, 0.02);
      outTOF1->AddAxis(ptID, 100, 0.0, 10.0);
      outTOF1->AddAxis(centID, 120, 0.0, 120); 


      AliRsnMiniOutput *outTOF2 = task->CreateOutput(Form("config2deltatof_%s%s", name[i].Data(), suffix), output[i].Data(), comp[i].Data());
      outTOF2->SetCutID(0, cutID5[i]);
      outTOF2->SetCutID(1, cutID6[i]);
      outTOF2->SetDaughter(0, AliRsnDaughter::kProton);
      outTOF2->SetDaughter(1, AliRsnDaughter::kPion);
      outTOF2->SetCharge(0, charge1[i]);
      outTOF2->SetCharge(1, charge2[i]);
      outTOF2->SetMotherPDG(ipdg[i]);
      outTOF2->SetMotherMass(1.232);
      outTOF2->SetPairCuts(cutsPair);
      if (useIM[i])
         outTOF2->AddAxis(imID, 100, 1.0, 2.0);
      else
         outTOF2->AddAxis(resID, 200, -0.02, 0.02);
      outTOF2->AddAxis(ptID, 100, 0.0, 10.0);
      outTOF2->AddAxis(centID, 120, 0.0, 120);


      AliRsnMiniOutput *outTOF3 = task->CreateOutput(Form("config3deltatof_%s%s", name[i].Data(), suffix), output[i].Data(), comp[i].Data());
      outTOF3->SetCutID(0, cutID7[i]);
      outTOF3->SetCutID(1, cutID8[i]);
      outTOF3->SetDaughter(0, AliRsnDaughter::kProton);
      outTOF3->SetDaughter(1, AliRsnDaughter::kPion);
      outTOF3->SetCharge(0, charge1[i]);
      outTOF3->SetCharge(1, charge2[i]);
      outTOF3->SetMotherPDG(ipdg[i]);
      outTOF3->SetMotherMass(1.232);
      outTOF3->SetPairCuts(cutsPair);
      if (useIM[i])
         outTOF3->AddAxis(imID, 100, 1.0, 2.0);
      else
         outTOF3->AddAxis(resID, 200, -0.02, 0.02);
      outTOF3->AddAxis(ptID, 100, 0.0, 10.0);
      outTOF3->AddAxis(centID, 120, 0.0, 120);


      AliRsnMiniOutput *outTOF4 = task->CreateOutput(Form("config4deltatof_%s%s", name[i].Data(), suffix), output[i].Data(), comp[i].Data());
      outTOF4->SetCutID(0, cutID9[i]);
      outTOF4->SetCutID(1, cutID10[i]);
      outTOF4->SetDaughter(0, AliRsnDaughter::kProton);
      outTOF4->SetDaughter(1, AliRsnDaughter::kPion);
      outTOF4->SetCharge(0, charge1[i]);
      outTOF4->SetCharge(1, charge2[i]);
      outTOF4->SetMotherPDG(ipdg[i]);
      outTOF4->SetMotherMass(1.232);
      outTOF4->SetPairCuts(cutsPair);
      if (useIM[i])
         outTOF4->AddAxis(imID, 100, 1.0, 2.0);
      else
         outTOF4->AddAxis(resID, 200, -0.02, 0.02);
      outTOF4->AddAxis(ptID, 100, 0.0, 10.0);
      outTOF4->AddAxis(centID, 120, 0.0, 120);


      AliRsnMiniOutput *outTOF5 = task->CreateOutput(Form("config5deltatof_%s%s", name[i].Data(), suffix), output[i].Data(), comp[i].Data());
      outTOF5->SetCutID(0, cutID11[i]);
      outTOF5->SetCutID(1, cutID12[i]);
      outTOF5->SetDaughter(0, AliRsnDaughter::kProton);
      outTOF5->SetDaughter(1, AliRsnDaughter::kPion);
      outTOF5->SetCharge(0, charge1[i]);
      outTOF5->SetCharge(1, charge2[i]);
      outTOF5->SetMotherPDG(ipdg[i]);
      outTOF5->SetMotherMass(1.232);
      outTOF5->SetPairCuts(cutsPair);
      if (useIM[i])
         outTOF5->AddAxis(imID, 100, 1.0, 2.0);
      else
         outTOF5->AddAxis(resID, 200, -0.02, 0.02);
      outTOF5->AddAxis(ptID, 100, 0.0, 10.0);
      outTOF5->AddAxis(centID, 120, 0.0, 120);

      AliRsnMiniOutput *outTOF6 = task->CreateOutput(Form("config6deltatof_%s%s", name[i].Data(), suffix), output[i].Data(), comp[i].Data());
      outTOF6->SetCutID(0, cutID13[i]);
      outTOF6->SetCutID(1, cutID14[i]);
      outTOF6->SetDaughter(0, AliRsnDaughter::kProton);
      outTOF6->SetDaughter(1, AliRsnDaughter::kPion);
      outTOF6->SetCharge(0, charge1[i]);
      outTOF6->SetCharge(1, charge2[i]);
      outTOF6->SetMotherPDG(ipdg[i]);
      outTOF6->SetMotherMass(1.232);
      outTOF6->SetPairCuts(cutsPair);
      if (useIM[i])
         outTOF6->AddAxis(imID, 100, 1.0, 2.0);
      else
         outTOF6->AddAxis(resID, 200, -0.02, 0.02);
      outTOF6->AddAxis(ptID, 100, 0.0, 10.0);
      outTOF6->AddAxis(centID, 120, 0.0, 120);

   }
   
   return kTRUE;
}
 ConfigDeltaPP7TeV.C:1
 ConfigDeltaPP7TeV.C:2
 ConfigDeltaPP7TeV.C:3
 ConfigDeltaPP7TeV.C:4
 ConfigDeltaPP7TeV.C:5
 ConfigDeltaPP7TeV.C:6
 ConfigDeltaPP7TeV.C:7
 ConfigDeltaPP7TeV.C:8
 ConfigDeltaPP7TeV.C:9
 ConfigDeltaPP7TeV.C:10
 ConfigDeltaPP7TeV.C:11
 ConfigDeltaPP7TeV.C:12
 ConfigDeltaPP7TeV.C:13
 ConfigDeltaPP7TeV.C:14
 ConfigDeltaPP7TeV.C:15
 ConfigDeltaPP7TeV.C:16
 ConfigDeltaPP7TeV.C:17
 ConfigDeltaPP7TeV.C:18
 ConfigDeltaPP7TeV.C:19
 ConfigDeltaPP7TeV.C:20
 ConfigDeltaPP7TeV.C:21
 ConfigDeltaPP7TeV.C:22
 ConfigDeltaPP7TeV.C:23
 ConfigDeltaPP7TeV.C:24
 ConfigDeltaPP7TeV.C:25
 ConfigDeltaPP7TeV.C:26
 ConfigDeltaPP7TeV.C:27
 ConfigDeltaPP7TeV.C:28
 ConfigDeltaPP7TeV.C:29
 ConfigDeltaPP7TeV.C:30
 ConfigDeltaPP7TeV.C:31
 ConfigDeltaPP7TeV.C:32
 ConfigDeltaPP7TeV.C:33
 ConfigDeltaPP7TeV.C:34
 ConfigDeltaPP7TeV.C:35
 ConfigDeltaPP7TeV.C:36
 ConfigDeltaPP7TeV.C:37
 ConfigDeltaPP7TeV.C:38
 ConfigDeltaPP7TeV.C:39
 ConfigDeltaPP7TeV.C:40
 ConfigDeltaPP7TeV.C:41
 ConfigDeltaPP7TeV.C:42
 ConfigDeltaPP7TeV.C:43
 ConfigDeltaPP7TeV.C:44
 ConfigDeltaPP7TeV.C:45
 ConfigDeltaPP7TeV.C:46
 ConfigDeltaPP7TeV.C:47
 ConfigDeltaPP7TeV.C:48
 ConfigDeltaPP7TeV.C:49
 ConfigDeltaPP7TeV.C:50
 ConfigDeltaPP7TeV.C:51
 ConfigDeltaPP7TeV.C:52
 ConfigDeltaPP7TeV.C:53
 ConfigDeltaPP7TeV.C:54
 ConfigDeltaPP7TeV.C:55
 ConfigDeltaPP7TeV.C:56
 ConfigDeltaPP7TeV.C:57
 ConfigDeltaPP7TeV.C:58
 ConfigDeltaPP7TeV.C:59
 ConfigDeltaPP7TeV.C:60
 ConfigDeltaPP7TeV.C:61
 ConfigDeltaPP7TeV.C:62
 ConfigDeltaPP7TeV.C:63
 ConfigDeltaPP7TeV.C:64
 ConfigDeltaPP7TeV.C:65
 ConfigDeltaPP7TeV.C:66
 ConfigDeltaPP7TeV.C:67
 ConfigDeltaPP7TeV.C:68
 ConfigDeltaPP7TeV.C:69
 ConfigDeltaPP7TeV.C:70
 ConfigDeltaPP7TeV.C:71
 ConfigDeltaPP7TeV.C:72
 ConfigDeltaPP7TeV.C:73
 ConfigDeltaPP7TeV.C:74
 ConfigDeltaPP7TeV.C:75
 ConfigDeltaPP7TeV.C:76
 ConfigDeltaPP7TeV.C:77
 ConfigDeltaPP7TeV.C:78
 ConfigDeltaPP7TeV.C:79
 ConfigDeltaPP7TeV.C:80
 ConfigDeltaPP7TeV.C:81
 ConfigDeltaPP7TeV.C:82
 ConfigDeltaPP7TeV.C:83
 ConfigDeltaPP7TeV.C:84
 ConfigDeltaPP7TeV.C:85
 ConfigDeltaPP7TeV.C:86
 ConfigDeltaPP7TeV.C:87
 ConfigDeltaPP7TeV.C:88
 ConfigDeltaPP7TeV.C:89
 ConfigDeltaPP7TeV.C:90
 ConfigDeltaPP7TeV.C:91
 ConfigDeltaPP7TeV.C:92
 ConfigDeltaPP7TeV.C:93
 ConfigDeltaPP7TeV.C:94
 ConfigDeltaPP7TeV.C:95
 ConfigDeltaPP7TeV.C:96
 ConfigDeltaPP7TeV.C:97
 ConfigDeltaPP7TeV.C:98
 ConfigDeltaPP7TeV.C:99
 ConfigDeltaPP7TeV.C:100
 ConfigDeltaPP7TeV.C:101
 ConfigDeltaPP7TeV.C:102
 ConfigDeltaPP7TeV.C:103
 ConfigDeltaPP7TeV.C:104
 ConfigDeltaPP7TeV.C:105
 ConfigDeltaPP7TeV.C:106
 ConfigDeltaPP7TeV.C:107
 ConfigDeltaPP7TeV.C:108
 ConfigDeltaPP7TeV.C:109
 ConfigDeltaPP7TeV.C:110
 ConfigDeltaPP7TeV.C:111
 ConfigDeltaPP7TeV.C:112
 ConfigDeltaPP7TeV.C:113
 ConfigDeltaPP7TeV.C:114
 ConfigDeltaPP7TeV.C:115
 ConfigDeltaPP7TeV.C:116
 ConfigDeltaPP7TeV.C:117
 ConfigDeltaPP7TeV.C:118
 ConfigDeltaPP7TeV.C:119
 ConfigDeltaPP7TeV.C:120
 ConfigDeltaPP7TeV.C:121
 ConfigDeltaPP7TeV.C:122
 ConfigDeltaPP7TeV.C:123
 ConfigDeltaPP7TeV.C:124
 ConfigDeltaPP7TeV.C:125
 ConfigDeltaPP7TeV.C:126
 ConfigDeltaPP7TeV.C:127
 ConfigDeltaPP7TeV.C:128
 ConfigDeltaPP7TeV.C:129
 ConfigDeltaPP7TeV.C:130
 ConfigDeltaPP7TeV.C:131
 ConfigDeltaPP7TeV.C:132
 ConfigDeltaPP7TeV.C:133
 ConfigDeltaPP7TeV.C:134
 ConfigDeltaPP7TeV.C:135
 ConfigDeltaPP7TeV.C:136
 ConfigDeltaPP7TeV.C:137
 ConfigDeltaPP7TeV.C:138
 ConfigDeltaPP7TeV.C:139
 ConfigDeltaPP7TeV.C:140
 ConfigDeltaPP7TeV.C:141
 ConfigDeltaPP7TeV.C:142
 ConfigDeltaPP7TeV.C:143
 ConfigDeltaPP7TeV.C:144
 ConfigDeltaPP7TeV.C:145
 ConfigDeltaPP7TeV.C:146
 ConfigDeltaPP7TeV.C:147
 ConfigDeltaPP7TeV.C:148
 ConfigDeltaPP7TeV.C:149
 ConfigDeltaPP7TeV.C:150
 ConfigDeltaPP7TeV.C:151
 ConfigDeltaPP7TeV.C:152
 ConfigDeltaPP7TeV.C:153
 ConfigDeltaPP7TeV.C:154
 ConfigDeltaPP7TeV.C:155
 ConfigDeltaPP7TeV.C:156
 ConfigDeltaPP7TeV.C:157
 ConfigDeltaPP7TeV.C:158
 ConfigDeltaPP7TeV.C:159
 ConfigDeltaPP7TeV.C:160
 ConfigDeltaPP7TeV.C:161
 ConfigDeltaPP7TeV.C:162
 ConfigDeltaPP7TeV.C:163
 ConfigDeltaPP7TeV.C:164
 ConfigDeltaPP7TeV.C:165
 ConfigDeltaPP7TeV.C:166
 ConfigDeltaPP7TeV.C:167
 ConfigDeltaPP7TeV.C:168
 ConfigDeltaPP7TeV.C:169
 ConfigDeltaPP7TeV.C:170
 ConfigDeltaPP7TeV.C:171
 ConfigDeltaPP7TeV.C:172
 ConfigDeltaPP7TeV.C:173
 ConfigDeltaPP7TeV.C:174
 ConfigDeltaPP7TeV.C:175
 ConfigDeltaPP7TeV.C:176
 ConfigDeltaPP7TeV.C:177
 ConfigDeltaPP7TeV.C:178
 ConfigDeltaPP7TeV.C:179
 ConfigDeltaPP7TeV.C:180
 ConfigDeltaPP7TeV.C:181
 ConfigDeltaPP7TeV.C:182
 ConfigDeltaPP7TeV.C:183
 ConfigDeltaPP7TeV.C:184
 ConfigDeltaPP7TeV.C:185
 ConfigDeltaPP7TeV.C:186
 ConfigDeltaPP7TeV.C:187
 ConfigDeltaPP7TeV.C:188
 ConfigDeltaPP7TeV.C:189
 ConfigDeltaPP7TeV.C:190
 ConfigDeltaPP7TeV.C:191
 ConfigDeltaPP7TeV.C:192
 ConfigDeltaPP7TeV.C:193
 ConfigDeltaPP7TeV.C:194
 ConfigDeltaPP7TeV.C:195
 ConfigDeltaPP7TeV.C:196
 ConfigDeltaPP7TeV.C:197
 ConfigDeltaPP7TeV.C:198
 ConfigDeltaPP7TeV.C:199
 ConfigDeltaPP7TeV.C:200
 ConfigDeltaPP7TeV.C:201
 ConfigDeltaPP7TeV.C:202
 ConfigDeltaPP7TeV.C:203
 ConfigDeltaPP7TeV.C:204
 ConfigDeltaPP7TeV.C:205
 ConfigDeltaPP7TeV.C:206
 ConfigDeltaPP7TeV.C:207
 ConfigDeltaPP7TeV.C:208
 ConfigDeltaPP7TeV.C:209
 ConfigDeltaPP7TeV.C:210
 ConfigDeltaPP7TeV.C:211
 ConfigDeltaPP7TeV.C:212
 ConfigDeltaPP7TeV.C:213
 ConfigDeltaPP7TeV.C:214
 ConfigDeltaPP7TeV.C:215
 ConfigDeltaPP7TeV.C:216
 ConfigDeltaPP7TeV.C:217
 ConfigDeltaPP7TeV.C:218
 ConfigDeltaPP7TeV.C:219
 ConfigDeltaPP7TeV.C:220
 ConfigDeltaPP7TeV.C:221
 ConfigDeltaPP7TeV.C:222
 ConfigDeltaPP7TeV.C:223
 ConfigDeltaPP7TeV.C:224
 ConfigDeltaPP7TeV.C:225
 ConfigDeltaPP7TeV.C:226
 ConfigDeltaPP7TeV.C:227
 ConfigDeltaPP7TeV.C:228
 ConfigDeltaPP7TeV.C:229
 ConfigDeltaPP7TeV.C:230
 ConfigDeltaPP7TeV.C:231
 ConfigDeltaPP7TeV.C:232
 ConfigDeltaPP7TeV.C:233
 ConfigDeltaPP7TeV.C:234
 ConfigDeltaPP7TeV.C:235
 ConfigDeltaPP7TeV.C:236
 ConfigDeltaPP7TeV.C:237
 ConfigDeltaPP7TeV.C:238
 ConfigDeltaPP7TeV.C:239
 ConfigDeltaPP7TeV.C:240
 ConfigDeltaPP7TeV.C:241
 ConfigDeltaPP7TeV.C:242
 ConfigDeltaPP7TeV.C:243
 ConfigDeltaPP7TeV.C:244
 ConfigDeltaPP7TeV.C:245
 ConfigDeltaPP7TeV.C:246
 ConfigDeltaPP7TeV.C:247
 ConfigDeltaPP7TeV.C:248
 ConfigDeltaPP7TeV.C:249
 ConfigDeltaPP7TeV.C:250
 ConfigDeltaPP7TeV.C:251
 ConfigDeltaPP7TeV.C:252
 ConfigDeltaPP7TeV.C:253
 ConfigDeltaPP7TeV.C:254
 ConfigDeltaPP7TeV.C:255
 ConfigDeltaPP7TeV.C:256
 ConfigDeltaPP7TeV.C:257
 ConfigDeltaPP7TeV.C:258
 ConfigDeltaPP7TeV.C:259
 ConfigDeltaPP7TeV.C:260
 ConfigDeltaPP7TeV.C:261
 ConfigDeltaPP7TeV.C:262
 ConfigDeltaPP7TeV.C:263
 ConfigDeltaPP7TeV.C:264
 ConfigDeltaPP7TeV.C:265
 ConfigDeltaPP7TeV.C:266
 ConfigDeltaPP7TeV.C:267
 ConfigDeltaPP7TeV.C:268
 ConfigDeltaPP7TeV.C:269
 ConfigDeltaPP7TeV.C:270
 ConfigDeltaPP7TeV.C:271
 ConfigDeltaPP7TeV.C:272
 ConfigDeltaPP7TeV.C:273
 ConfigDeltaPP7TeV.C:274
 ConfigDeltaPP7TeV.C:275
 ConfigDeltaPP7TeV.C:276
 ConfigDeltaPP7TeV.C:277
 ConfigDeltaPP7TeV.C:278
 ConfigDeltaPP7TeV.C:279
 ConfigDeltaPP7TeV.C:280
 ConfigDeltaPP7TeV.C:281
 ConfigDeltaPP7TeV.C:282
 ConfigDeltaPP7TeV.C:283
 ConfigDeltaPP7TeV.C:284
 ConfigDeltaPP7TeV.C:285
 ConfigDeltaPP7TeV.C:286
 ConfigDeltaPP7TeV.C:287
 ConfigDeltaPP7TeV.C:288
 ConfigDeltaPP7TeV.C:289
 ConfigDeltaPP7TeV.C:290
 ConfigDeltaPP7TeV.C:291
 ConfigDeltaPP7TeV.C:292
 ConfigDeltaPP7TeV.C:293
 ConfigDeltaPP7TeV.C:294
 ConfigDeltaPP7TeV.C:295
 ConfigDeltaPP7TeV.C:296
 ConfigDeltaPP7TeV.C:297
 ConfigDeltaPP7TeV.C:298
 ConfigDeltaPP7TeV.C:299
 ConfigDeltaPP7TeV.C:300
 ConfigDeltaPP7TeV.C:301
 ConfigDeltaPP7TeV.C:302
 ConfigDeltaPP7TeV.C:303
 ConfigDeltaPP7TeV.C:304
 ConfigDeltaPP7TeV.C:305
 ConfigDeltaPP7TeV.C:306
 ConfigDeltaPP7TeV.C:307
 ConfigDeltaPP7TeV.C:308
 ConfigDeltaPP7TeV.C:309
 ConfigDeltaPP7TeV.C:310
 ConfigDeltaPP7TeV.C:311
 ConfigDeltaPP7TeV.C:312
 ConfigDeltaPP7TeV.C:313
 ConfigDeltaPP7TeV.C:314
 ConfigDeltaPP7TeV.C:315
 ConfigDeltaPP7TeV.C:316
 ConfigDeltaPP7TeV.C:317
 ConfigDeltaPP7TeV.C:318
 ConfigDeltaPP7TeV.C:319
 ConfigDeltaPP7TeV.C:320
 ConfigDeltaPP7TeV.C:321
 ConfigDeltaPP7TeV.C:322
 ConfigDeltaPP7TeV.C:323
 ConfigDeltaPP7TeV.C:324
 ConfigDeltaPP7TeV.C:325
 ConfigDeltaPP7TeV.C:326
 ConfigDeltaPP7TeV.C:327
 ConfigDeltaPP7TeV.C:328
 ConfigDeltaPP7TeV.C:329
 ConfigDeltaPP7TeV.C:330
 ConfigDeltaPP7TeV.C:331
 ConfigDeltaPP7TeV.C:332
 ConfigDeltaPP7TeV.C:333
 ConfigDeltaPP7TeV.C:334
 ConfigDeltaPP7TeV.C:335
 ConfigDeltaPP7TeV.C:336
 ConfigDeltaPP7TeV.C:337
 ConfigDeltaPP7TeV.C:338
 ConfigDeltaPP7TeV.C:339
 ConfigDeltaPP7TeV.C:340
 ConfigDeltaPP7TeV.C:341
 ConfigDeltaPP7TeV.C:342
 ConfigDeltaPP7TeV.C:343
 ConfigDeltaPP7TeV.C:344
 ConfigDeltaPP7TeV.C:345
 ConfigDeltaPP7TeV.C:346
 ConfigDeltaPP7TeV.C:347
 ConfigDeltaPP7TeV.C:348
 ConfigDeltaPP7TeV.C:349
 ConfigDeltaPP7TeV.C:350
 ConfigDeltaPP7TeV.C:351
 ConfigDeltaPP7TeV.C:352
 ConfigDeltaPP7TeV.C:353
 ConfigDeltaPP7TeV.C:354
 ConfigDeltaPP7TeV.C:355