]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - HLT/trigger/AliHLTTriggerDetectorGeom.h
Updated macros for PHOS alignment calculation
[u/mrichter/AliRoot.git] / HLT / trigger / AliHLTTriggerDetectorGeom.h
index e74c46a238fe5a015d7c025bf9b42d8aee9d5122..ea40af5c027f258bc6107e488098d444aa7dbe2a 100644 (file)
 /// @brief  HLT class describing simple geometry of (sub-)detectors.
 ///         Used for the AliHLTTriggerBarrelGeomMultiplicity classes
 
+
+#include "TString.h"
+#include <ostream>
+#include "TObject.h"
+#include "TString.h"
+#include <ostream>
 #include "TObject.h"
 
 /**
  * @class  AliHLTTriggerDetectorGeom
  * HLT class describing simple geometry cuts of (sub-)detectors.
- * Used for the AliHLTTriggerBarrelGeomMultiplicity classes
+ * Used for the AliHLTTriggerBarrelGeomMultiplicity class
  *
  * \ingroup alihlt_trigger
  */
@@ -59,21 +65,67 @@ public:
    * Set the initial point describing the plane
    * @param point is the point
    */
-  void SetInitialPoint(Double_t &point[3]); // Set initial point
+  void SetInitialPoint(Double_t *point); // Set initial point
 
   /** 
    * Set the vector describing the plane
    * @param nVector is a the vector
    */
-  void SetNormVector(Double_t &nVector[3]); // Set normal vector
+  void SetNormVector(Double_t *nVector); // Set normal vector
 
   /**
    * Set the name of the (sub-)detector
    * @param name is the name
    */
-  void SetName(TString &name) { fName = name; } // Set name
+  void SetDetName(TString &name) { fName = name; } // Set name
+
+  /** 
+   * Get the minimum in eta (should be moved...)
+   */
+  Double_t EtaMin() { return fEtaMin; }
+
+  /** 
+   * Get the maximum in eta (should be moved...)
+   */
+  Double_t EtaMax() { return fEtaMax; }
+
+  /** 
+   * Get the minimum in phi (should be moved...)
+   */
+  Double_t PhiMin() { return fPhiMin; }
+
+  /** 
+   * Get the maximum in phi (should be moved...)
+   */
+  Double_t PhiMax() { return fPhiMax; }
+
+  /** 
+   * Get the initial point
+   */
+  void GetInitialPoint(Double_t *point);
+
+  /**
+   * Get the normal vector
+   */
+  void GetNormVector(Double_t *vec);
+  
+  /** 
+   * Get the detector name
+   */
+  TString& DetName() { return fName; }
+
+  /** 
+   * Print the geometry
+   */
+  void PrintDetectorGeom(std::ostream &out);
+
+  /** 
+   * Abstract method to check if a point is in the 
+   * acceptance of the geometry 
+   */
+  virtual Bool_t IsInDetector(Double_t point[3]) = 0;
 
-private:
+protected:
 
   /** The minimum in eta */
   Double_t fEtaMin;   // The minimum in eta 
@@ -86,7 +138,12 @@ private:
 
   /** The maximum in phi */
   Double_t fPhiMax;   // The maximum in phi 
+
+  /** Name of the (sub-)detector */
+  TString fName;      // Name of the (sub-)detector 
   
+private: 
+
   /** 
    * The point which together with a normal vector 
    * defines the plane of the (sub-)detector
@@ -99,9 +156,6 @@ private:
    */
   Double_t fNormVector[3]; // Normal vector representing the plane
 
-  /** Name of the (sub-)detector */
-  TString fName;      // Name of the (sub-)detector 
-  
   ClassDef(AliHLTTriggerDetectorGeom, 1);
 
 };