/home/cern/BDSIM_new/include/BDSLaserWire.hh

00001 /* BDSIM code.    Version 1.0
00002    Author: Grahame A. Blair, Royal Holloway, Univ. of London.
00003    Last modified 24.7.2002
00004    Copyright (c) 2002 by G.A.Blair.  ALL RIGHTS RESERVED. 
00005 */
00006 
00007 #ifndef BDSLaserWire_h
00008 #define BDSLaserWire_h 1
00009 
00010 #include"globals.hh"
00011 #include "BDSAcceleratorComponent.hh"
00012 #include "BDSMaterials.hh"
00013 #include "G4LogicalVolume.hh"
00014 
00015 #include "G4FieldManager.hh"
00016 #include "G4ChordFinder.hh"
00017 #include "G4Mag_UsualEqRhs.hh"
00018 #include "G4UserLimits.hh"
00019 #include "G4VisAttributes.hh"
00020 //#include "BDSLaserCompton.hh"
00021 
00022 class BDSLaserWire :public BDSAcceleratorComponent
00023 {
00024 public:
00025   BDSLaserWire(G4String aName,G4double aLength,
00026                G4double aWavelength, G4ThreeVector aDirection,
00027                G4ThreeVector aPosition=0, G4double xSigma=0, G4double ySigma=0);
00028   ~BDSLaserWire();
00029 
00030   inline void SetLaserDirection(G4ThreeVector aDirection);
00031   inline G4ThreeVector GetLaserDirection();
00032 
00033   inline void SetLaserWavelength(G4double aWavelength);
00034   inline G4double GetLaserWavelength();
00035 
00036   //  G4VProcess* GetLaserWireProcess();
00037 
00038 protected:
00039 
00040 private:
00041   void LaserWireLogicalVolume();
00042   G4VisAttributes* SetVisAttributes();
00043   G4UserLimits* itsUserLimits;
00044   G4VisAttributes* itsVisAttributes;
00045 
00046   //  BDSLaserCompton* itsLaserCompton;
00047   G4ThreeVector itsLaserDirection;
00048   G4double itsLaserWavelength;
00049 };
00050 
00051 inline void BDSLaserWire::SetLaserDirection(G4ThreeVector aDirection)
00052 {itsLaserDirection=aDirection;}
00053 
00054 inline G4ThreeVector BDSLaserWire::GetLaserDirection()
00055 {return itsLaserDirection;}
00056 
00057 inline void BDSLaserWire::SetLaserWavelength(G4double aWavelength)
00058 {itsLaserWavelength=aWavelength;}
00059 
00060 inline G4double BDSLaserWire::GetLaserWavelength()
00061 {return itsLaserWavelength;}
00062 
00063 //inline G4VProcess* BDSLaserWire::GetLaserWireProcess()
00064 //{return itsLaserCompton;}
00065 
00066 #endif

Generated on Wed Mar 5 17:25:22 2008 for BDSIM by  doxygen 1.5.3