Main Page | Class Hierarchy | Class List | File List | Class Members | File Members | Related Pages

GLG4OpAttenuation.hh

00001 // This file is part of the GenericLAND software library.
00002 // $Id: GLG4OpAttenuation.hh,v 1.1.1.1 2004/12/21 22:29:48 GLG4sim Exp $
00003 //
00004 //  "Attenuation" (absorption or scattering) of optical photons
00005 //
00006 //   GenericLAND Simulation
00007 //
00008 //   Original: Glenn Horton-Smith, Dec 2001
00009 //
00010 // GLG4OpAttenuation.hh
00011 // 
00012 
00013 #ifndef GLG4OpAttenuation_h
00014 #define GLG4OpAttenuation_h 1
00015 
00016 /////////////
00017 // Includes
00018 /////////////
00019 
00020 #include "G4OpAbsorption.hh"
00021 
00022 /////////////////////
00023 // Class Definition
00024 /////////////////////
00025 
00026 class GLG4OpAttenuation : public G4OpAbsorption
00027 {
00028 
00029 private:
00030 
00031         //////////////
00032         // Operators
00033         //////////////
00034 
00035         // GLG4OpAttenuation& operator=(const GLG4OpAttenuation &right);
00036 
00037 public: // Without description
00038 
00039         ////////////////////////////////
00040         // Constructors and Destructor
00041         ////////////////////////////////
00042 
00043         GLG4OpAttenuation(const G4String& processName = "Attenuation");
00044 
00045         // GLG4OpAttenuation(const GLG4OpAttenuation &right);
00046 
00047         ~GLG4OpAttenuation();
00048 
00049         ////////////
00050         // Methods
00051         ////////////
00052 
00053         // G4bool IsApplicable(const G4ParticleDefinition& aParticleType);
00054         // Returns true -> 'is applicable' only for an optical photon.
00055 
00056         // G4double GetMeanFreePath(const G4Track& aTrack,
00057         //                          G4double ,
00058         //                          G4ForceCondition* );
00059         // Returns the absorption length for bulk absorption of optical
00060         // photons in media with a specified attenuation length. 
00061 
00062 public: // With description
00063 
00064         G4VParticleChange* PostStepDoIt(const G4Track& aTrack,
00065                                         const G4Step&  aStep);
00066         // This is the method implementing attenuation of optical 
00067         // photons.  Fraction of photons scattered or absorbed is
00068         // determined by the MaterialProperyVector "OPSCATFRAC".
00069 
00070 };
00071 
00072 #endif /* GLG4OpAttenuation_h */

Generated on Fri Jul 6 13:31:46 2007 for GLG4sim by  doxygen 1.3.9.1