00001 /* BDSIM code. Version 1.0 00002 Author: Grahame A. Blair, Royal Holloway, Univ. of London. 00003 Last modified 5.3.2005 00004 Copyright (c) 2005 by G.A.Blair. ALL RIGHTS RESERVED. 00005 */ 00006 00007 #ifndef BDSSamplerCylinder_h 00008 #define BDSSamplerCylinder_h 1 00009 00010 #include "globals.hh" 00011 #include "BDSAcceleratorComponent.hh" 00012 #include "BDSMaterials.hh" 00013 #include "G4LogicalVolume.hh" 00014 00015 #include "G4UserLimits.hh" 00016 #include "G4VisAttributes.hh" 00017 00018 class BDSSamplerCylinder :public BDSAcceleratorComponent 00019 { 00020 public: 00021 BDSSamplerCylinder(G4String aName,G4double aLength, G4double aRadius); 00022 ~BDSSamplerCylinder(); 00023 00024 static int GetNSamplers(); 00025 static void AddExternalSampler(); 00026 00027 protected: 00028 00029 private: 00030 void SamplerCylinderLogicalVolume(); 00031 G4VisAttributes* SetVisAttributes(); 00032 G4double itsRadius; 00033 00034 // field related objects: 00035 G4VisAttributes* itsVisAttributes; 00036 00038 int nThisSampler; 00040 static int nSamplers; 00041 }; 00042 00043 #endif