diff --git a/config/root-config.in b/config/root-config.in index f2c0851bb1b76..27e0258543a68 100755 --- a/config/root-config.in +++ b/config/root-config.in @@ -73,7 +73,7 @@ fi newlib="-lNew" rootglibs="-lGui" rootevelibs="-lEve -lEG -lGeom -lGed -lRGL" -rootlibs="-lCore -lImt -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lROOTVecOps -lTree -lTreePlayer\ +rootlibs="-lCore -lImt -lRIO -lNet -lHist -lGraf -lGraf3d -lTGeometryShapes -lGpad -lROOTVecOps -lTree -lTreePlayer\ -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -lROOTNTuple -lROOTNTupleUtil" # MultiProc is not supported on Windows diff --git a/graf3d/CMakeLists.txt b/graf3d/CMakeLists.txt index a3dbf992200d3..518c4f843e869 100644 --- a/graf3d/CMakeLists.txt +++ b/graf3d/CMakeLists.txt @@ -4,22 +4,28 @@ # For the licensing terms see $ROOTSYS/LICENSE. # For the list of contributors see $ROOTSYS/README/CREDITS. -add_subdirectory(g3d) # special CMakeLists.txt +add_subdirectory(g3d) + if(NOT WIN32 AND x11) - add_subdirectory(x3d) # special CMakeLists.txt + add_subdirectory(x3d) endif() -add_subdirectory(csg) # special CMakeLists.txt +add_subdirectory(csg) if (opengl) - if(geom) - add_subdirectory(eve) - add_subdirectory(gviz3d) - endif() add_subdirectory(gl) add_subdirectory(glad) endif() -if(webgui AND root7 AND geom) - add_subdirectory(eve7) # special CMakeLists.txt +if(geom) + add_subdirectory(TGeometryShapes) + + if(opengl) + add_subdirectory(eve) + add_subdirectory(gviz3d) + endif() + + if(webgui AND root7) + add_subdirectory(eve7) + endif() endif() diff --git a/graf3d/TGeometryShapes/CMakeLists.txt b/graf3d/TGeometryShapes/CMakeLists.txt new file mode 100644 index 0000000000000..748b77c1251ef --- /dev/null +++ b/graf3d/TGeometryShapes/CMakeLists.txt @@ -0,0 +1,54 @@ +# Copyright (C) 1995-2026, Rene Brun and Fons Rademakers. +# All rights reserved. +# +# For the licensing terms see $ROOTSYS/LICENSE. +# For the list of contributors see $ROOTSYS/README/CREDITS. + +############################################################################ +# CMakeLists.txt file for building ROOT's TGeometryShapes package +############################################################################ + +ROOT_STANDARD_LIBRARY_PACKAGE(TGeometryShapes + HEADERS + TBRIK.h + TCONE.h + TCONS.h + TCTUB.h + TELTU.h + TGTRA.h + THelix.h + THYPE.h + TNodeDiv.h + TPARA.h + TPCON.h + TPGON.h + TSPHE.h + TTRAP.h + TTRD1.h + TTRD2.h + TTUBE.h + TTUBS.h + TXTRU.h + SOURCES + TBRIK.cxx + TCONE.cxx + TCONS.cxx + TCTUB.cxx + TELTU.cxx + TGTRA.cxx + THelix.cxx + THYPE.cxx + TNodeDiv.cxx + TPARA.cxx + TPCON.cxx + TPGON.cxx + TSPHE.cxx + TTRAP.cxx + TTRD1.cxx + TTRD2.cxx + TTUBE.cxx + TTUBS.cxx + TXTRU.cxx + DEPENDENCIES + Graf3d +) \ No newline at end of file diff --git a/graf3d/TGeometryShapes/inc/LinkDef.h b/graf3d/TGeometryShapes/inc/LinkDef.h new file mode 100644 index 0000000000000..046f2c1fdafbe --- /dev/null +++ b/graf3d/TGeometryShapes/inc/LinkDef.h @@ -0,0 +1,37 @@ +/************************************************************************* + * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * + * All rights reserved. * + * * + * For the licensing terms see $ROOTSYS/LICENSE. * + * For the list of contributors see $ROOTSYS/README/CREDITS. * + *************************************************************************/ + +#ifdef __CLING__ + +#pragma link off all globals; +#pragma link off all classes; +#pragma link off all functions; + +#pragma link C++ enum EHelixRangeType; + +#pragma link C++ class TBRIK+; +#pragma link C++ class TCONE+; +#pragma link C++ class TCONS+; +#pragma link C++ class TCTUB-; +#pragma link C++ class TELTU+; +#pragma link C++ class TGTRA+; +#pragma link C++ class THelix-; +#pragma link C++ class THYPE+; +#pragma link C++ class TNodeDiv+; +#pragma link C++ class TPARA+; +#pragma link C++ class TPCON-; +#pragma link C++ class TPGON+; +#pragma link C++ class TSPHE-; +#pragma link C++ class TTRAP+; +#pragma link C++ class TTRD1+; +#pragma link C++ class TTRD2+; +#pragma link C++ class TTUBE-; +#pragma link C++ class TTUBS+; +#pragma link C++ class TXTRU+; + +#endif diff --git a/graf3d/g3d/inc/TBRIK.h b/graf3d/TGeometryShapes/inc/TBRIK.h similarity index 100% rename from graf3d/g3d/inc/TBRIK.h rename to graf3d/TGeometryShapes/inc/TBRIK.h diff --git a/graf3d/g3d/inc/TCONE.h b/graf3d/TGeometryShapes/inc/TCONE.h similarity index 100% rename from graf3d/g3d/inc/TCONE.h rename to graf3d/TGeometryShapes/inc/TCONE.h diff --git a/graf3d/g3d/inc/TCONS.h b/graf3d/TGeometryShapes/inc/TCONS.h similarity index 100% rename from graf3d/g3d/inc/TCONS.h rename to graf3d/TGeometryShapes/inc/TCONS.h diff --git a/graf3d/g3d/inc/TCTUB.h b/graf3d/TGeometryShapes/inc/TCTUB.h similarity index 100% rename from graf3d/g3d/inc/TCTUB.h rename to graf3d/TGeometryShapes/inc/TCTUB.h diff --git a/graf3d/g3d/inc/TELTU.h b/graf3d/TGeometryShapes/inc/TELTU.h similarity index 100% rename from graf3d/g3d/inc/TELTU.h rename to graf3d/TGeometryShapes/inc/TELTU.h diff --git a/graf3d/g3d/inc/TGTRA.h b/graf3d/TGeometryShapes/inc/TGTRA.h similarity index 100% rename from graf3d/g3d/inc/TGTRA.h rename to graf3d/TGeometryShapes/inc/TGTRA.h diff --git a/graf3d/g3d/inc/THYPE.h b/graf3d/TGeometryShapes/inc/THYPE.h similarity index 100% rename from graf3d/g3d/inc/THYPE.h rename to graf3d/TGeometryShapes/inc/THYPE.h diff --git a/graf3d/g3d/inc/THelix.h b/graf3d/TGeometryShapes/inc/THelix.h similarity index 100% rename from graf3d/g3d/inc/THelix.h rename to graf3d/TGeometryShapes/inc/THelix.h diff --git a/graf3d/g3d/inc/TNodeDiv.h b/graf3d/TGeometryShapes/inc/TNodeDiv.h similarity index 100% rename from graf3d/g3d/inc/TNodeDiv.h rename to graf3d/TGeometryShapes/inc/TNodeDiv.h diff --git a/graf3d/g3d/inc/TPARA.h b/graf3d/TGeometryShapes/inc/TPARA.h similarity index 100% rename from graf3d/g3d/inc/TPARA.h rename to graf3d/TGeometryShapes/inc/TPARA.h diff --git a/graf3d/g3d/inc/TPCON.h b/graf3d/TGeometryShapes/inc/TPCON.h similarity index 100% rename from graf3d/g3d/inc/TPCON.h rename to graf3d/TGeometryShapes/inc/TPCON.h diff --git a/graf3d/g3d/inc/TPGON.h b/graf3d/TGeometryShapes/inc/TPGON.h similarity index 100% rename from graf3d/g3d/inc/TPGON.h rename to graf3d/TGeometryShapes/inc/TPGON.h diff --git a/graf3d/g3d/inc/TSPHE.h b/graf3d/TGeometryShapes/inc/TSPHE.h similarity index 100% rename from graf3d/g3d/inc/TSPHE.h rename to graf3d/TGeometryShapes/inc/TSPHE.h diff --git a/graf3d/g3d/inc/TTRAP.h b/graf3d/TGeometryShapes/inc/TTRAP.h similarity index 100% rename from graf3d/g3d/inc/TTRAP.h rename to graf3d/TGeometryShapes/inc/TTRAP.h diff --git a/graf3d/g3d/inc/TTRD1.h b/graf3d/TGeometryShapes/inc/TTRD1.h similarity index 100% rename from graf3d/g3d/inc/TTRD1.h rename to graf3d/TGeometryShapes/inc/TTRD1.h diff --git a/graf3d/g3d/inc/TTRD2.h b/graf3d/TGeometryShapes/inc/TTRD2.h similarity index 100% rename from graf3d/g3d/inc/TTRD2.h rename to graf3d/TGeometryShapes/inc/TTRD2.h diff --git a/graf3d/g3d/inc/TTUBE.h b/graf3d/TGeometryShapes/inc/TTUBE.h similarity index 100% rename from graf3d/g3d/inc/TTUBE.h rename to graf3d/TGeometryShapes/inc/TTUBE.h diff --git a/graf3d/g3d/inc/TTUBS.h b/graf3d/TGeometryShapes/inc/TTUBS.h similarity index 100% rename from graf3d/g3d/inc/TTUBS.h rename to graf3d/TGeometryShapes/inc/TTUBS.h diff --git a/graf3d/g3d/inc/TXTRU.h b/graf3d/TGeometryShapes/inc/TXTRU.h similarity index 100% rename from graf3d/g3d/inc/TXTRU.h rename to graf3d/TGeometryShapes/inc/TXTRU.h diff --git a/graf3d/g3d/src/TBRIK.cxx b/graf3d/TGeometryShapes/src/TBRIK.cxx similarity index 100% rename from graf3d/g3d/src/TBRIK.cxx rename to graf3d/TGeometryShapes/src/TBRIK.cxx diff --git a/graf3d/g3d/src/TCONE.cxx b/graf3d/TGeometryShapes/src/TCONE.cxx similarity index 100% rename from graf3d/g3d/src/TCONE.cxx rename to graf3d/TGeometryShapes/src/TCONE.cxx diff --git a/graf3d/g3d/src/TCONS.cxx b/graf3d/TGeometryShapes/src/TCONS.cxx similarity index 100% rename from graf3d/g3d/src/TCONS.cxx rename to graf3d/TGeometryShapes/src/TCONS.cxx diff --git a/graf3d/g3d/src/TCTUB.cxx b/graf3d/TGeometryShapes/src/TCTUB.cxx similarity index 100% rename from graf3d/g3d/src/TCTUB.cxx rename to graf3d/TGeometryShapes/src/TCTUB.cxx diff --git a/graf3d/g3d/src/TELTU.cxx b/graf3d/TGeometryShapes/src/TELTU.cxx similarity index 99% rename from graf3d/g3d/src/TELTU.cxx rename to graf3d/TGeometryShapes/src/TELTU.cxx index 4e6218d12227f..8fde61dd3595a 100644 --- a/graf3d/g3d/src/TELTU.cxx +++ b/graf3d/TGeometryShapes/src/TELTU.cxx @@ -52,4 +52,3 @@ TELTU::TELTU(const char *name, const char *title, const char *material, Float_t TELTU::~TELTU() { } - diff --git a/graf3d/g3d/src/TGTRA.cxx b/graf3d/TGeometryShapes/src/TGTRA.cxx similarity index 100% rename from graf3d/g3d/src/TGTRA.cxx rename to graf3d/TGeometryShapes/src/TGTRA.cxx diff --git a/graf3d/g3d/src/THYPE.cxx b/graf3d/TGeometryShapes/src/THYPE.cxx similarity index 100% rename from graf3d/g3d/src/THYPE.cxx rename to graf3d/TGeometryShapes/src/THYPE.cxx diff --git a/graf3d/g3d/src/THelix.cxx b/graf3d/TGeometryShapes/src/THelix.cxx similarity index 100% rename from graf3d/g3d/src/THelix.cxx rename to graf3d/TGeometryShapes/src/THelix.cxx diff --git a/graf3d/g3d/src/TNodeDiv.cxx b/graf3d/TGeometryShapes/src/TNodeDiv.cxx similarity index 100% rename from graf3d/g3d/src/TNodeDiv.cxx rename to graf3d/TGeometryShapes/src/TNodeDiv.cxx diff --git a/graf3d/g3d/src/TPARA.cxx b/graf3d/TGeometryShapes/src/TPARA.cxx similarity index 100% rename from graf3d/g3d/src/TPARA.cxx rename to graf3d/TGeometryShapes/src/TPARA.cxx diff --git a/graf3d/g3d/src/TPCON.cxx b/graf3d/TGeometryShapes/src/TPCON.cxx similarity index 100% rename from graf3d/g3d/src/TPCON.cxx rename to graf3d/TGeometryShapes/src/TPCON.cxx diff --git a/graf3d/g3d/src/TPGON.cxx b/graf3d/TGeometryShapes/src/TPGON.cxx similarity index 100% rename from graf3d/g3d/src/TPGON.cxx rename to graf3d/TGeometryShapes/src/TPGON.cxx diff --git a/graf3d/g3d/src/TSPHE.cxx b/graf3d/TGeometryShapes/src/TSPHE.cxx similarity index 100% rename from graf3d/g3d/src/TSPHE.cxx rename to graf3d/TGeometryShapes/src/TSPHE.cxx diff --git a/graf3d/g3d/src/TTRAP.cxx b/graf3d/TGeometryShapes/src/TTRAP.cxx similarity index 100% rename from graf3d/g3d/src/TTRAP.cxx rename to graf3d/TGeometryShapes/src/TTRAP.cxx diff --git a/graf3d/g3d/src/TTRD1.cxx b/graf3d/TGeometryShapes/src/TTRD1.cxx similarity index 100% rename from graf3d/g3d/src/TTRD1.cxx rename to graf3d/TGeometryShapes/src/TTRD1.cxx diff --git a/graf3d/g3d/src/TTRD2.cxx b/graf3d/TGeometryShapes/src/TTRD2.cxx similarity index 100% rename from graf3d/g3d/src/TTRD2.cxx rename to graf3d/TGeometryShapes/src/TTRD2.cxx diff --git a/graf3d/g3d/src/TTUBE.cxx b/graf3d/TGeometryShapes/src/TTUBE.cxx similarity index 100% rename from graf3d/g3d/src/TTUBE.cxx rename to graf3d/TGeometryShapes/src/TTUBE.cxx diff --git a/graf3d/g3d/src/TTUBS.cxx b/graf3d/TGeometryShapes/src/TTUBS.cxx similarity index 100% rename from graf3d/g3d/src/TTUBS.cxx rename to graf3d/TGeometryShapes/src/TTUBS.cxx diff --git a/graf3d/g3d/src/TXTRU.cxx b/graf3d/TGeometryShapes/src/TXTRU.cxx similarity index 100% rename from graf3d/g3d/src/TXTRU.cxx rename to graf3d/TGeometryShapes/src/TXTRU.cxx diff --git a/graf3d/g3d/CMakeLists.txt b/graf3d/g3d/CMakeLists.txt index 0be29b7b8b03f..5eaa54a857350 100644 --- a/graf3d/g3d/CMakeLists.txt +++ b/graf3d/g3d/CMakeLists.txt @@ -11,71 +11,33 @@ ROOT_STANDARD_LIBRARY_PACKAGE(Graf3d HEADERS TAxis3D.h - TBRIK.h - TCONE.h - TCONS.h - TCTUB.h - TELTU.h TGeometry.h - TGTRA.h - THelix.h - THYPE.h TMarker3DBox.h TMaterial.h TMixture.h - TNodeDiv.h TNode.h - TPARA.h - TPCON.h - TPGON.h TPoints3DABC.h TPointSet3D.h TPolyLine3D.h TPolyMarker3D.h TRotMatrix.h TShape.h - TSPHE.h - TTRAP.h - TTRD1.h - TTRD2.h - TTUBE.h - TTUBS.h TView3D.h - TXTRU.h X3DBuffer.h SOURCES TAxis3D.cxx - TBRIK.cxx - TCONE.cxx - TCONS.cxx - TCTUB.cxx - TELTU.cxx TGeometry.cxx - TGTRA.cxx - THelix.cxx - THYPE.cxx TMarker3DBox.cxx TMaterial.cxx TMixture.cxx TNode.cxx - TNodeDiv.cxx - TPARA.cxx - TPCON.cxx - TPGON.cxx TPoints3DABC.cxx TPointSet3D.cxx TPolyLine3D.cxx TPolyMarker3D.cxx TRotMatrix.cxx TShape.cxx - TSPHE.cxx - TTRAP.cxx - TTRD1.cxx - TTRD2.cxx - TTUBE.cxx - TTUBS.cxx TView3D.cxx - TXTRU.cxx X3DBuffer.c DEPENDENCIES Gpad diff --git a/graf3d/g3d/inc/LinkDef.h b/graf3d/g3d/inc/LinkDef.h index b1b33f46f2c5a..aae15db9b7750 100644 --- a/graf3d/g3d/inc/LinkDef.h +++ b/graf3d/g3d/inc/LinkDef.h @@ -19,36 +19,17 @@ #pragma link C++ global gGeometry; #pragma link C++ class TAxis3D+; -#pragma link C++ class TBRIK+; -#pragma link C++ class TCONE+; -#pragma link C++ class TCONS+; -#pragma link C++ class TCTUB-; -#pragma link C++ class TELTU+; -#pragma link C++ class TGTRA+; #pragma link C++ class TGeometry-; -#pragma link C++ class THelix-; -#pragma link C++ class THYPE+; +#pragma link C++ class TMarker3DBox-; #pragma link C++ class TMaterial-; #pragma link C++ class TMixture-; #pragma link C++ class TNode-; -#pragma link C++ class TNodeDiv+; -#pragma link C++ class TPARA+; -#pragma link C++ class TPCON-; -#pragma link C++ class TPGON+; +#pragma link C++ class TPoints3DABC; +#pragma link C++ class TPointSet3D-; #pragma link C++ class TPolyLine3D-; #pragma link C++ class TPolyMarker3D-; -#pragma link C++ class TPointSet3D-; #pragma link C++ class TRotMatrix-; #pragma link C++ class TShape-; -#pragma link C++ class TSPHE-; -#pragma link C++ class TTRAP+; -#pragma link C++ class TTRD1+; -#pragma link C++ class TTRD2+; -#pragma link C++ class TTUBE-; -#pragma link C++ class TTUBS+; -#pragma link C++ class TMarker3DBox-; -#pragma link C++ class TPoints3DABC; -#pragma link C++ class TXTRU+; #pragma link C++ class TView3D-; #endif diff --git a/graf3d/g3d/inc/TNode.h b/graf3d/g3d/inc/TNode.h index 23791bd84d530..c0906e088fc08 100644 --- a/graf3d/g3d/inc/TNode.h +++ b/graf3d/g3d/inc/TNode.h @@ -21,14 +21,14 @@ #ifndef ROOT_TNode #define ROOT_TNode -#include "TShape.h" #include "TAttLine.h" #include "TAttFill.h" #include "TAtt3D.h" - -#include "TRotMatrix.h" +#include "TNamed.h" class TBrowser; +class TShape; +class TRotMatrix; class TNode : public TNamed , public TAttLine, public TAttFill, public TAtt3D { diff --git a/graf3d/g3d/inc/TShape.h b/graf3d/g3d/inc/TShape.h index 12e92e42e536c..9a7cfa3e1adc8 100644 --- a/graf3d/g3d/inc/TShape.h +++ b/graf3d/g3d/inc/TShape.h @@ -23,13 +23,13 @@ ////////////////////////////////////////////////////////////////////////// #include "TNamed.h" -#include "TMaterial.h" #include "TAttLine.h" #include "TAttFill.h" #include "TAtt3D.h" #include "X3DBuffer.h" class TBuffer3D; +class TMaterial; class TNode; class TShape : public TNamed, public TAttLine, public TAttFill, public TAtt3D { diff --git a/graf3d/g3d/src/TGeometry.cxx b/graf3d/g3d/src/TGeometry.cxx index b77ace7d0adf8..82c96c718b12d 100644 --- a/graf3d/g3d/src/TGeometry.cxx +++ b/graf3d/g3d/src/TGeometry.cxx @@ -9,14 +9,18 @@ * For the list of contributors see $ROOTSYS/README/CREDITS. * *************************************************************************/ -#include "TROOT.h" -#include "TBuffer.h" -#include "THashList.h" -#include "TObjArray.h" #include "TGeometry.h" -#include "TNode.h" #include "TMaterial.h" +#include "TNode.h" +#include "TRotMatrix.h" +#include "TShape.h" + #include "TBrowser.h" +#include "TBuffer.h" +#include "THashList.h" +#include "TObjArray.h" +#include "TROOT.h" + TGeometry *gGeometry = nullptr; diff --git a/math/splot/CMakeLists.txt b/math/splot/CMakeLists.txt index 3906f2f7c8770..a01af591d7b65 100644 --- a/math/splot/CMakeLists.txt +++ b/math/splot/CMakeLists.txt @@ -18,7 +18,6 @@ ROOT_STANDARD_LIBRARY_PACKAGE(SPlot Hist Tree TreePlayer - Graf3d Graf MathCore ) diff --git a/montecarlo/eg/inc/TPrimary.h b/montecarlo/eg/inc/TPrimary.h index f3b0cf86ca7c1..c48f13d0eba74 100644 --- a/montecarlo/eg/inc/TPrimary.h +++ b/montecarlo/eg/inc/TPrimary.h @@ -21,10 +21,10 @@ #ifndef ROOT_TPrimary #define ROOT_TPrimary -#include "TNamed.h" +#include "TObject.h" #include "TAttLine.h" #include "TAtt3D.h" -#include "X3DBuffer.h" +#include "TString.h" class TAttParticle; diff --git a/montecarlo/eg/src/TPrimary.cxx b/montecarlo/eg/src/TPrimary.cxx index 662a0c80d10d7..25991c16836b5 100644 --- a/montecarlo/eg/src/TPrimary.cxx +++ b/montecarlo/eg/src/TPrimary.cxx @@ -17,15 +17,16 @@ Old version of a dynamic particle class created by event generators. This class is now obsolete. Use TParticle instead. */ -#include "TObject.h" +#include "TPrimary.h" + #include "Rtypes.h" -#include "TString.h" #include "TAttParticle.h" -#include "TPrimary.h" -#include "TView.h" #include "TMath.h" -#include "TVirtualPad.h" #include "TPolyLine3D.h" +#include "TString.h" +#include "TView.h" +#include "TVirtualPad.h" +#include "X3DBuffer.h" #include "snprintf.h" diff --git a/roottest/root/treeformula/casting/CMakeLists.txt b/roottest/root/treeformula/casting/CMakeLists.txt index 7d22c14372299..91cda4848ba95 100644 --- a/roottest/root/treeformula/casting/CMakeLists.txt +++ b/roottest/root/treeformula/casting/CMakeLists.txt @@ -6,8 +6,10 @@ ROOTTEST_ADD_TEST(write ROOTTEST_COMPILE_MACRO(Simple.cxx FIXTURES_SETUP root-treeformula-casting-Simple-fixture) -ROOTTEST_ADD_TEST(run - MACRO Run.C - OUTREF Simple.ref - FIXTURES_REQUIRED root-treeformula-casting-write-fixture - root-treeformula-casting-Simple-fixture) +if(geom) + ROOTTEST_ADD_TEST(run + MACRO Run.C + OUTREF Simple.ref + FIXTURES_REQUIRED root-treeformula-casting-write-fixture + root-treeformula-casting-Simple-fixture) +endif() \ No newline at end of file diff --git a/tutorials/CMakeLists.txt b/tutorials/CMakeLists.txt index 3297527a27e8f..d9de2a111a200 100644 --- a/tutorials/CMakeLists.txt +++ b/tutorials/CMakeLists.txt @@ -171,7 +171,7 @@ if(NOT experimental_genvectorx) endif() if(NOT geom) - set(geom_veto visualisation/geom/*.C geom/*.C visualisation/geom/gdml/*.C legacy/g3d/shapes.* legacy/g3d/na49view.*) + set(geom_veto visualisation/geom/*.C geom/*.C visualisation/geom/gdml/*.C legacy/g3d/*) endif() if(NOT spectrum)