|Message: Clear the memory allocated for G4VPrimitiveScorer?||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)|
I have been working on adapting an application based on example/extended/runAndEvent/RE02 where G4VPrimitiveScorer (or its derived classes) were called in the RE02DetectorConstruction.cc. I did a valgrind run on example RE02, and found that there are a few memory leak points potentially related to the 'new' statement called when setting up the G4MultiFunctionalDetector in RE02DetectorConstruction.cc. My question in short is ...
does one have to clear the memory allocated when declaring the derived scorer class? in another word, for every 'new' statement of the derived scorer class, do i need to delete it as well?
In the destructor of RE02DetectorConstruction, there is not action of deleting these pointers allocated by a new statement e.g. [line 315 in RE02DetectorConstruction.cc] G4PSEnergyDeposit* scorer0 = new RE02PSEnergyDeposit(psName="totalEDep",fNx,fNy,fNz);
(see this link for RE02DetectorConstruction.cc code: http://www-geant4.kek.jp/lxr/source/examples/extended/runAndEvent/RE02/src/RE02DetectorConstruction.cc?v=9.4.p2)
I have been trying to clear some of the memory issues that i run into while adapting this example to my application. When I increase the amount of voxels in the geometry (i.e. more volumes to track), my application tends to get stuck when running a 1M or 10M event simulation.
Let me know if you can help me shed some light in how to appropriately clear allocated memory by the pointers of classes that are derived from Geant4 classes.
Thanks a lot for your time and help in advance!
|Inline Depth:||Outline Depth:||Add message:|