musrForwardParameterisation.hh

Go to the documentation of this file.
00001 #ifndef musrForwardParameterisation_H
00002 #define musrForwardParameterisation_H 1
00003 
00004 #include "globals.hh"
00005 #include "G4VPVParameterisation.hh"
00006 #include "G4ThreeVector.hh"
00007 #include "G4RotationMatrix.hh"
00008 class G4VPhysicalVolume;
00009 class G4Box;
00010 class G4Trd;
00011 // Dummy declarations to get rid of warnings ...
00012 class G4Trap;
00013 class G4Cons;
00014 class G4Orb;
00015 class G4Sphere;
00016 class G4Torus;
00017 class G4Para;
00018 class G4Hype;
00019 class G4Tubs;
00020 class G4Polycone;
00021 class G4Polyhedra;
00022 
00023 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
00024 
00025 class musrForwardParameterisation : public G4VPVParameterisation
00026 { 
00027   public:
00028   
00029     musrForwardParameterisation(
00030                                   G4int    NoRadialPixels, 
00031                                   G4int    NoLengthPixels, 
00032                                  G4double X1Pixels, 
00033                                  G4double X2Pixels, 
00034                                  G4double Y1Pixels, 
00035                                  G4double Y2Pixels, 
00036                                  G4double ZPixels, 
00037                                  G4double ArrayLength,
00038                                  G4double TiltAngle, 
00039                                  G4double LRadius);
00040 
00041     virtual                              
00042    ~musrForwardParameterisation();
00043    
00044     void ComputeTransformation (const G4int copyNo,
00045                                 G4VPhysicalVolume* physVol) const;
00046     
00047 
00048     void ComputeDimensions (G4Trd & trackerlayer, const G4int copyNo, 
00049                             const G4VPhysicalVolume* physVol) const;
00050 
00051   private:  // Dummy declarations to get rid of warnings ...
00052 
00053     void ComputeDimensions (G4Box&, const G4int, const G4VPhysicalVolume*) const {}
00054 
00055     void ComputeDimensions (G4Trap&,const G4int,const G4VPhysicalVolume*) const {}
00056     void ComputeDimensions (G4Cons&,const G4int,const G4VPhysicalVolume*) const {}
00057     void ComputeDimensions (G4Sphere&,const G4int,const G4VPhysicalVolume*) const {}
00058     void ComputeDimensions (G4Orb&,const G4int,const G4VPhysicalVolume*) const {}
00059     void ComputeDimensions (G4Torus&,const G4int,const G4VPhysicalVolume*) const {}
00060     void ComputeDimensions (G4Para&,const G4int,const G4VPhysicalVolume*) const {}
00061     void ComputeDimensions (G4Hype&,const G4int,const G4VPhysicalVolume*) const {}
00062     void ComputeDimensions (G4Tubs&,const G4int,const G4VPhysicalVolume*) const {}
00063     void ComputeDimensions (G4Polycone&,const G4int,const G4VPhysicalVolume*) const {}
00064     void ComputeDimensions (G4Polyhedra&,const G4int,const G4VPhysicalVolume*) const {}
00065   private:
00066   G4int    fNoRadialPixels;   
00067   G4int    fNoLengthPixels;   
00068   G4double fArrayLength;    
00069   G4double fTiltAngle; 
00070   G4double fLRadius; 
00071 
00072   G4double fPixelWidthX1;
00073   G4double fPixelWidthX2;
00074   G4double fPixelWidthY1;
00075   G4double fPixelWidthY2;
00076   G4double fPixelWidthZ;
00077 };
00078 
00079 
00080 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
00081 
00082 #endif
00083 
00084 

Generated on Mon Mar 27 12:19:54 2006 for MUSR by  doxygen 1.4.6