]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONGeometryEnvelope.h
Fixing BUFFER_SIZE_WARNING defect (generated by previous fix)
[u/mrichter/AliRoot.git] / MUON / AliMUONGeometryEnvelope.h
index 923f114115ab0678f53893f6d9a89452619c3179..942705e2a21634fa92f24daf0e1cd79c7581269f 100644 (file)
@@ -3,12 +3,14 @@
 
 // $Id$
 // Revision of includes 07/05/2004
-//
-// Class AliMUONGeometryEnvelope
-// -----------------------------
-// Helper class for definititon an assembly of volumes.
-//
-// Author: Ivana Hrivnacova, IPN Orsay
+
+/// \ingroup geometry
+/// \class AliMUONGeometryEnvelope
+/// \brief Geometry envelope helper class
+///
+/// Helper class for definititon of an assembly of volumes.
+///
+/// \author Ivana Hrivnacova, IPN Orsay
 
 #ifndef ALI_MUON_GEOMETRY_ENVELOPE_H
 #define ALI_MUON_GEOMETRY_ENVELOPE_H
@@ -23,10 +25,10 @@ class TObjArray;
 class AliMUONGeometryEnvelope : public TNamed
 {
   public:
-    AliMUONGeometryEnvelope(const TString& name, Bool_t isVirtual, 
-                            const char* only); 
-    AliMUONGeometryEnvelope(const TString& name, Int_t copyNo,
-                            const char* only); 
+    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();
     virtual ~AliMUONGeometryEnvelope();
   
@@ -37,6 +39,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);
@@ -47,9 +51,13 @@ 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;  
@@ -59,41 +67,48 @@ class AliMUONGeometryEnvelope : public TNamed
     const TObjArray*       GetConstituents() const;
 
   protected:
+    /// Not implemented
     AliMUONGeometryEnvelope(const AliMUONGeometryEnvelope& rhs);
-
-    // operators  
+    /// Not implemented
     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)
-    TGeoCombiTrans*  fTransformation;// the envelope transformation wrt to the
-                                     // mother frame (the chamber position)
-    TObjArray*       fConstituents;  // the constituents names and transformations
-                                    // wrt to the envelope position                                 
+    Bool_t           fIsVirtual;     ///< \brief true if envelope is not represented
+                                     /// by a real volume
+    Bool_t           fIsMANY;        ///< \brief true if envelope is placed with
+                                     /// MANY option
+    Int_t            fCopyNo;        ///< \brief copy number 
+                                     /// (only non virtual envelope can have 
+                                    ///  more than one copy)
+    TGeoCombiTrans*  fTransformation;///< \brief  the envelope transformation wrt to the
+                                     /// mother frame (the chamber position)
+    TObjArray*       fConstituents;  ///< \brief the constituents names and transformations
+                                    /// wrt to the envelope position                                 
  
   ClassDef(AliMUONGeometryEnvelope,1) // MUON chamber geometry base class
 };
 
 // inline functions
 
+/// Return true if envelope is virtual
 inline Bool_t AliMUONGeometryEnvelope::IsVirtual() const
 { return fIsVirtual; }  
 
+/// Return true if envelope is placed with MANY option
 inline Bool_t AliMUONGeometryEnvelope::IsMANY() const
 { return fIsMANY; }  
 
+/// Return copy number
 inline Int_t AliMUONGeometryEnvelope::GetCopyNo() const
 { return fCopyNo; }  
 
+/// Return the envelope transformation wrt to the mother frame 
+/// (the chamber position)
 inline const TGeoCombiTrans* AliMUONGeometryEnvelope::GetTransformation() const 
 { return fTransformation; }
 
+/// Return the array of constituents names and transformations 
+/// wrt to the envelope position
 inline const TObjArray* AliMUONGeometryEnvelope::GetConstituents() const
 { return fConstituents; }