]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSInitGeometry.h
ReadRaw(): TGraphs are created once per event (B.Polichtchouk)
[u/mrichter/AliRoot.git] / ITS / AliITSInitGeometry.h
CommitLineData
023ae34b 1#ifndef ALIITSINITGEOMETRY_H
2#define ALIITSINITGEOMETRY_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/*
7$Id$
8*/
9
6b0f3880 10////////////////////////////////////////////////////////////////
11// Class to inilize AliITSgeom and the like for both simulation
12// and reconstriction.
13/////////////////////////////////////////////////////////////////////
14
023ae34b 15#include <TObject.h>
023ae34b 16#include <TString.h>
023ae34b 17
6b0f3880 18
19class AliITSgeom;
20class TArrayD;
21class TGeoHMatrix;
023ae34b 22
23class AliITSInitGeometry : public TObject{
24 public:
25 AliITSInitGeometry(); // Default Creator
26 AliITSInitGeometry(const Char_t *name,Int_t minorversion);//Standard Creator
27 //virtual ~AliITSInitGeometry(); // Destructor
28 //
29 AliITSgeom* CreateAliITSgeom(); // Create and intilize geometry from TGeom
30 Bool_t InitAliITSgeom(AliITSgeom *geom);//Initilize goemetry from gGeoManager
31 // Getters and Setters
32 TString GetGeometryName()const {return fName;}// Return geometry name
33 void SetGeometryName(const Char_t *name){fName = name;}// Set Geometry name
34 Int_t GetMajorVersion()const {return fMajorVersion;} // Return geometry major version
35 void SetMajorVersion(Int_t majorVersion){fMajorVersion = majorVersion;} // Set geometry major version
36 Int_t GetMinorVersion()const{return fMinorVersion;}// Return geometry minor version
37 void SetMinorVersion(Int_t minorVersion){fMinorVersion = minorVersion;}
38 Bool_t GetTiming()const{return fTiming;} // return routine timing flag
39 void SetTiming(Bool_t time=kTRUE){fTiming=time;}// Set routine timing (on)
40 Bool_t GetSegGeom()const{return fSegGeom;} // return flag indecating the use of AliITSsegmentation or AliITSgeomS?D class in fShape.
41 void SetSegGeom(Bool_t seg=kTRUE){fSegGeom = seg;}// Set the use of AliITSsegmentation class' instead of AliITSgeomS?D class in fShape
42 Bool_t GetDecoding()const{return fDecode;}// Return flag indecating wether to use new/old decoding
43 void SetDecoding(Bool_t newdec=kFALSE){fDecode = newdec;}// Set flag to use new/old decoding
44
45 private:
46 // Virtual MC code reproduction
47 Bool_t InitAliITSgeomPPRasymmFMD(AliITSgeom *geom);
48 Bool_t InitGeomShapePPRasymmFMD(AliITSDetector idet,Bool_t *initSeg,
49 TArrayD &shapePar,AliITSgeom *geom);
50 Bool_t InitSegmentationPPRasymmFMD(AliITSDetector idet,Bool_t *initSeg,
51 TArrayD &shapePar,AliITSgeom *geom);
52 Bool_t GetTransformation(const TString &volumePath,TGeoHMatrix &mat);
53 Bool_t GetShape(const TString &volumePath,TString &shapeType,TArrayD &par);
54 void DecodeDetectorLayers(Int_t mod,Int_t &lay,Int_t &lad,Int_t &det);
6b0f3880 55 void DecodeDetector(Int_t &mod,Int_t lay,Int_t cpn0,
56 Int_t cpn1,Int_t cpn2) const;
023ae34b 57 void RecodeDetector(Int_t mod,Int_t &cpn0,Int_t &cpn1,Int_t &cpn2);
58
59 TString fName; // Geometry name
60 Int_t fMinorVersion; // Geometry minor version
61 Int_t fMajorVersion; // Geometry swich value
62 Bool_t fTiming; // Flag to start inilization timing
63 Bool_t fSegGeom; // Flag to switch between the old use of
64 // AliITSgeomS?D class, or AliITSsegmentation
65 // class in fShape of AliITSgeom class.
66 Bool_t fDecode; // Flag for new/old decoding
67
68 ClassDef(AliITSInitGeometry,0) // create/Init AliITSgeom
69 // 0 in ClassDef indicates that this class will not be "saved" in a file.
70};
71
72#endif
73