/scratch0/jsnuveri/BDSIM/BDSIMgit/bdsim/src/BDSCCDPixel.cc

00001 #include "BDSGlobalConstants.hh" 
00002 #include "BDSCCDPixel.hh"
00003 #include "BDSCCDPixelSD.hh"
00004 #include "BDSMaterials.hh"
00005 #include "G4Box.hh"
00006 #include "G4VisAttributes.hh"
00007 #include "G4LogicalVolume.hh"
00008 #include "G4VPhysicalVolume.hh"
00009 #include "BDSDebug.hh"
00010 
00011 #include "G4SDManager.hh"
00012 
00013 extern BDSCCDPixelSD* BDSCCDPixelSensDet;
00014 
00015 
00016 //============================================================
00017 BDSCCDPixel::BDSCCDPixel (G4ThreeVector size, G4String name):
00018   _size(size), _name(name+"_CCDPixel")
00019 {
00020   G4cout << __METHOD_NAME__ << G4endl;
00021   G4SDManager* SDMan = G4SDManager::GetSDMpointer();
00022   _sensDet=new BDSCCDPixelSD(_name);
00023   SDMan->AddNewDetector(_sensDet);
00024   build();
00025   _log->SetSensitiveDetector(_sensDet);
00026   G4cout << __METHOD_END__ << G4endl;
00027 }
00028 
00029 
00030 void BDSCCDPixel::visAtt()
00031 {
00032   _visAtt=new G4VisAttributes(G4Colour(0.8,0.2,0.0));
00033   _visAtt->SetForceWireframe(true);
00034   _log->SetVisAttributes(_visAtt);
00035 }
00036 
00037 void BDSCCDPixel::build(){
00038   G4cout << __METHOD_NAME__ << G4endl;
00039   _solid  = new G4Box((_name+"_solid").c_str(),_size.x()/2.0,_size.y()/2.0,_size.z()/2.0);
00040   _log = new G4LogicalVolume(_solid,BDSMaterials::Instance()->GetMaterial("fusedsilica"),(_name+"_log").c_str(),0,0,0);
00041   visAtt();
00042   G4cout << __METHOD_END__ << G4endl;
00043 }
00044 
00045 G4String BDSCCDPixel::name(){
00046   return _name;
00047 }
00048 
00049 G4LogicalVolume* BDSCCDPixel::log(){
00050   return _log;
00051 }
00052 
00053 G4ThreeVector BDSCCDPixel::size(){
00054   return _size;
00055 }
00056 
00057 BDSCCDPixel::~BDSCCDPixel(){
00058 }

Generated on 28 Jun 2015 for BDSIM by  doxygen 1.4.7