#ifndef G4HumanPhantomMessenger_h
#define G4HumanPhantomMessenger_h 1

class DetectorConstruction;

class G4UIcommand;
class G4UIdirectory;
class G4UIcmdWithAString;
class G4UIcmdWithoutParameter;

#include "G4UImessenger.hh"
#include "globals.hh"

#include <iostream>

class G4HumanPhantomMessenger : public G4UImessenger {
public:
    G4HumanPhantomMessenger(DetectorConstruction* myUsrPhtm);
    ~G4HumanPhantomMessenger();

    void SetNewValue(G4UIcommand* command, G4String newValue);

    void AddBodyPart(G4String);  // Set Body Parts Sensitivity

private:
    DetectorConstruction* myUserPhantom;

    G4UIdirectory* phantomDir;
    G4UIdirectory* bpDir;

    G4UIcmdWithAString* modelCmd;
    G4UIcmdWithAString* sexCmd;
    G4UIcmdWithAString* bodypartCmd;
    G4UIcmdWithoutParameter* endCmd;

    G4String bodypart;
    G4bool bps;
};

#endif
