]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSSumTP.cxx
Extend q_ij range for pp and pPb
[u/mrichter/AliRoot.git] / ITS / AliITSSumTP.cxx
index a31f01639f75647e81f4ef45d98d77eec3b90a44..3e8a7ebfcbbc23edbebc513a10d3089605cdfc49 100644 (file)
@@ -14,13 +14,17 @@ ClassImp(AliITSSumTP)
 
 //__________________________________________
 AliITSSumTP::AliITSSumTP(const AliITSSumTP& src) : 
-                  TObject(src), fTracks(src.fTracks.GetEntriesFast()), fVertex(src.GetVertex()), 
-                  fNVars(src.fNVars), fCrvVars(0)
+TObject(src), fTracks(src.fTracks.GetEntriesFast()), fVertex(src.GetVertex()), 
+  fNVars(src.fNVars), fCrvVars(0),fTPCVars(0)
 {
   // copy c-tor
   fCrvVars = new Double32_t[fNVars];
+  fTPCVars = new Double32_t[fNVars];
   TObjArray& arrSrc = src.GetTracks();
-  for (int i=fNVars;i--;) fCrvVars[i] = src.fCrvVars[i];
+  for (int i=fNVars;i--;) {
+    fCrvVars[i] = src.fCrvVars[i];
+    fTPCVars[i] = src.fTPCVars[i];
+  }
   for (int i=arrSrc.GetEntriesFast();i--;) fTracks.AddAtAndExpand(arrSrc.UncheckedAt(i),i);
 }
 
@@ -34,8 +38,12 @@ AliITSSumTP& AliITSSumTP::operator=(const AliITSSumTP& src)
   fVertex = src.GetVertex();
   fNVars = src.fNVars;
   fCrvVars = new Double32_t[fNVars];
+  fTPCVars = new Double32_t[fNVars];
   TObjArray& arrSrc = src.GetTracks();
-  for (int i=fNVars;i--;) fCrvVars[i] = src.fCrvVars[i];
+  for (int i=fNVars;i--;) {
+    fCrvVars[i] = src.fCrvVars[i];
+    fTPCVars[i] = src.fTPCVars[i];
+  }
   for (int i=arrSrc.GetEntriesFast();i--;) fTracks.AddAtAndExpand(arrSrc.UncheckedAt(i),i);
   return *this;
 }
@@ -44,10 +52,13 @@ AliITSSumTP& AliITSSumTP::operator=(const AliITSSumTP& src)
 void AliITSSumTP::BookNTracks(Int_t n)
 {
   // book space for tracks info
-  delete[] fCrvVars; 
+  delete[] fCrvVars; fCrvVars = 0;
   fNVars = n*kNVarPerTrack; 
-  fCrvVars = fNVars>0 ? new Double32_t[fNVars] : 0;
-  for (int i=fNVars;i--;) fCrvVars[i]=0; 
+  if (fNVars>0) {
+    fCrvVars = new Double32_t[fNVars];
+    fTPCVars = new Double32_t[fNVars];
+    for (int i=fNVars;i--;) fCrvVars[i]=fTPCVars[i] = 0; 
+  }
 }
 
 //__________________________________________
@@ -56,7 +67,27 @@ void AliITSSumTP::Reset()
   // reset object
   fTracks.Delete();
   delete[] fCrvVars; 
-  fCrvVars = 0;
+  delete[] fTPCVars; 
+  fCrvVars = fTPCVars = 0;
   fNVars = 0;
   SetUniqueID(0);
 }
+
+//__________________________________________
+void AliITSSumTP::Print(Option_t *) const
+{
+  // reset object
+  printf("Vertex: "); fVertex.Print();
+  int ntr = GetNTracks();
+  printf("Number of tracks: %d\n",ntr);
+  double xyz[3]={0,0,0};
+  for (int itr=0;itr<ntr;itr++) {
+    AliTrackPointArray* tr = GetTrack(itr);
+    GetTPCInnerXYZ(itr,xyz);
+    printf("#%2d : %d hits CrvGlo: %+.2e/%+.2e CrvTPC: %+.2e/%+.2e TPC_XYZ: %+8.3f %+8.3f %+9.3f\n",itr,tr->GetNPoints(),
+          GetCrvGlo(itr),GetCrvGloErr(itr), GetCrvTPC(itr),GetCrvTPCErr(itr),
+          xyz[0],xyz[1],xyz[2]);
+  }
+  //
+}
+