This macro runs three "games" that each nicely illustrate the graphics capabilities of ROOT.
Thanks to the clever usage of TTimer objects it looks like they are all executing in parallel (emulation of multi-threading). It uses the small classes generated in $ROOTSYS/test/Hello, Aclock, Tetris
#ifndef __RUN_GAMES__
{
printf(
"===>The $(ROOTSYS)/test/Aclock library failed to load\n");
}
printf(
"===>The $(ROOTSYS)/test/Hello library failed to load\n");
}
printf(
"===>The $(ROOTSYS)/test/Tetris library failed to load\n");
}
printf(
"ERROR: at least one of the shared libs in $ROOTSYS/test didn't load properly\n");
return;
}
gROOT->ProcessLine(
"#define __RUN_GAMES__ 1");
gROOT->ProcessLine(
"#include \"Hello.h\"");
gROOT->ProcessLine(
"#include \"Aclock.h\"");
gROOT->ProcessLine(
"#include \"Tetris.h\"");
gROOT->ProcessLine(
"#include \"games.C\"");
gROOT->ProcessLine(
"rungames()");
gROOT->ProcessLine(
"#undef __RUN_GAMES__");
}
#else
{
}
#endif
bool Bool_t
Boolean (0=false, 1=true) (bool)
int Int_t
Signed integer 4 bytes (int)
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
R__EXTERN TSystem * gSystem
const char * GetName() const override
Returns name of object.
virtual int Load(const char *module, const char *entry="", Bool_t system=kFALSE)
Load a shared library.
- Author
- Valeriy Onuchin
Definition in file games.C.