]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
PMD recoparam classes added
authorbasanta <basanta@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 2 Jun 2009 14:37:30 +0000 (14:37 +0000)
committerbasanta <basanta@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 2 Jun 2009 14:37:30 +0000 (14:37 +0000)
PMD/AliPMDRecoParam.cxx [new file with mode: 0644]
PMD/AliPMDRecoParam.h [new file with mode: 0644]
PMD/AliPMDReconstructor.h
PMD/CMake_libPMDrec.txt
PMD/MakePMDRecoParam.C [new file with mode: 0644]
PMD/PMDrecLinkDef.h
PMD/libPMDrec.pkg

diff --git a/PMD/AliPMDRecoParam.cxx b/PMD/AliPMDRecoParam.cxx
new file mode 100644 (file)
index 0000000..ef76107
--- /dev/null
@@ -0,0 +1,137 @@
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ *                                                                        *
+ * Author: The ALICE Off-line Project.                                    *
+ * Contributors are mentioned in the code where appropriate.              *
+ *                                                                        *
+ * Permission to use, copy, modify and distribute this software and its   *
+ * documentation strictly for non-commercial purposes is hereby granted   *
+ * without fee, provided that the above copyright notice appears in all   *
+ * copies and that both the copyright notice and this permission notice   *
+ * appear in the supporting documentation. The authors make no claims     *
+ * about the suitability of this software for any purpose. It is          *
+ * provided "as is" without express or implied warranty.                  *
+ **************************************************************************/
+
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// Class with PMD reconstruction parameters                                  //
+//                                                                           //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+
+#include "AliLog.h"
+
+#include "AliPMDRecoParam.h"
+
+ClassImp(AliPMDRecoParam)
+
+//_____________________________________________________________________________
+AliPMDRecoParam::AliPMDRecoParam():
+  AliDetectorRecoParam()
+{
+  //
+  // constructor
+  //
+
+  for (Int_t i = 0; i < 48; i++)
+    {
+      fNoiseCut[i] = 0.;
+    }
+
+  SetNameTitle("PMD","PMD");
+}
+//_____________________________________________________________________________
+AliPMDRecoParam::AliPMDRecoParam(const AliPMDRecoParam &source):
+  AliDetectorRecoParam(source)
+{ 
+  //copy Ctor
+
+  for (Int_t i = 0; i < 48; i++)
+    {
+      fNoiseCut[i] = source.fNoiseCut[i];
+    }
+
+}
+//_____________________________________________________________________________
+AliPMDRecoParam& AliPMDRecoParam::operator=(const AliPMDRecoParam &source)
+{
+  //
+  // assign. operator
+  //
+
+  if (this != &source)
+    {
+      for (Int_t i = 0; i < 48; i++)
+       {
+         fNoiseCut[i] = source.fNoiseCut[i];
+       }
+    }
+
+  return *this;
+}
+//_____________________________________________________________________________
+AliPMDRecoParam::~AliPMDRecoParam() 
+{
+  //
+  // destructor
+  //  
+}
+
+//_____________________________________________________________________________
+AliPMDRecoParam *AliPMDRecoParam::GetPbPbParam(){
+  //
+  // set default reconstruction parameters for PbPb.
+  //
+  AliPMDRecoParam *param = new AliPMDRecoParam();
+    
+  for (Int_t i = 0; i < 48; i++)
+    {
+      param->fNoiseCut[i] = 10.;    // dummy cuts
+    }
+
+  return param;
+}
+
+//_____________________________________________________________________________
+AliPMDRecoParam *AliPMDRecoParam::GetPPParam(){
+  //
+  // set default reconstruction parameters for PP.
+  //
+  AliPMDRecoParam *param = new AliPMDRecoParam();
+  for (Int_t i = 0; i < 48; i++)
+    {
+      param->fNoiseCut[i] = 10.;    // dummy cuts
+    }
+
+  return param;
+}
+
+//_____________________________________________________________________________
+AliPMDRecoParam *AliPMDRecoParam::GetCosmicParam(){
+  //
+  // set default reconstruction parameters for cosmic muon run
+  //
+  AliPMDRecoParam *param = new AliPMDRecoParam();
+  for (Int_t i = 0; i < 48; i++)
+    {
+      param->fNoiseCut[i] = 15.;    // dummy cuts
+    }
+  
+  return param;
+}
+
+//_____________________________________________________________________________
+void AliPMDRecoParam::PrintParameters() const
+{
+  //
+  // Printing of the used PMD reconstruction parameters
+  //
+  for (Int_t i = 0; i < 48; i++)
+    {
+      AliInfo(Form(" Noise cut in every detector : %f", fNoiseCut[i]));
+    }
+
+}
diff --git a/PMD/AliPMDRecoParam.h b/PMD/AliPMDRecoParam.h
new file mode 100644 (file)
index 0000000..4c0c14e
--- /dev/null
@@ -0,0 +1,39 @@
+#ifndef ALIPMDRECOPARAM_H
+#define ALIPMDRECOPARAM_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice                               */
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// Class with PMD reconstruction parameters                                  //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+
+#include "AliDetectorRecoParam.h"
+
+class AliPMDRecoParam : public AliDetectorRecoParam
+{
+ public: 
+  AliPMDRecoParam();
+  AliPMDRecoParam(const AliPMDRecoParam &source); //Copy Ctor 
+  AliPMDRecoParam& operator=(const AliPMDRecoParam &source); // ass. op.
+  virtual ~AliPMDRecoParam();
+
+  virtual void PrintParameters() const;
+
+
+  Float_t GetNoiseCut(Int_t imod) const { return fNoiseCut[imod];}
+  void    SetNoiseCut(Int_t imod, Float_t cut) {fNoiseCut[imod] = cut;}
+
+  static   AliPMDRecoParam *GetPbPbParam();   // reco param for PbPb.
+  static   AliPMDRecoParam *GetPPParam();     // reco param for PP
+  static   AliPMDRecoParam *GetCosmicParam(); // reco param for cosmic muons
+ private:
+
+  Float_t fNoiseCut[48]; //Noise cut
+
+  ClassDef(AliPMDRecoParam, 0)
+};
+
+#endif
index 7e32ddaf059e223f0f79be1b18681bc587d78a6f..90a0793c6cd0710468f5145f5c149f36da9c7794 100644 (file)
@@ -4,6 +4,7 @@
  * See cxx source for full Copyright notice                               */
 
 #include "AliReconstructor.h"
