When I am compiling a macro in ROOT by this way:
root [0] gSystem->Load("actarsim.sl");
root [1] .L analysisMacro.C+
it gives the following errors:
Info in <TUnixSystem::ACLiC>: creating shared library /home/actar/ActarSim/./analysisMacro_C.so
/home/actar/ActarSim/./analysisMacro.C: In function ‘void analizeEvents(char*, char*, char*, Int_t, Int_t)’:
/home/actar/ActarSim/./analysisMacro.C:126: error: ‘ActarSimData’ was not declared in this scope
/home/actar/ActarSim/./analysisMacro.C:126: error: ‘theData’ was not declared in this scope
/home/actar/ActarSim/./analysisMacro.C:127: error: ‘ActarSimBeamInfo’ was not declared in this scope
/home/actar/ActarSim/./analysisMacro.C:127: error: ‘beamInfo’ was not declared in this scope
However, all these classes, such as “ActarSimBeamInfo” are already included in the library file “actarsim.sl”. Why ROOT says that these classes are not declared?
It will give the same errors even if I put the "gSystem->Load(“actarsim.sl”);"
inside this macro file.
Thanks!
Pang