I noted that the pre-programmed scores have in the ProcessHits() function a part that is filling histogram.
For example, in G4PsEnergyDeposit, we can find
if(!hitIDMap.empty() && hitIDMap.find(index) != hitIDMap.cend())
{
auto filler = G4VScoreHistFiller::Instance();
if(filler == nullptr)
{
G4Exception(
"G4PSEnergyDeposit::ProcessHits", "SCORER0123", JustWarning,
"G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
}
else
{
filler->FillH1(hitIDMap[index], edep, wei);
}
}
In this code, an histogram of the deposited energy seems to be filled. However, I am not sure how to access it.
First, it seems the raw execution does not satisfy the condition !hitIDMap.empty() && hitIDMap.find(index) != hitIDMap.cend(). Therefore, the code is not going through this part of the code. Is there something to activate to fill the histogram ?
Second, once this histogram will be filled, how can I access it? Should it be through G4AnalysisManager? Should I add some code in the RunAction or some commands in the mac file ?
Thanks for your help, I do not understand quite well how to access this histogram and I do not find G4VScoreHistFiller in the documentation.