+#include "AliPMDRecoParam.h"
 
 class AliPMDReconstructor: public AliReconstructor {
 public:
@@ -17,9 +18,11 @@ public:
   virtual void   FillESD(TTree* /*digitsTree*/, TTree* clustersTree, 
                         AliESDEvent* esd) const;
 
+  static const AliPMDRecoParam* GetRecoParam() { return dynamic_cast<const AliPMDRecoParam*>(AliReconstructor::GetRecoParam(10)); } // getting RecoParam obj
+
 private:
 
-  ClassDef(AliPMDReconstructor, 5)   // class for the PMD reconstruction
+  ClassDef(AliPMDReconstructor, 6)   // class for the PMD reconstruction
 };
 
 #endif
index 77aab5f5827320cd20a2fff2d7382b47a998a794..c33efc35f54e6c384a5d33eb0aed630a7c81b0bb 100644 (file)
@@ -1,7 +1,7 @@
 # -*- mode: cmake -*-
 
 set(SRCS
-AliPMDRecPoint.cxx AliPMDUtility.cxx AliPMDrecpoint1.cxx AliPMDrechit.cxx AliPMDcluster.cxx AliPMDClusteringV1.cxx AliPMDClusteringV2.cxx AliPMDclupid.cxx AliPMDEmpDiscriminator.cxx AliPMDClusterFinder.cxx AliPMDtracker.cxx AliPMDReconstructor.cxx AliPMDcludata.cxx AliPMDCalibPedestal.cxx AliPMDCalibGain.cxx AliPMDQADataMakerRec.cxx AliPMDisocell.cxx AliPMDrecdata.cxx
+AliPMDRecPoint.cxx AliPMDUtility.cxx AliPMDrecpoint1.cxx AliPMDrechit.cxx AliPMDcluster.cxx AliPMDClusteringV1.cxx AliPMDClusteringV2.cxx AliPMDclupid.cxx AliPMDEmpDiscriminator.cxx AliPMDClusterFinder.cxx AliPMDtracker.cxx AliPMDReconstructor.cxx AliPMDcludata.cxx AliPMDCalibPedestal.cxx AliPMDCalibGain.cxx AliPMDQADataMakerRec.cxx AliPMDisocell.cxx AliPMDrecdata.cxx AliPMDRecoParam.cxx
 )
 
 # fill list of header files from list of source files
