|Message: Re: Accessing histograms etc defined in own UserRunAction from elsewhere||Not Logged In (login)|
Click on the Forum title, e.g. on the "Forums by Category" page, to read a sequence of postings to the Forum and its threads all in one page. If you are only interested in one thread or the thread following a specific posting, click the thread or the posting, which takes you to a smaller page, which contains only the part you are interested in and may be easier to navigate.
Messages are "chained" if there are only replies at the first level, i.e. 1/1.html, 1/1/1.html etc. In case of "chained" messages the message number is replaced by the icon and there is no indentation.
Inline: Display the subject line only or also the text of the posting(s); for the choice "All" the "Outline" choices are switched off.
|1||0||1||no text / full text of posting|
|2||1||All||text for level 1 only / text for All postings|
Outline: Choose the depth of the posting thread, successive toggle controls provide increasing detail.
|1||2||1||2 levels / 1 level (original posting)|
|2||3||2||3 levels / 2 levels|
|3||3||All||3 levels / all levels (all postings)|
Hello Lukas, It is true that G4RunManager::GetRunManager()->GetUserRunAction() will return a pointer of the base class (ie G4VUserRunAction), which is the only type know by the kernel. To have a pointer on your actual object type, you have to do a "cast": ExN06RunAction* RunAct = (ExN06RunAction*) G4RunManager::GetRunManager()->GetUserRunAction(); doing this forces the compiler to consider that the type of the object returned is of ExN06RunAction* type, and then you will be able to access your methods of this class, and your histograms. BTW, I am surprised your compiler does not complain about your line of code. Does it ? Cheers, Marc Le 01/12/2010 18:52, Lukas Schulte a écrit : > *** Discussion title: Hits, Digitization and Pileup > > Hello you wise Geant4 gurus! > > My problem is the following: > > I wrote my own run action class inheriting from G4UserRunAction > (basically I used the one from ExN06 and changed it a little) and > defined a ROOT histogram as a public member in its BeginOfRunAction > method as that is the place to do this, according to the user's guide. > > But I'd also like to fill this histogram with hits, so I need to access > it from my sensitive detector class. I tried > > ExN06RunAction* RunAct = > G4RunManager::GetRunManager()->GetUserRunAction(); > > but this gives only a pointer to a G4UserRunAction which doesn't have > the histogram as a public member. Is there any built-in handle towards > it? > > Or do I have to customize the run manager or run class or do other fancy > things like that to fill the histogram? > > Cheers, Lukas > > ------------------------------------------------------------- > Visit this GEANT4 at hypernews.slac.stanford.edu message (to reply or unsubscribe) at: > http://hypernews.slac.stanford.edu/HyperNews/geant4/get/hitsdigits/253.html