FairRoot/PandaRoot
PndGeoHypGeBase.h
Go to the documentation of this file.
1 /*
2  * PndGeoHypGeBase.h
3  *
4  * Copyright 2012 Marcell Steinen <steinen@kph.uni-mainz.de>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19  * MA 02110-1301, USA.
20  *
21  *
22  */
23 
24 
25 #ifndef PNDGEOHYPGEBASE_H
26 #define PNDGEOHYPGEBASE_H
27 
28 #include "TGeoArb8.h"
29 #include "TGeoXtru.h"
30 #include "fstream"
31 #include <string>
32 #include <iostream>
33 #include <stdio.h>
34 #include <stdlib.h>
35 
36 using namespace std;
37 
39 {
40  protected:
41 
44 
46 
47 
48  public:
50  virtual ~PndGeoHypGeBase();
51 
52  // function to build Arrays for TGeoArb8 for the side parts of the cryostat. Point1 and Point2 give the points (in xy-projection) between which the TGeoArb8 is build. The diffenent Offset give the height: 1 = 0.15 cm; 2 = 11.5 cm; 3 = 15.6493 cm; 4 = 18.5 cm
53  void BuildTArb8Array(Double_t *OutputArray, Int_t Point1, Int_t Point2, Int_t Offset1, Int_t Offset2,Int_t ShiftValue,Int_t NumberOfPoints );
54  void BuildTArb8Array(Double_t *OutputArray, Int_t Point1, Int_t Point2, Int_t Offset1, Int_t Offset2,Int_t Offset3,Int_t Offset4,Int_t NumberOfPoints );
55  void BuildTArb8FrontArray(Double_t *OutputArray, Int_t Point1, Int_t Point2, Int_t Point3, Int_t Point4,Int_t NumberOfPoints );
56  void BuildTArb8TopArray(Double_t *OutputArray, Int_t Point1, Int_t Point2, Int_t Point3, Int_t Point4,Int_t Offset,Int_t NumberOfPoints );
57  void FillInputArray(Int_t NumberOfPoints,Int_t NumberOfXYInput);
58  void FillZValues(Int_t NumberofDifferentZValues);
59 
60  void ReadCoordinatesAndAngles(string Filename,Int_t NumberOfCluster, Double_t *CoordinatesAndAngles);
61 
62  ClassDef(PndGeoHypGeBase,0); // Class for GeoHypGeBase
63 };
64 
65 #endif /* PNDGEOHYPGEBASE_H */
ifstream ParametersInputFile
Double_t
Double_t * ZValuesInputArray
Double_t * CoordinatesInputArray