]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSDetType.h
Coding rule violations corrected.
[u/mrichter/AliRoot.git] / ITS / AliITSDetType.h
index 18ba69e7df25bafb5277769f26aaffa81c2a1ac8..30768c7fe8b919dca41ccc4b3a1093d48850f762 100644 (file)
 #ifndef ALIITSDETTYPE_H
 #define ALIITSDETTYPE_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice                               */
 
+/* $Id$ */
+
+////////////////////////////////////////////////////////////////////////
+// This Class owns the classes needed to to detector simulations and
+// reconstruction. This includes the detector segmentation classes,
+// the detector responce classes, the detector simulatin classes, and
+// the detector reconstruction (clustering) classes for all of the ITS
+// detectors.
+////////////////////////////////////////////////////////////////////////
 
 #include <TString.h>
 #include <TObject.h>
 
+#include "AliITSgeom.h"
 #include "AliITSsegmentation.h"
 #include "AliITSresponse.h"
 
-
 class AliITSClusterFinder;
 class AliITSsimulation;
 
-class AliITSDetType:public TObject
-{
+class AliITSDetType:public TObject{
 
  public:
     AliITSDetType();
-    ~AliITSDetType(){
-      //destructor
-    }
+    AliITSDetType(AliITSDetector det,AliITSresponse *res,
+                  AliITSsegmentation *seg,AliITSsimulation *sim,
+                  AliITSClusterFinder *cf,const Char_t *DigClassName,
+                  const Char_t *ClustClassName);
+    virtual ~AliITSDetType();
     AliITSDetType(const AliITSDetType &source); // copy constructor
     AliITSDetType& operator=(const AliITSDetType &source); // assign. operator
+    // Return the type of detector these quantities are defined for
+    AliITSDetector GetDetType(){return fDetType;}
+    // Set the type of Detector these quantities are defined for
+    void SetDetType(AliITSDetector det){fDetType = det;}
 
-// Set the defaults
-  void   Init() {}
-
-//
-  void    SegmentationModel(AliITSsegmentation* thisSegmentation){ 
-    // Configure segmentation model
-    if(fSegmentation) delete fSegmentation;
-    fSegmentation=thisSegmentation;
-  }
-  //
-  void    ResponseModel(AliITSresponse* thisResponse) { 
-    // Configure response model
-    if(fResponse) delete fResponse;
-    fResponse=thisResponse;
-  }
-  //
-  void    SimulationModel(AliITSsimulation *thisSimulation) {
-    // Configure simulation model
-    fSimulation = thisSimulation;
-  }
-  //
-  void    ReconstructionModel(AliITSClusterFinder *thisReconstruction) {
-// Configure reconstruction model
-      fReconst = thisReconstruction;
-  }
-  void    ClassNames(const char *digit, const char *cluster) { 
-    // Set class names for digits and clusters
-    fDigClassName=digit; fClustClassName=cluster; 
-  } 
-  
-  AliITSsegmentation*      &GetSegmentationModel(){
-    //  Get reference to segmentation model
-    return fSegmentation;
-  }
-  AliITSresponse*          &GetResponseModel(){
-    //  Get reference to response model
-    return fResponse;
-  }
-  AliITSsimulation*        &GetSimulationModel(){
-    //  Get reference to simulation model
-    return fSimulation;
-  }
-  AliITSClusterFinder*     &GetReconstructionModel(){
-    //  Get reference to hit reconstruction model
-    return fReconst;
-  }
-  //  
-  
-  void GetClassNames(char *digit,char *cluster) 
-    { 
-      // Get class names for digits and rec points
-      strcpy(digit,fDigClassName.Data()); strcpy(cluster,fClustClassName.Data()); 
+    // Set the defaults
+    virtual void   Init() {}
+    //
+    virtual void    SegmentationModel(AliITSsegmentation* thisSegmentation){ 
+       // Configure segmentation model
+       if(fSegmentation) delete fSegmentation;
+       fSegmentation=thisSegmentation;
+    }
+    //
+    virtual void    ResponseModel(AliITSresponse* thisResponse) { 
+       // Configure response model
+       if(fResponse) delete fResponse;
+       fResponse=thisResponse;
+    }
+    //
+    virtual void    SimulationModel(AliITSsimulation *thisSimulation) {
+       // Configure simulation model
+       fSimulation = thisSimulation;
+    }
+    //
+    virtual void ReconstructionModel(AliITSClusterFinder *thisReconstruction) {
+       // Configure reconstruction model
+       fReconst = thisReconstruction;
+    }
+    virtual void    ClassNames(const char *digit, const char *cluster) { 
+       // Set class names for digits and clusters
+       fDigClassName=digit; fClustClassName=cluster; 
+    }
+    AliITSsegmentation*      &GetSegmentationModel(){
+       //  Get reference to segmentation model
+       return fSegmentation;
+    }
+    AliITSresponse*          &GetResponseModel(){
+       //  Get reference to response model
+       return fResponse;
+    }
+    AliITSsimulation*        &GetSimulationModel(){
+       //  Get reference to simulation model
+       return fSimulation;
+    }
+    AliITSClusterFinder*     &GetReconstructionModel(){
+       //  Get reference to hit reconstruction model
+       return fReconst;
+    }
+    //
+    void GetClassNames(char *digit,char *cluster){
+       // Get class names for digits and rec points
+       strcpy(digit,fDigClassName.Data());
+       strcpy(cluster,fClustClassName.Data()); 
     } 
-  
-protected:
-  
-  AliITSClusterFinder  *fReconst;          // cluster finder
-  AliITSsimulation     *fSimulation;       // simulation
-  AliITSresponse       *fResponse;         // response
-  AliITSsegmentation   *fSegmentation;     // segmentation
-  
-  TString              fDigClassName;      // string
-  TString              fClustClassName;    // string
-  
-  ClassDef(AliITSDetType,1)
-    
+    // Return the Digit Class name
+    TString GetDigitClassName() const { return fDigClassName;}
+    // Return the Cluster Class name
+    TString GetClusterClassName() const { return fClustClassName;}
+
+ protected:
+    AliITSDetector       fDetType;           // Type of detector
+    AliITSresponse       *fResponse;         // response
+    AliITSsegmentation   *fSegmentation;     // segmentation
+    AliITSsimulation     *fSimulation;       // simulation
+    AliITSClusterFinder  *fReconst;          // cluster finder
+    TString              fDigClassName;      // string
+    TString              fClustClassName;    // string
+
+    ClassDef(AliITSDetType,2) //Detector simulation/reconstruction class holder
+
 };
 
 #endif