Re: [VMC] Can't change physics list.

From: Ivana Hrivnacova (ihrivnac@mail.cern.ch)
Date: Mon Sep 20 2004 - 14:41:20 MEST


 Hi Yuri,

 This example has to be updated for the recent
 changes in the VMC.
 There has beed added a pure virtual function
 in TG4VRunConfiguration:
   virtual G4bool IsSpecialStacking() const = 0;
 this function has to be implemented in
 Ex03RunConfiguration; you have just to add
 in E03/geant4/include/Ex03RunConfiguration.h:
    virtual G4bool IsSpecialStacking() const { return false; }
 and recompile in E03/geant4 directory.

 The function should return true only if the
 TG4SpecialStackingAction is instantiated in
 the run configuration. 

 Best regards,

 Ivana

==============================================================
e-mail:  Ivana.Hrivnacova@cern.ch
address: Institut Physique Nucleaire, 91406 Orsay, France
phone:   (33) 01 69 15 65 94
==============================================================

On Mon, 20 Sep 2004, Y. Shitov wrote:

> Hi to all VMC users,
> 
> So, finally I successively compiled and run my VMC-application on the
> base of examples given with small modifications. Thanks to Andrei and
> Ivana for help!
> 
> But I have problems with more serious changes. As I would like to
> change physics pattern, I took the example E03ext.tar.gz given at:
> 
> http://root.cern.ch/root/vmctalk/vmc03/0006.html
> 
> but failed to implement it. Compilation reported error:
> 
> make: [depend] Error 127 (ignored)
> 
> but library was created and then loaded OK.
> Fatal error occurs because root fails to create the corresponding
> class:
> 
> root [0] .x g4.C 
> Loading Geant4 granular libraries ...
> Loading Geant4 granular libraries ... finished
> Load library with a user physics list... OK
> Load library with a user run configuration... OK
> Error: Can't call Ex03RunConfiguration::Ex03RunConfiguration() in
> current scope FILE:g4.C LINE:29
> Possible candidates are...
> filename       line:size busy function type and name  (in
> Ex03RunConfiguration)
> filename       line:size busy function type and name  (in
> TG4VRunConfiguration)
> *** Interpreter error recovered ***
> 
> Here the content of library for this symbol:
> 
> $ nm lib/libgeant4e03.so | grep Ex03RunConfiguration
> 
> 000069e8 D G__geant4e03CintLN_Ex03RunConfiguration
> 000032de t _GLOBAL__I__ZN20Ex03RunConfigurationC2Ev
> 000043cc t _GLOBAL__I__ZN4ROOT20GenerateInitInstanceEPK20Ex03RunConfiguration
> 00003c84 t _Z35G__setup_memvarEx03RunConfigurationv
> 00003eca t _Z36G__setup_memfuncEx03RunConfigurationv
> 00006dc8 b _ZGVZN4ROOT20GenerateInitInstanceEPK20Ex03RunConfigurationE8instance
> 00002ec2 T _ZN20Ex03RunConfiguration23CreateUserConfigurationEv
> 00002d9a T _ZN20Ex03RunConfigurationC1Ev
> 00002d0c T _ZN20Ex03RunConfigurationC2Ev
> 00002e88 T _ZN20Ex03RunConfigurationD0Ev
> 00002e58 T _ZN20Ex03RunConfigurationD1Ev
> 00002e28 T _ZN20Ex03RunConfigurationD2Ev
> 00003424 T _ZN4ROOT20GenerateInitInstanceEPK20Ex03RunConfiguration
> 00003736 t _ZN4ROOT24Ex03RunConfiguration_IsAEPKv
> 00003788 t _ZN4ROOT27delete_Ex03RunConfigurationEPv
> 0000381c t _ZN4ROOT29destruct_Ex03RunConfigurationEPv
> 00003510 t _ZN4ROOT31Ex03RunConfiguration_DictionaryEv
> 000037ac t _ZN4ROOT32deleteArray_Ex03RunConfigurationEPv
> 0000353e T _ZN4ROOT32Ex03RunConfiguration_ShowMembersEPvR16TMemberInspectorPc
> 00006970 V _ZTI20Ex03RunConfiguration
> 00004688 V _ZTS20Ex03RunConfiguration
> 00006958 V _ZTV20Ex03RunConfiguration
> 00006de0 b _ZZN4ROOT20GenerateInitInstanceEPK20Ex03RunConfigurationE8instance
> 
> What is the reason of problem? I looks like some C++ trick with
> initialization of nested parent classes of Ex03RunConfiguration, but
> I'm not a big C++ expert...
> 
> Best,
> Yuri.
> 
> 

-- 



This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 11:25:00 MET