]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONGeometryEnvelope.h
Detection element in digits and bug on TrackCharge1 solved (Christian)
[u/mrichter/AliRoot.git] / MUON / AliMUONGeometryEnvelope.h
index ed09cec86825dae518650ee6c72170bb44f6bce5..7258c3b8d9efc124b7926072ada57a8a3abb8bbd 100644 (file)
@@ -1,4 +1,8 @@
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice                               */
+
 // $Id$
+// Revision of includes 07/05/2004
 //
 // Class AliMUONGeometryEnvelope
 // -----------------------------
@@ -19,14 +23,12 @@ class TObjArray;
 class AliMUONGeometryEnvelope : public TNamed
 {
   public:
-    AliMUONGeometryEnvelope(const TString& name, Bool_t isVirtual);
-    AliMUONGeometryEnvelope(const TString& name, Int_t copyNo);
+    AliMUONGeometryEnvelope(const TString& name, Int_t id,  
+                            Bool_t isVirtual, const char* only); 
+    AliMUONGeometryEnvelope(const TString& name,  Int_t id,
+                            Int_t copyNo, const char* only); 
     AliMUONGeometryEnvelope();
-    AliMUONGeometryEnvelope(const AliMUONGeometryEnvelope& rhs);
     virtual ~AliMUONGeometryEnvelope();
-
-    // operators  
-    AliMUONGeometryEnvelope& operator = (const AliMUONGeometryEnvelope& rhs);
   
     // methods
     void  AddConstituent(const TString& name, Int_t copyNo); 
@@ -35,6 +37,8 @@ class AliMUONGeometryEnvelope : public TNamed
     void  AddConstituent(const TString& name, Int_t copyNo,
                          const TGeoTranslation& translation, 
                         const TGeoRotation& rotation);
+    void  AddConstituent(const TString& name, Int_t copyNo,
+                         const TGeoCombiTrans& transform); 
 
     void  AddConstituentParam(const TString& name, Int_t copyNo, 
                          Int_t npar, Double_t* param);
@@ -45,19 +49,32 @@ class AliMUONGeometryEnvelope : public TNamed
                          const TGeoTranslation& translation, 
                         const TGeoRotation& rotation,
                         Int_t npar, Double_t* param);
+    void  AddConstituentParam(const TString& name, Int_t copyNo, 
+                         const TGeoCombiTrans& transform,
+                        Int_t npar, Double_t* param);
 
     void  SetTranslation(const TGeoTranslation& translation);
     void  SetRotation(const TGeoRotation& rotation);
+    void  SetTransform(const TGeoCombiTrans& transform);
 
     // get methods
     Bool_t                 IsVirtual() const;  
+    Bool_t                 IsMANY() const;  
     Int_t                  GetCopyNo() const;  
     const TGeoCombiTrans*  GetTransformation() const;
     const TObjArray*       GetConstituents() const;
 
+  protected:
+    AliMUONGeometryEnvelope(const AliMUONGeometryEnvelope& rhs);
+
+    // operators  
+    AliMUONGeometryEnvelope& operator = (const AliMUONGeometryEnvelope& rhs);
+
   private:
     Bool_t           fIsVirtual;     // true if envelope is not represented
                                      // by a real volume
+    Bool_t           fIsMANY;        // true if envelope is placed with
+                                     // MANY option
     Int_t            fCopyNo;        // copy number 
                                      // (only non virtual envelope can have 
                                     //  more than one copy)
@@ -74,6 +91,9 @@ class AliMUONGeometryEnvelope : public TNamed
 inline Bool_t AliMUONGeometryEnvelope::IsVirtual() const
 { return fIsVirtual; }  
 
+inline Bool_t AliMUONGeometryEnvelope::IsMANY() const
+{ return fIsMANY; }  
+
 inline Int_t AliMUONGeometryEnvelope::GetCopyNo() const
 { return fCopyNo; }