**************************************************************************/
// $Id$
-//
+
+//-----------------------------------------------------------------------------
// Class AliMUONSt2GeometryBuilderV2
-// -------------------------------
+// ---------------------------------
// MUON Station2 coarse geometry construction class.
-//********************************************************************
// Author: SANJOY PAL ,Prof. SUKALYAN CHATTOPADHAYAY [SINP, KOLKATA]
// & Dr.SHAKEEL AHMAD (AMU), INDIA
-//********************************************************************
+//-----------------------------------------------------------------------------
#include <TVirtualMC.h>
#include "AliMUONConstants.h"
#define PI 3.14159
+
+/// \cond CLASSIMP
ClassImp(AliMUONSt2GeometryBuilderV2)
+/// \endcond
//______________________________________________________________________________
AliMUONSt2GeometryBuilderV2::AliMUONSt2GeometryBuilderV2(AliMUON* muon)
- : AliMUONVGeometryBuilder(2, 3),
+ : AliMUONVGeometryBuilder(2, 2),
fMUON(muon)
{
-// Standard constructor
+/// Standard constructor
}
: AliMUONVGeometryBuilder(),
fMUON(0)
{
-// Default constructor
+/// Default constructor
}
-
//______________________________________________________________________________
-AliMUONSt2GeometryBuilderV2::AliMUONSt2GeometryBuilderV2(const AliMUONSt2GeometryBuilderV2& rhs)
- : AliMUONVGeometryBuilder(rhs)
+AliMUONSt2GeometryBuilderV2::~AliMUONSt2GeometryBuilderV2()
{
-// Protected copy constructor
-
- AliFatal("Copy constructor is not implemented.");
-}
-
-//______________________________________________________________________________
-AliMUONSt2GeometryBuilderV2::~AliMUONSt2GeometryBuilderV2() {
-//
-}
-
-//______________________________________________________________________________
-AliMUONSt2GeometryBuilderV2&
-AliMUONSt2GeometryBuilderV2::operator = (const AliMUONSt2GeometryBuilderV2& rhs)
-{
-// Protected assignement operator
-
- // check assignement to self
- if (this == &rhs) return *this;
-
- AliFatal("Assignment operator is not implemented.");
-
- return *this;
+/// Destructor
}
//
//______________________________________________________________________________
void AliMUONSt2GeometryBuilderV2::CreateGeometry()
{
+/// Geometry construction
//
//********************************************************************
// iChamber (first chamber) kept for other quanties than Z,
// assumed to be the same in both chambers
-
// Get tracking medias Ids
Int_t *idtmed = fMUON->GetIdtmed()->GetArray()-1099;
Int_t idAir = idtmed[1100]; // medium 1
//______________________________________________________________________________
void AliMUONSt2GeometryBuilderV2::SetTransformations()
{
-// Defines the transformations for the station2 chambers.
-// ---
+/// Defines the transformations for the station2 chambers.
+
+ if (gAlice->GetModule("SHIL")) {
+ SetMotherVolume(2, "YOUT1");
+ SetMotherVolume(3, "YOUT1");
+ }
+
+ // Define chamber volumes as virtual
+ SetVolume(2, "SC03", true);
+ SetVolume(3, "SC04", true);
Double_t zpos1 = - AliMUONConstants::DefaultChamberZ(2);
SetTranslation(2, TGeoTranslation(0., 0., zpos1));
//______________________________________________________________________________
void AliMUONSt2GeometryBuilderV2::SetSensitiveVolumes()
{
-// Defines the sensitive volumes for station2 chambers.
-// ---
+/// Defines the sensitive volumes for station2 chambers.
GetGeometry(2)->SetSensitiveVolume("C3G0");
GetGeometry(2)->SetSensitiveVolume("C3G1");