Hello,
I am trying to execute the following macro to create a file geometry.root which contains a simple box –
void GeometryCreator() {
gSystem->Load("libGeom");
new TGeoManager("World", "Simple box geometry");
TGeoElement *u_ele = new TGeoElement("U238", "U238", 238, 92);
TGeoMaterial *u_mat = new TGeoMaterial("U238_MAT", u_ele, 1.0);
TGeoMedium *u_med = new TGeoMedium("U238_MED", 0, u_mat);
TGeoMaterial *air_mat = new TGeoMaterial("Vacuum", 0, 0, 0);
TGeoMedium *air_med = new TGeoMedium("Vacuum", 0, air_mat);
TGeoVolume *top = gGeoManager->MakeBox("Top", air_med, 100, 100, 100);
TGeoVolume *u_block = gGeoManager->MakeBox("U238_BOX", u_med, 10, 10, 10);
gGeoManager->SetTopVolume(top);
top->AddNodeOverlap(u_block, 1, new TGeoCombiTrans(0, 0, 4, new TGeoRotation("U238_BOX", 0, 0, 0)));
gGeoManager->CloseGeometry();
top->SetLineColor(kMagenta);
u_block->SetLineColor(kBlue);
gGeoManager->SetTopVisible();
TCanvas *can = new TCanvas("Geometry","Display created geometry");
top->Draw();
gGeoManager->Export("geomtery.root","v");
}
However, this gives me a warning –
Warning in <TBufferFile::WriteObjectAny>: since TGeoNavigatorArray has no public constructor
which can be called without argument, objects of this class
can not be read with the current library. You will need to
add a default constructor before attempting to read it.
And I am not able to read this file back using Import. Could you tell me what I am doing wrong here?
Cheers,
Subho