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 "BDSSamplerSD.hh" 00013 00014 class BDSSamplerCylinder :public BDSAcceleratorComponent 00015 { 00016 public: 00017 BDSSamplerCylinder(G4String aName,G4double aLength, G4double aRadius); 00018 ~BDSSamplerCylinder(); 00019 00020 static int GetNSamplers(); 00021 static void AddExternalSampler(G4String outputName); 00022 00024 static std::vector <G4String> outputNames; 00025 00027 static BDSSamplerSD* GetSensitiveDetector(){return SensitiveDetector;} 00028 00029 private: 00030 virtual void BuildContainerLogicalVolume(); 00031 00032 G4double itsRadius; 00033 00035 int nThisSampler; 00037 static int nSamplers; 00039 static BDSSamplerSD* SensitiveDetector; 00040 }; 00041 00042 #endif