G4-DESCSS/include/G4PhantomBuilder.h
2022-05-18 20:01:10 +08:00

78 lines
2.8 KiB
C++

#ifndef DESCSS_PhantomBuilder_h
#define DESCSS_PhantomBuilder_h 1
#include "G4BasePhantomBuilder.h"
#include "G4VPhysicalVolume.hh"
#include "globals.hh"
class G4BasePhantomBuilder;
class G4VPhysicalVolume;
class G4VBodyFactory;
class G4PhantomBuilder : public G4BasePhantomBuilder {
public:
G4PhantomBuilder();
~G4PhantomBuilder();
void BuildHead(const G4String&, G4bool, G4bool);
void BuildTrunk(const G4String&, G4bool, G4bool);
void BuildLeftLeg(const G4String&, G4bool, G4bool);
void BuildRightLeg(const G4String&, G4bool, G4bool);
void BuildUpperSpine(const G4String&, G4bool, G4bool);
void BuildMiddleLowerSpine(const G4String&, G4bool, G4bool);
void BuildLeftLegBone(const G4String&, G4bool, G4bool);
void BuildRightLegBone(const G4String&, G4bool, G4bool);
void BuildLeftArmBone(const G4String&, G4bool, G4bool);
void BuildRightArmBone(const G4String&, G4bool, G4bool);
void BuildSkull(const G4String&, G4bool, G4bool);
void BuildRibCage(const G4String&, G4bool, G4bool);
void BuildPelvis(const G4String&, G4bool, G4bool);
void BuildLeftScapula(const G4String&, G4bool, G4bool);
void BuildRightScapula(const G4String&, G4bool, G4bool);
void BuildLeftAdrenal(const G4String&, G4bool, G4bool);
void BuildRightAdrenal(const G4String&, G4bool, G4bool);
void BuildLeftClavicle(const G4String&, G4bool, G4bool);
void BuildRightClavicle(const G4String&, G4bool, G4bool);
void BuildBrain(const G4String&, G4bool, G4bool);
void BuildHeart(const G4String&, G4bool, G4bool);
void BuildLeftLung(const G4String&, G4bool, G4bool);
void BuildRightLung(const G4String&, G4bool, G4bool);
void BuildStomach(const G4String&, G4bool, G4bool);
void BuildSmallIntestine(const G4String&, G4bool, G4bool);
void BuildUpperLargeIntestine(const G4String&, G4bool, G4bool);
void BuildLowerLargeIntestine(const G4String&, G4bool, G4bool);
void BuildLeftKidney(const G4String&, G4bool, G4bool);
void BuildRightKidney(const G4String&, G4bool, G4bool);
void BuildLiver(const G4String&, G4bool, G4bool);
void BuildPancreas(const G4String&, G4bool, G4bool);
void BuildSpleen(const G4String&, G4bool, G4bool);
void BuildUrinaryBladder(const G4String&, G4bool, G4bool);
void BuildThyroid(const G4String&, G4bool, G4bool);
void BuildThymus(const G4String&, G4bool, G4bool);
void SetModel(G4String);
void SetMotherVolume(G4VPhysicalVolume*);
G4VPhysicalVolume* GetPhantom();
protected:
G4VBodyFactory* body;
G4String model;
G4VPhysicalVolume* motherVolume;
G4VPhysicalVolume* headVolume;
G4VPhysicalVolume* trunkVolume;
G4VPhysicalVolume* leftLegVolume;
G4VPhysicalVolume* rightLegVolume;
G4VPhysicalVolume* maleGenitaliaVolume;
};
#endif