Geant4 Cross Reference |
1 // 1 2 // ******************************************* 3 // * License and Disclaimer 4 // * 5 // * The Geant4 software is copyright of th 6 // * the Geant4 Collaboration. It is provided 7 // * conditions of the Geant4 Software License 8 // * LICENSE and available at http://cern.ch/ 9 // * include a list of copyright holders. 10 // * 11 // * Neither the authors of this software syst 12 // * institutes,nor the agencies providing fin 13 // * work make any representation or warran 14 // * regarding this software system or assum 15 // * use. Please see the license in the file 16 // * for the full disclaimer and the limitatio 17 // * 18 // * This code implementation is the result 19 // * technical work of the GEANT4 collaboratio 20 // * By using, copying, modifying or distri 21 // * any work based on the software) you ag 22 // * use in resulting scientific publicati 23 // * acceptance of all terms of the Geant4 Sof 24 // ******************************************* 25 // 26 // 27 // Previous authors: G. Guerrieri, S. Guatelli 28 // Authors (since 2007): S. Guatelli, Universi 29 // 30 // 31 #include "G4MIRDBodyFactory.hh" 32 #include "G4MIRDStomach.hh" 33 #include "G4MIRDSmallIntestine.hh" 34 #include "G4MIRDUpperLargeIntestine.hh" 35 #include "G4MIRDLowerLargeIntestine.hh" 36 #include "G4MIRDLeftKidney.hh" 37 #include "G4MIRDRightKidney.hh" 38 #include "G4MIRDLiver.hh" 39 #include "G4MIRDPancreas.hh" 40 #include "G4MIRDSpleen.hh" 41 #include "G4MIRDUrinaryBladder.hh" 42 #include "G4MIRDLeftLung.hh" 43 #include "G4MIRDRightLung.hh" 44 #include "G4MIRDHeart.hh" 45 #include "G4MIRDBrain.hh" 46 #include "G4MIRDHead.hh" 47 #include "G4MIRDTrunk.hh" 48 #include "G4MIRDMaleGenitalia.hh" 49 #include "G4MIRDLeftLeg.hh" 50 #include "G4MIRDRightLeg.hh" 51 #include "G4MIRDThyroid.hh" 52 #include "G4MIRDThymus.hh" 53 #include "G4MIRDUterus.hh" 54 #include "G4MIRDLeftBreast.hh" 55 #include "G4MIRDRightBreast.hh" 56 #include "G4MIRDRightOvary.hh" 57 #include "G4MIRDLeftOvary.hh" 58 #include "G4MIRDUpperSpine.hh" 59 #include "G4MIRDMiddleLowerSpine.hh" 60 #include "G4MIRDLeftLegBone.hh" 61 #include "G4MIRDRightLegBone.hh" 62 #include "G4MIRDLeftClavicle.hh" 63 #include "G4MIRDRightClavicle.hh" 64 #include "G4MIRDLeftArmBone.hh" 65 #include "G4MIRDRightArmBone.hh" 66 #include "G4MIRDSkull.hh" 67 #include "G4MIRDRibCage.hh" 68 #include "G4MIRDPelvis.hh" 69 #include "G4MIRDLeftTeste.hh" 70 #include "G4MIRDRightTeste.hh" 71 #include "G4MIRDLeftScapula.hh" 72 #include "G4MIRDRightScapula.hh" 73 #include "G4MIRDLeftAdrenal.hh" 74 #include "G4MIRDRightAdrenal.hh" 75 76 G4MIRDBodyFactory::G4MIRDBodyFactory() 77 { 78 // Map with name of the fOrgan and pointer t 79 fOrgan["Head"] = new G4MIRDHead(); 80 fOrgan["Trunk"] = new G4MIRDTrunk(); 81 fOrgan["LeftLeg"] = new G4MIRDLeftLeg(); 82 fOrgan["RightLeg"] = new G4MIRDRightLeg(); 83 fOrgan["Skull"] = new G4MIRDSkull(); 84 fOrgan["LeftArmBone"] = new G4MIRDLeftArmBon 85 fOrgan["RightArmBone"] = new G4MIRDRightArmB 86 fOrgan["UpperSpine"] = new G4MIRDUpperSpine( 87 fOrgan["MiddleLowerSpine"] = new G4MIRDMiddl 88 fOrgan["Pelvis"]= new G4MIRDPelvis(); 89 fOrgan["RibCage"] = new G4MIRDRibCage(); 90 fOrgan["LeftClavicle"]= new G4MIRDLeftClavic 91 fOrgan["RightClavicle"] = new G4MIRDRightCla 92 fOrgan["LeftLegBone"] = new G4MIRDLeftLegBon 93 fOrgan["RightLegBone"] = new G4MIRDRightLegB 94 fOrgan["LeftScapula"]= new G4MIRDLeftScapula 95 fOrgan["RightScapula"]= new G4MIRDRightScapu 96 fOrgan["Heart"] = new G4MIRDHeart(); 97 fOrgan["Thyroid"] = new G4MIRDThyroid(); 98 fOrgan["Thymus"] = new G4MIRDThymus(); 99 fOrgan["MaleGenitalia"] = new G4MIRDMaleGeni 100 fOrgan["Brain"] = new G4MIRDBrain(); 101 fOrgan["Stomach"] = new G4MIRDStomach(); 102 fOrgan["UpperLargeIntestine"] = new G4MIRDUp 103 fOrgan["LowerLargeIntestine"] = new G4MIRDLo 104 fOrgan["SmallIntestine"] = new G4MIRDSmallIn 105 fOrgan["Spleen"] = new G4MIRDSpleen(); 106 fOrgan["Pancreas"] = new G4MIRDPancreas(); 107 fOrgan["LeftKidney"] = new G4MIRDLeftKidney( 108 fOrgan["RightKidney"] = new G4MIRDRightKidne 109 fOrgan["UrinaryBladder"] = new G4MIRDUrinary 110 fOrgan["Uterus"] = new G4MIRDUterus(); 111 fOrgan["Liver"] = new G4MIRDLiver(); 112 fOrgan["LeftLung"]= new G4MIRDLeftLung(); 113 fOrgan["RightLung"] = new G4MIRDRightLung(); 114 fOrgan["LeftOvary"] = new G4MIRDLeftOvary(); 115 fOrgan["RightOvary"] = new G4MIRDRightOvary( 116 fOrgan["LeftTeste"] = new G4MIRDLeftTeste(); 117 fOrgan["RightTeste"] = new G4MIRDRightTeste( 118 fOrgan["RightBreast"] = new G4MIRDRightBreas 119 fOrgan["LeftBreast"] = new G4MIRDLeftBreast( 120 fOrgan["LeftAdrenal"]= new G4MIRDLeftAdrenal 121 fOrgan["RightAdrenal"]= new G4MIRDRightAdren 122 } 123 124 G4MIRDBodyFactory::~G4MIRDBodyFactory() 125 { 126 delete fOrgan["Head"]; fOrgan["Head"]=nullpt 127 delete fOrgan["RightLeg"]; fOrgan["RightLeg" 128 delete fOrgan["LeftLeg"]; fOrgan["LeftLeg"]= 129 delete fOrgan["Trunk"]; fOrgan["Trunk"]=null 130 delete fOrgan["RightScapula"];fOrgan["RightS 131 delete fOrgan["LeftScapula"];fOrgan["LeftSca 132 delete fOrgan["RightLegBone"]; fOrgan["Right 133 delete fOrgan["LeftLegBone"]; fOrgan["LeftLe 134 delete fOrgan["RibCage"]; fOrgan["RibCage"] 135 delete fOrgan["MiddleLowerSpine"]; fOrgan["M 136 delete fOrgan["UpperSpine"]; fOrgan["UpperSp 137 delete fOrgan["Skull"]; fOrgan["Skull"]=null 138 delete fOrgan["RightArmBone"]; fOrgan["Right 139 delete fOrgan["LeftArmBone"]; fOrgan["LeftAr 140 delete fOrgan["RightClavicle"]; fOrgan["Righ 141 delete fOrgan["LeftClavicle"]; fOrgan["LeftC 142 delete fOrgan["Pelvis"]; fOrgan["Pelvis"]=nu 143 delete fOrgan["RightAdrenal"]; fOrgan["Right 144 delete fOrgan["LeftAdrenal"]; fOrgan["LeftAd 145 delete fOrgan["LeftBreast"]; fOrgan["LeftBre 146 delete fOrgan["RightBreast"]; fOrgan["RightB 147 delete fOrgan["RightOvary"]; fOrgan["RightOv 148 delete fOrgan["LeftOvary"]; fOrgan["LeftOvar 149 delete fOrgan["RightTeste"]; fOrgan["RightTe 150 delete fOrgan["LeftTeste"]; fOrgan["LeftTest 151 delete fOrgan["RightLung"]; fOrgan["RightLun 152 delete fOrgan["LeftLung"]; fOrgan["LeftLung" 153 delete fOrgan["Uterus"]; fOrgan["Uterus"]=nu 154 delete fOrgan["UrinaryBladder"]; fOrgan["Uri 155 delete fOrgan["RightKidney"]; fOrgan["RightK 156 delete fOrgan["LeftKidney"]; fOrgan["LeftKid 157 delete fOrgan["Pancreas"]; fOrgan["Pancreas" 158 delete fOrgan["Spleen"]; fOrgan["Spleen"]=nu 159 delete fOrgan["LowerLargeIntestine"]; fOrgan 160 delete fOrgan["SmallIntestine"]; fOrgan["Sma 161 delete fOrgan["UpperLargeIntestine"]; fOrgan 162 delete fOrgan["Stomach"]; fOrgan["Stomach"]= 163 delete fOrgan["Brain"]; fOrgan["Brain"]=null 164 delete fOrgan["Heart"]; fOrgan["Heart"]=null 165 delete fOrgan["Thymus"]; fOrgan["Thymus"]=nu 166 delete fOrgan["MaleGenitalia"]; fOrgan["Male 167 delete fOrgan["Thyroid"]; fOrgan["Thyroid"]= 168 delete fOrgan["Liver"]; fOrgan["Liver"]=null 169 } 170 171 G4VPhysicalVolume* G4MIRDBodyFactory::CreateOr 172 const G4String& colourName, G4bo 173 G4bool sensitivity) 174 { 175 return fOrgan[organ_name]->Construct(organ_n 176 } 177 178 179