Hi Francesco,
It is difficult to come with a diagnostic without a full copy of your
code. One thing wrong for sure, You should remove the line#
gROOT->Reset();
This statement should be used only in unnamed macros executing in the
global scope. In your case, this has the effect to remove all the
definitions in #include "ana_dali_mc.h"
Rene Brun
On Fri, 20 Sep 2002, Perfetto Francesco wrote:
> Hi Rooters,
> I have a problem with a MakeClass().
> I have do a chain of root files and to this chain I have applicate
> MakeClass() method that crete me the two files analisi.C and analisi.h.
> In the file analisi.C I have put my analisys program; this program recall
> a function (that I have put out the function analisi::Loop() and is
> important that it stay out) that use variables included in the chain,
> the problem is that after load the program (.L analisi.C, analisi
> mio),when use the loop function (mio.Loop() ) it say me :
> root [0] .L ana_dali_mc.C
> root [1] ana_dali_mc mio
> root [2] mio.Loop(110)
> Error: < Error: Symbol ntv is not defined in current scope
> FILE:ana_dali_mc.C LINE:13
> Error: Binary operator oprand missing FILE:ana_dali_mc.C LINE:13
> *** Interpreter error recovered ***
> root [3]
>
> Someone can tell me where i mistake ?
>
> Double_t delta_egamma()
> {
> const Double_t Mpich = 139.56995;
> ..
>
> for(Int_t i=0;i<ntv;i++) // ntv = numero tracce da un vertice.
> {
> num_v = iv[i]; // iv[ntv] = indice di vertice.
> ...
> }
>
> #define ana_dali_mc_cxx
> #include "ana_dali_mc.h"
>
> gROOT->Reset();
>
> void ana_dali_mc::Loop(Int_t howMany)
> {
> ...
> taglio = delta_egamma();
> tmc ->Fill();
> ...
> tmc->Write();
> f1->Write();
> f1->Close();
> }
>
> Regards,
> Francesco.
>
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:10 MET