/**************************************************************************
* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* *
* Author: The ALICE Off-line Project. *
* Contributors are mentioned in the code where appropriate. *
* *
* Permission to use, copy, modify and distribute this software and its *
* documentation strictly for non-commercial purposes is hereby granted *
* without fee, provided that the above copyright notice appears in all *
* copies and that both the copyright notice and this permission notice *
* appear in the supporting documentation. The authors make no claims *
* about the suitability of this software for any purpose. It is *
* provided "as is" without express or implied warranty. *
**************************************************************************/
// $Id$
//
/// \ingroup macros
/// \file MUONGenerateGeometryData.C
/// \brief Macro for generating the geometry data files:
/// transform.dat, svmap.dat.
///
/// To be run from aliroot:
///
/// .x MUONGenerateGeometryData.C
///
/// The generated files do not replace the existing ones
/// but have different names (with extension ".out").
///
/// \author: I. Hrivnacova, IPN Orsay
#if !defined(__CINT__) || defined(__MAKECINT__)
#include "AliMUON.h"
#include "AliMUONGeometryBuilder.h"
#include "AliMUONGeometryTransformer.h"
#include "AliRun.h"
#include "AliCDBManager.h"
#include "AliMC.h"
#include <Riostream.h>
#include <TROOT.h>
#include <TInterpreter.h>
#endif
void MUONGenerateGeometryData(Bool_t transforms = true,
Bool_t svmaps = true,
Bool_t writeEnvelopes = true)
{
/// \param transforms option to generete transform.dat
/// \param svmaps option to generete svmap.dat
/// \param writeEnvelope option to include virtual envelopes
/// in the volume paths
// Default CDB and run number
AliCDBManager* man = AliCDBManager::Instance();
man->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
man->SetRun(0);
// Initialize
TString configFileName = "$ALICE_ROOT/MUON/Config.C";
gROOT->LoadMacro(configFileName.Data());
gInterpreter->ProcessLine(gAlice->GetConfigFunction());
gAlice->GetMCApp()->Init();
cout << "Init done " << endl;
// Get MUON detector
AliMUON* muon = (AliMUON*)gAlice->GetModule("MUON");
if (!muon) {
cerr << "MUON detector not defined." << endl;
return;
}
// Get geometry builder
AliMUONGeometryBuilder* builder = muon ->GetGeometryBuilder();
if (transforms) {
cout << "Generating transformation file ..." << endl;
builder->GetTransformer()->WriteTransformations("transform.dat.out");
}
if (svmaps) {
cout << "Generating svmaps file ..." << endl;
builder->WriteSVMaps("svmap.dat.out", true, writeEnvelopes);
}
}
MUONGenerateGeometryData.C:1 MUONGenerateGeometryData.C:2 MUONGenerateGeometryData.C:3 MUONGenerateGeometryData.C:4 MUONGenerateGeometryData.C:5 MUONGenerateGeometryData.C:6 MUONGenerateGeometryData.C:7 MUONGenerateGeometryData.C:8 MUONGenerateGeometryData.C:9 MUONGenerateGeometryData.C:10 MUONGenerateGeometryData.C:11 MUONGenerateGeometryData.C:12 MUONGenerateGeometryData.C:13 MUONGenerateGeometryData.C:14 MUONGenerateGeometryData.C:15 MUONGenerateGeometryData.C:16 MUONGenerateGeometryData.C:17 MUONGenerateGeometryData.C:18 MUONGenerateGeometryData.C:19 MUONGenerateGeometryData.C:20 MUONGenerateGeometryData.C:21 MUONGenerateGeometryData.C:22 MUONGenerateGeometryData.C:23 MUONGenerateGeometryData.C:24 MUONGenerateGeometryData.C:25 MUONGenerateGeometryData.C:26 MUONGenerateGeometryData.C:27 MUONGenerateGeometryData.C:28 MUONGenerateGeometryData.C:29 MUONGenerateGeometryData.C:30 MUONGenerateGeometryData.C:31 MUONGenerateGeometryData.C:32 MUONGenerateGeometryData.C:33 MUONGenerateGeometryData.C:34 MUONGenerateGeometryData.C:35 MUONGenerateGeometryData.C:36 MUONGenerateGeometryData.C:37 MUONGenerateGeometryData.C:38 MUONGenerateGeometryData.C:39 MUONGenerateGeometryData.C:40 MUONGenerateGeometryData.C:41 MUONGenerateGeometryData.C:42 MUONGenerateGeometryData.C:43 MUONGenerateGeometryData.C:44 MUONGenerateGeometryData.C:45 MUONGenerateGeometryData.C:46 MUONGenerateGeometryData.C:47 MUONGenerateGeometryData.C:48 MUONGenerateGeometryData.C:49 MUONGenerateGeometryData.C:50 MUONGenerateGeometryData.C:51 MUONGenerateGeometryData.C:52 MUONGenerateGeometryData.C:53 MUONGenerateGeometryData.C:54 MUONGenerateGeometryData.C:55 MUONGenerateGeometryData.C:56 MUONGenerateGeometryData.C:57 MUONGenerateGeometryData.C:58 MUONGenerateGeometryData.C:59 MUONGenerateGeometryData.C:60 MUONGenerateGeometryData.C:61 MUONGenerateGeometryData.C:62 MUONGenerateGeometryData.C:63 MUONGenerateGeometryData.C:64 MUONGenerateGeometryData.C:65 MUONGenerateGeometryData.C:66 MUONGenerateGeometryData.C:67 MUONGenerateGeometryData.C:68 MUONGenerateGeometryData.C:69 MUONGenerateGeometryData.C:70 MUONGenerateGeometryData.C:71 MUONGenerateGeometryData.C:72 MUONGenerateGeometryData.C:73 MUONGenerateGeometryData.C:74 MUONGenerateGeometryData.C:75 MUONGenerateGeometryData.C:76 MUONGenerateGeometryData.C:77 MUONGenerateGeometryData.C:78 MUONGenerateGeometryData.C:79 MUONGenerateGeometryData.C:80 MUONGenerateGeometryData.C:81 MUONGenerateGeometryData.C:82 MUONGenerateGeometryData.C:83 MUONGenerateGeometryData.C:84 MUONGenerateGeometryData.C:85 MUONGenerateGeometryData.C:86 MUONGenerateGeometryData.C:87 MUONGenerateGeometryData.C:88 MUONGenerateGeometryData.C:89