]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPCdataQA.cxx
PWG2 resonances wagon included. Still problems so disabled for the moment.
[u/mrichter/AliRoot.git] / TPC / AliTPCdataQA.cxx
index 60550345bf76040cdce35836a82ebb0ef55272f4..036e22bef3bbaed0babacc1d54b4229f794d8cfa 100644 (file)
@@ -71,6 +71,7 @@ using namespace std;
 #include <TDirectory.h>
 #include <TFile.h>
 #include <TError.h>
+#include <TMap.h>
 //AliRoot includes
 #include "AliRawReader.h"
 #include "AliRawReaderRoot.h"
@@ -93,12 +94,10 @@ using namespace std;
 ClassImp(AliTPCdataQA)
 
 AliTPCdataQA::AliTPCdataQA() : /*FOLD00*/  
-  TH1F("TPCRAW","TPCRAW",100,0,100),
   fFirstTimeBin(60),
   fLastTimeBin(1000),
   fAdcMin(1),
   fAdcMax(100),
-  fOldRCUformat(kTRUE),
   fMapping(NULL),
   fPedestal(0),
   fNoise(0),
@@ -126,6 +125,38 @@ AliTPCdataQA::AliTPCdataQA() : /*FOLD00*/
   //
 }
 
+//_____________________________________________________________________
+AliTPCdataQA::AliTPCdataQA(AliRecoParam::EventSpecie_t es) :
+fFirstTimeBin(60),
+fLastTimeBin(1000),
+fAdcMin(1),
+fAdcMax(100),
+fMapping(NULL),
+fPedestal(0),
+fNoise(0),
+fNLocalMaxima(0),
+fMaxCharge(0),
+fMeanCharge(0),
+fNoThreshold(0),
+fNTimeBins(0),
+fNPads(0),
+fTimePosition(0),
+fOverThreshold10(0),
+fOverThreshold20(0),
+fOverThreshold30(0),
+fEventCounter(0),
+fIsAnalysed(kFALSE),
+fAllBins(0),
+fAllSigBins(0),
+fAllNSigBins(0),
+fRowsMax(0),
+fPadsMax(0),
+fTimeBinsMax(0)
+{
+// ctor creating the histogram
+  char *  name = Form("TPCRAW_%s", AliRecoParam::GetEventSpecieName(es)) ; 
+  TH1F(name, name,100,0,100) ; 
+}
 
 //_____________________________________________________________________
 AliTPCdataQA::AliTPCdataQA(const AliTPCdataQA &ped) : /*FOLD00*/
@@ -134,7 +165,6 @@ AliTPCdataQA::AliTPCdataQA(const AliTPCdataQA &ped) : /*FOLD00*/
   fLastTimeBin(ped.GetLastTimeBin()),
   fAdcMin(ped.GetAdcMin()),
   fAdcMax(ped.GetAdcMax()),
-  fOldRCUformat(ped.GetOldRCUformat()),
   fMapping(NULL),
   fPedestal(0),
   fNoise(0),
@@ -182,6 +212,43 @@ AliTPCdataQA::AliTPCdataQA(const AliTPCdataQA &ped) : /*FOLD00*/
     fOverThreshold30  = new AliTPCCalPad(*ped.GetOverThreshold30());
 }
 
+//_____________________________________________________________________
+AliTPCdataQA::AliTPCdataQA(const TMap *config) : /*FOLD00*/  
+  TH1F("TPCRAW","TPCRAW",100,0,100),
+  fFirstTimeBin(60),
+  fLastTimeBin(1000),
+  fAdcMin(1),
+  fAdcMax(100),
+  fMapping(NULL),
+  fPedestal(0),
+  fNoise(0),
+  fNLocalMaxima(0),
+  fMaxCharge(0),
+  fMeanCharge(0),
+  fNoThreshold(0),
+  fNTimeBins(0),
+  fNPads(0),
+  fTimePosition(0),
+  fOverThreshold10(0),
+  fOverThreshold20(0),
+  fOverThreshold30(0),
+  fEventCounter(0),
+  fIsAnalysed(kFALSE),
+  fAllBins(0),
+  fAllSigBins(0),
+  fAllNSigBins(0),
+  fRowsMax(0),
+  fPadsMax(0),
+  fTimeBinsMax(0)
+{
+  //
+  // default constructor
+  //
+  if (config->GetValue("FirstTimeBin")) fFirstTimeBin = ((TObjString*)config->GetValue("FirstTimeBin"))->GetString().Atoi();
+  if (config->GetValue("LastTimeBin"))  fLastTimeBin = ((TObjString*)config->GetValue("LastTimeBin"))->GetString().Atoi();
+  if (config->GetValue("AdcMin"))       fAdcMin = ((TObjString*)config->GetValue("AdcMin"))->GetString().Atoi();
+  if (config->GetValue("AdcMax"))       fAdcMax = ((TObjString*)config->GetValue("AdcMax"))->GetString().Atoi();
+}
 
 //_____________________________________________________________________
 AliTPCdataQA& AliTPCdataQA::operator = (const  AliTPCdataQA &source)
@@ -292,8 +359,6 @@ Bool_t AliTPCdataQA::ProcessEvent(AliTPCRawStream *rawStream)
   // Event Processing loop - AliTPCRawStream
   //
 
-  rawStream->SetOldRCUFormat(fOldRCUformat);
-
   Bool_t withInput = kFALSE;
   Int_t nSignals = 0;
   Int_t lastSector = -1;
@@ -591,9 +656,9 @@ void AliTPCdataQA::FindLocalMaxima(const Int_t iSector)
          if(i==0 && j==0)
            continue;
          
-         Float_t charge = GetQ(b, i, j, maxTimeBin, minT, maxT, minP, maxP);
-         qTot += charge;
-         if(charge>0) {
+         Float_t charge1 = GetQ(b, i, j, maxTimeBin, minT, maxT, minP, maxP);
+         qTot += charge1;
+         if(charge1>0) {
            // see if the next neighbor is also above threshold
            if(i*j==0) {
              qTot += GetQ(b, 2*i, 2*j, maxTimeBin, minT, maxT, minP, maxP);