source: trunk/examples/advanced/medical_linac/include/ML2AcceleratorConstruction.hh@ 1330

Last change on this file since 1330 was 1230, checked in by garnier, 16 years ago

update to geant4.9.3

  • Property svn:executable set to *
File size: 3.3 KB
RevLine 
[1230]1//
2// ********************************************************************
3// * DISCLAIMER *
4// * *
5// * The following disclaimer summarizes all the specific disclaimers *
6// * of contributors to this software. The specific disclaimers,which *
7// * govern, are listed with their locations in: *
8// * http://cern.ch/geant4/license *
9// * *
10// * Neither the authors of this software system, nor their employing *
11// * institutes,nor the agencies providing financial support for this *
12// * work make any representation or warranty, express or implied, *
13// * regarding this software system or assume any liability for its *
14// * use. *
15// * *
16// * This code implementation is the intellectual property of the *
17// * GEANT4 collaboration. *
18// * By copying, distributing or modifying the Program (or any work *
19// * based on the Program) you indicate your acceptance of this *
20// * statement, and all its terms. *
21// ********************************************************************
22//
23// The code was written by :
24// ^Claudio Andenna claudio.andenna@iss.infn.it, claudio.andenna@ispesl.it
25// *Barbara Caccia barbara.caccia@iss.it
26// with the support of Pablo Cirrone (LNS, INFN Catania Italy)
27//
28// ^ISPESL and INFN Roma, gruppo collegato Sanità, Italy
29// *Istituto Superiore di Sanità and INFN Roma, gruppo collegato Sanità, Italy
30// Viale Regina Elena 299, 00161 Roma (Italy)
31// tel (39) 06 49902246
32// fax (39) 06 49387075
33//
34// more information:
35// http://g4advancedexamples.lngs.infn.it/Examples/medical-linac
36//
37//*******************************************************//
38
39
40#ifndef CML2AcceleratorConstructionH
41#define CML2AcceleratorConstructionH
42
43#include "ML2SinputData.hh"
44#include "G4VPhysicalVolume.hh"
45#include "G4LogicalVolume.hh"
46#include "G4Box.hh"
47#include "ML2Acc1.hh"
48
49class CML2Acc1;
50class CML2AcceleratorConstructionMessenger;
51class CML2AcceleratorConstruction
52{
53public:
54 CML2AcceleratorConstruction(void);
55 ~CML2AcceleratorConstruction(void);
56 static CML2AcceleratorConstruction* GetInstance(void);
57 void Construct(G4VPhysicalVolume *PVWorld);
58 G4VPhysicalVolume *getPhysicalVolume(void){return this->PVAccWorld;};
59 inline void setAcceleratorName(G4String val){this->AcceleratorName=val;};
60 inline void setAcceleratorSpecficationsFileName(G4String val){this->AcceleratorSpecficationsFileName=val;};
61 inline void setAcceleratorRotationX(G4double val){this->rotationX=val;};
62 inline void setAcceleratorRotationY(G4double val){this->rotationY=val;};
63 inline void setAcceleratorRotationZ(G4double val){this->rotationZ=val;};
64private:
65 void design(void);
66 CML2AcceleratorConstructionMessenger *acceleratorConstructionMessenger;
67 static CML2AcceleratorConstruction * instance;
68 G4String AcceleratorName, AcceleratorSpecficationsFileName;
69
70 G4VPhysicalVolume *PVAccWorld;
71 G4RotationMatrix *rotation;
72 G4double rotationX, rotationY, rotationZ;
73 CML2Acc1 *accelerator1;
74};
75
76
77#endif
Note: See TracBrowser for help on using the repository browser.