diff --git a/PMD/MakePMDRecoParam.C b/PMD/MakePMDRecoParam.C
new file mode 100644 (file)
index 0000000..830ae0e
--- /dev/null
@@ -0,0 +1,42 @@
+void MakePMDRecoParam(AliRecoParam::EventSpecie_t default=AliRecoParam::kLowMult){
+  // Create PMD Calibration Object for Ideal calibration and 
+  // write it on CDB
+  AliCDBManager *man = AliCDBManager::Instance();
+  man->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
+
+  TObjArray *recoParamArray = new TObjArray();
+
+  {
+    AliPMDRecoParam* pmdRecoParam = AliPMDRecoParam::GetPbPbParam();
+    pmdRecoParam->SetEventSpecie(AliRecoParam::kHighMult);
+    recoParamArray->AddLast(pmdRecoParam);
+  }
+
+  {
+    AliPMDRecoParam* pmdRecoParam = AliPMDRecoParam::GetPPParam();
+    pmdRecoParam->SetEventSpecie(AliRecoParam::kLowMult);
+    recoParamArray->AddLast(pmdRecoParam);
+  }
+
+  // Set the default
+  Bool_t defaultIsSet = kFALSE;
+  for(Int_t i =0; i < recoParamArray->GetEntriesFast(); i++) {
+    AliDetectorRecoParam *param = (AliDetectorRecoParam *)recoParamArray->UncheckedAt(i);
+    if (!param) continue;
+    if (default & param->GetEventSpecie()) {
+      param->SetAsDefault();
+      defaultIsSet = kTRUE;
+    }
+  }
+
+  
+  AliCDBMetaData *md= new AliCDBMetaData();
+  md->SetResponsible("Basanta Nandi");
+  md->SetComment("Reconstruction parameters PMD");
+  md->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
+  md->SetBeamPeriod(0);
+  AliCDBId id("PMD/Calib/RecoParam",0,AliCDBRunRange::Infinity());
+  man->GetDefaultStorage()->Put(recoParamArray,id, md);
+}
+
+
index c685ef38d00185a42b0bf276cee838528fb2cdac..45e217ce9ad1abf02dfcec0cfd4fa61329903cc4 100644 (file)
@@ -28,4 +28,5 @@
 #pragma link C++ class  AliPMDQADataMakerRec+;
 #pragma link C++ class  AliPMDisocell+;
 #pragma link C++ class  AliPMDrecdata+;
+#pragma link C++ class  AliPMDRecoParam+;
 #endif
index bd4c4b0f5c3d2cd124c51fcd2d5c56fae1c02f3b..0a5d2daef247255b34012d75d4a991c45cf92742 100644 (file)
@@ -1,7 +1,7 @@
 #-*- Mode: Makefile -*-
 # $Id$
 
-SRCS:= AliPMDRecPoint.cxx AliPMDUtility.cxx AliPMDrecpoint1.cxx AliPMDrechit.cxx AliPMDcluster.cxx AliPMDClusteringV1.cxx AliPMDClusteringV2.cxx AliPMDclupid.cxx AliPMDEmpDiscriminator.cxx AliPMDClusterFinder.cxx AliPMDtracker.cxx AliPMDReconstructor.cxx AliPMDcludata.cxx AliPMDCalibPedestal.cxx AliPMDCalibGain.cxx AliPMDQADataMakerRec.cxx AliPMDisocell.cxx AliPMDrecdata.cxx
+SRCS:= AliPMDRecPoint.cxx AliPMDUtility.cxx AliPMDrecpoint1.cxx AliPMDrechit.cxx AliPMDcluster.cxx AliPMDClusteringV1.cxx AliPMDClusteringV2.cxx AliPMDclupid.cxx AliPMDEmpDiscriminator.cxx AliPMDClusterFinder.cxx AliPMDtracker.cxx AliPMDReconstructor.cxx AliPMDcludata.cxx AliPMDCalibPedestal.cxx AliPMDCalibGain.cxx AliPMDQADataMakerRec.cxx AliPMDisocell.cxx AliPMDrecdata.cxx AliPMDRecoParam.cxx
 
 HDRS:= $(SRCS:.cxx=.h) AliPMDClustering.h AliPMDDiscriminator.h AliPMDcludata.h