Message: Allowing CalorimeterSD.cc to "talk" to HistoManager.cc Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Question Allowing CalorimeterSD.cc to "talk" to HistoManager.cc 

Forum: Event and Track Management
Date: 23 Aug, 2014
From: Jaime Gomez <Jaime Gomez>

Hi All,

My current setup generates a hit collection in the CalorimeterSD.cc. This hit collection reports 1 number per detector channel, just like we would see in actual data.

Now however, I want to plot the individual hit energies. That is to say if 20 different particle STEPS go into a single HIT, I want to know what those 20 numbers were.

So in my CalorimeterSD.cc I did the following:

+++++++++++++++++CODE+++++++++++++++++++++++++++++++++++++++ #include "HistoManager.hh"

CalorimeterSD::CalorimeterSD(G4String SDname,HistoManager* hist)
  : G4VSensitiveDetector(SDname),myana(hist)

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

That way I could pass information to my HistoManager each time there was a hit.

!!!This was a problem because in my DetectorConstructor when it calls CalorimeterSD, it does not know what to do anymore!!!

+++++++++++++++++++CODE+++++++++++++++++++++++++++++++++++++++++

ExN02DetectorConstruction::ExN02DetectorConstruction(HistoManager* hist)
:solidWorld(0),  logicWorld(0),  physiWorld(0),
 RPD_Quartz(0), RPD_Scil(0), stepLimit(0), aCalorimeterSD(0),
 fWorldLength(0.), myana(hist)
{
//  fpMagField = new ExN02MagneticField();                                                                
  detectorMessenger = new ExN02DetectorMessenger(this);
    Analysis::GetInstance()->SetDetectorConstruction(this);
}
G4VPhysicalVolume* ExN02DetectorConstruction::Construct()
{
...................
CalorimeterSD* sensitive1 = new CalorimeterSD("/RPD1",hist);
  logicRPD1->SetSensitiveDetector(sensitive1);
G4SDManager::GetSDMpointer()->AddNewDetector(sensitive1);
}
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

I am guessing that I somehow have to put the HistoManager class inside of the Construct function?

can anyone help?

J

 Add Message Add Message
to: "Allowing CalorimeterSD.cc to "talk" to HistoManager.cc"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]