Skip to content

Commit

Permalink
from Matevz:
Browse files Browse the repository at this point in the history
add the TEve classes to the svn trunk. Code compiles without warnings on
MacOS X, Linux and Windows XP. Tutorials still don't work, as init code
is still missing (coming later today).


git-svn-id: http://root.cern.ch/svn/root/trunk@21044 27541ba8-7e3a-0410-8455-c3a389f83636
  • Loading branch information
FonsRademakers committed Nov 26, 2007
1 parent ab8dab9 commit 81fcfd9
Show file tree
Hide file tree
Showing 146 changed files with 25,831 additions and 7 deletions.
8 changes: 4 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ endif
endif
ifeq ($(BUILDGL),yes)
ifeq ($(BUILDFTGL),yes)
MODULES += ftgl
MODULES += ftgl eve
endif
MODULES += gl
endif
Expand Down Expand Up @@ -219,7 +219,7 @@ MODULES += unix winnt x11 x11ttf win32gdk gl ftgl rfio castor \
ldap mlp krb5auth rpdutils globusauth pyroot ruby gfal \
qt qtroot qtgsi xrootd netx proofx alien clarens peac oracle \
xmlparser mathcore mathmore reflex cintex roofitcore roofit \
minuit2 monalisa fftw odbc unuran gdml g4root cint7
minuit2 monalisa fftw odbc unuran gdml eve g4root cint7
MODULES := $(sort $(MODULES)) # removes duplicates
endif

Expand Down Expand Up @@ -1077,7 +1077,7 @@ showbuild:
showit:
@echo "Modules:$(word 1, $(MODULES))"
@$(foreach m, $(filter-out $(word 1, $(MODULES)), $(MODULES)), \
echo -e "\t$(m)" ;)
echo -e "\t$(m)" ;)
@echo "Libraries:$(word 1, $(ALLLIBS))"
@$(foreach l, $(filter-out $(word 1, $(ALLLIBS)), $(ALLLIBS)), \
echo -e "\t$(l)" ;)
echo -e "\t$(l)" ;)
20 changes: 17 additions & 3 deletions config/Makefile.depend
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ ASIMAGELIBDEPM = $(GRAFLIB)
ASIMAGEGUILIBDEPM = $(GRAFLIB) $(HISTLIB) $(GUILIB) $(ASIMAGELIB) $(IOLIB)
ASIMAGEGSLIBDEPM = $(GRAFLIB) $(ASIMAGELIB)
GEDLIBDEPM = $(HISTLIB) $(GPADLIB) $(GRAFLIB) $(GUILIB) $(TREELIB) \
$(TREEPLAYERLIB)
$(TREEPLAYERLIB)
POSTSCRIPTLIBDEPM = $(GRAFLIB)
GUILIBDEPM = $(GPADLIB) $(GRAFLIB) $(IOLIB)
GUIHTMLLIBDEPM = $(GUILIB) $(GRAFLIB) $(NETLIB)
Expand All @@ -31,7 +31,7 @@ PROOFLIBDEPM = $(NETLIB) $(TREELIB) $(THREADLIB) $(IOLIB)
PROOFPLAYERLIBDEPM = $(PROOFLIB) $(HISTLIB) $(IOLIB) $(TREELIB) $(NETLIB) \
$(THREADLIB)
PROOFDRAWLIBDEPM = $(TREEPLAYERLIB) $(G3DLIB) $(GRAFLIB) $(GPADLIB) \
$(PROOFPLAYERLIB) $(HISTLIB) $(TREELIB) $(PROOFLIB)
$(PROOFPLAYERLIB) $(HISTLIB) $(TREELIB) $(PROOFLIB)
PROOFXLIBDEPM = $(NETLIB) $(PROOFLIB) $(THREADLIB)
SESSIONVIEWERLIBDEPM = $(PROOFLIB) $(GUILIB) $(GPADLIB) $(GRAFLIB) $(TREELIB)
PEACLIBDEPM = $(PROOFLIB) $(CLARENSLIB)
Expand Down Expand Up @@ -93,6 +93,10 @@ X11TTFLIBDEPM = $(X11LIB) $(GRAFLIB)
X3DLIBDEPM = $(G3DLIB) $(GUILIB)
MONALISALIBDEPM = $(NETLIB) $(IOLIB)
THREADLIBDEPM = $(IOLIB)
EVELIBDEPM = $(GEOMLIB) $(GEOMPAINTERLIB) $(G3DLIB) $(GUILIB) \
$(GPADLIB) $(GRAFLIB) $(HISTLIB) $(PHYSICSLIB) \
$(GEDLIB) $(EGLIB) $(TREELIB) $(TREEPLAYERLIB) \
$(GLLIB) $(FTGLLIB) $(IOLIB) $(RINTLIB)


ifeq ($(EXPLICITLINK),yes)
Expand Down Expand Up @@ -173,6 +177,7 @@ X11TTFLIBDEP = $(X11TTFLIBDEPM)
X3DLIBDEP = $(X3DLIBDEPM)
MONALISALIBDEP = $(MONALISALIBDEPM)
THREADLIBDEP = $(THREADLIBDEPM)
EVELIBDEP = $(EVELIBDEPM)

ifeq ($(PLATFORM),win32)

Expand All @@ -187,7 +192,7 @@ ASIMAGEGUILIBEXTRA = lib/libGraf.lib lib/libHist.lib lib/libGui.lib \
lib/libASImage.lib lib/libRIO.lib
ASIMAGEGSLIBEXTRA = lib/libGraf.lib lib/libASImage.lib
GEDLIBEXTRA = lib/libHist.lib lib/libGpad.lib lib/libGraf.lib \
lib/libTree.lib lib/libTreePlayer.lib lib/libGui.lib
lib/libTree.lib lib/libTreePlayer.lib lib/libGui.lib
POSTSCRIPTLIBEXTRA = lib/libGraf.lib
GUILIBEXTRA = lib/libGpad.lib lib/libGraf.lib lib/libRIO.lib
HISTPAINTERLIBEXTRA = lib/libGraf.lib lib/libHist.lib lib/libMatrix.lib \
Expand Down Expand Up @@ -276,6 +281,12 @@ GDMLLIBEXTRA = lib/libGeom.lib lib/libXMLIO.lib lib/libHist.lib \
UNURANLIBEXTRA = lib/libHist.lib
MONALISALIBEXTRA = lib/libNet.lib lib/libRIO.lib
THREADLIBEXTRA = lib/libRIO.lib
EVELIBEXTRA = lib/libGeom.lib lib/libGeomPainter.lib \
lib/libGpad.lib lib/libGraf3d.lib lib/libGui.lib \
lib/libGraf.lib lib/libHist.lib lib/libPhysics.lib \
lib/libGed.lib lib/libEG.lib lib/libTree.lib \
lib/libTreePlayer.lib lib/libRGL.lib lib/libRIO.lib \
lib/libRint.lib

else

Expand Down Expand Up @@ -358,6 +369,9 @@ GDMLLIBEXTRA = -Llib -lGeom -lXMLIO -lHist -lRIO
UNURANLIBEXTRA = -Llib -lHist
MONALISALIBEXTRA = -Llib -lNet -lRIO
THREADLIBEXTRA = -Llib -lRIO
EVELIBEXTRA = -Llib -lGeom -lGeomPainter -lGraf3d -lGui -lGpad \
-lGraf -lHist -lPhysics -lGed -lEG -lTree \
-lTreePlayer -lRGL -lRIO -lRint

endif

Expand Down
71 changes: 71 additions & 0 deletions eve/Module.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Module.mk for eve module
# Copyright (c) 2007 Rene Brun and Fons Rademakers
#
# Author: Fons Rademakers 26/11/2007

MODDIR := eve
MODDIRS := $(MODDIR)/src
MODDIRI := $(MODDIR)/inc

EVEDIR := $(MODDIR)
EVEDIRS := $(EVEDIR)/src
EVEDIRI := $(EVEDIR)/inc

##### libEve #####
EVEL := $(MODDIRI)/LinkDef.h
EVEDS := $(MODDIRS)/G__Eve.cxx
EVEDO := $(EVEDS:.cxx=.o)
EVEDH := $(EVEDS:.cxx=.h)

EVEH := $(filter-out $(MODDIRI)/LinkDef%,$(wildcard $(MODDIRI)/*.h))
EVES := $(filter-out $(MODDIRS)/G__%,$(wildcard $(MODDIRS)/*.cxx))
EVEO := $(EVES:.cxx=.o)

EVEDEP := $(EVEO:.o=.d) $(EVEDO:.o=.d)

EVELIB := $(LPATH)/libEve.$(SOEXT)
EVEMAP := $(EVELIB:.$(SOEXT)=.rootmap)

# used in the main Makefile
ALLHDRS += $(patsubst $(MODDIRI)/%.h,include/%.h,$(EVEH))
ALLLIBS += $(EVELIB)
ALLMAPS += $(EVEMAP)

# include all dependency files
INCLUDEFILES += $(EVEDEP)

##### local rules #####
include/%.h: $(EVEDIRI)/%.h
cp $< $@

$(EVELIB): $(EVEO) $(EVEDO) $(ORDER_) $(MAINLIBS) $(EVELIBDEP)
@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
"$(SOFLAGS)" libEve.$(SOEXT) $@ "$(EVEO) $(EVEDO)" \
"$(EVELIBEXTRA) $(FTGLLIBDIR) $(FTGLLIBS) $(GLLIBS)"

$(EVEDS): $(EVEH) $(EVEL) $(ROOTCINTTMPEXE)
@echo "Generating dictionary $@..."
$(ROOTCINTTMP) -f $@ -c $(EVEH) $(EVEL)

$(EVEMAP): $(RLIBMAP) $(MAKEFILEDEP) $(EVEL)
$(RLIBMAP) -o $(EVEMAP) -l $(EVELIB) \
-d $(EVELIBDEPM) -c $(EVEL)

all-eve: $(EVELIB) $(EVEMAP)

clean-eve:
@rm -f $(EVEO) $(EVEDO)

clean:: clean-eve

distclean-eve: clean-eve
@rm -f $(EVEDEP) $(EVEDS) $(EVEDH) $(EVELIB) $(EVEMAP)

distclean:: distclean-eve

##### extra rules ######
ifeq ($(ARCH),win32)
$(EVEO) $(EVEDO): CXXFLAGS += $(OPENGLINCDIR:%=-I%) $(FTGLINCDIR:%=-I%)
else
$(EVEO) $(EVEDO): CXXFLAGS += $(OPENGLINCDIR:%=-I%) $(FTGLINCDIR:%=-I%)
endif
187 changes: 187 additions & 0 deletions eve/inc/LinkDef.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,187 @@
// @(#)root/eve:$Id$
// Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007

/*************************************************************************
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
* All rights reserved. *
* *
* For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/

#pragma link off all functions;
#pragma link off all globals;
#pragma link off all classes;


// Utilities
#pragma link C++ class TEveUtil+;
#pragma link C++ class TEveGLUtil+;

// TEveManager
#pragma link C++ class TEveManager+;
#pragma link C++ global gEve;

// Basic helper classes
#pragma link C++ class TEveException+;
#pragma link C++ class TEvePadHolder+;
#pragma link C++ class TEveGeoManagerHolder+;
#pragma link C++ class TEveRefCnt+;
#pragma link C++ class TEveRefBackPtr+;

// TEveVSD structs
#pragma link C++ class TEveVector+;
#pragma link C++ class TEvePathMark+;
#pragma link C++ class TEveMCTrack+;
#pragma link C++ class TEveHit+;
#pragma link C++ class TEveCluster+;
#pragma link C++ class TEveRecTrack+;
#pragma link C++ class TEveRecKink+;
#pragma link C++ class TEveRecV0+;
#pragma link C++ class TEveMCRecCrossRef+;

// TEveTrans
#pragma link C++ class TEveTrans-;
#pragma link C++ class TEveTransSubEditor+;
#pragma link C++ class TEveTransEditor+;

// Stepper
#pragma link C++ class TEveGridStepper+;
#pragma link C++ class TEveGridStepperSubEditor+;
#pragma link C++ class TEveGridStepperEditor+;

// TEveRGBAPalette
#pragma link C++ class TEveRGBAPalette+;
#pragma link C++ class TEveRGBAPaletteEditor+;
#pragma link C++ class TEveRGBAPaletteSubEditor+;

// Plexes
#pragma link C++ class TEveChunkManager+;
#pragma link C++ class TEveChunkManager::iterator-;

// TEveEventManager, VSDEvent, TEveVSD
#pragma link C++ class TEveEventManager+;
#pragma link C++ class TEveVSD+;

// TTreeTools
#pragma link C++ class TEveSelectorToEventList+;
#pragma link C++ class TEvePointSelectorConsumer+;
#pragma link C++ class TEvePointSelector+;

// TEveElement
#pragma link C++ class TEveElement+;
#pragma link C++ class TEveElement::TEveListTreeInfo+;
#pragma link C++ class TEveElementObjectPtr+;
#pragma link C++ class TEveElementList+;
#pragma link C++ class TEveElementEditor+;

#pragma link C++ class std::list<TEveElement*>;
#pragma link C++ class std::list<TEveElement*>::iterator;
#pragma link C++ typedef TEveElement::List_t;
#pragma link C++ typedef TEveElement::List_i;

// GL-interface
#pragma link C++ class TEveScene+;
#pragma link C++ class TEveSceneList+;
#pragma link C++ class TEveSceneInfo+;
#pragma link C++ class TEveViewer+;
#pragma link C++ class TEveViewerList+;

// TEvePad
#pragma link C++ class TEvePad+;

// TEveBrowser
#pragma link C++ class TEveGListTreeEditorFrame+;
#pragma link C++ class TEveBrowser+;

// TEveGedEditor
#pragma link C++ class TEveGedEditor+;

// TEveMacro
#pragma link C++ class TEveMacro+;

// RGValuators
#pragma link C++ class TEveGValuatorBase+;
#pragma link C++ class TEveGValuator+;
#pragma link C++ class TEveGDoubleValuator+;
#pragma link C++ class TEveGTriVecValuator+;

// TEveTrack
#pragma link C++ class TEveTrack+;
#pragma link C++ class TEveTrackGL+;
#pragma link C++ class TEveTrackEditor+;
#pragma link C++ class TEveTrackList+;
#pragma link C++ class TEveTrackListEditor+;
#pragma link C++ class TEveTrackPropagatorSubEditor+;
#pragma link C++ class TEveTrackPropagatorEditor+;
#pragma link C++ class TEveTrackPropagator+;
#pragma link C++ class TEveTrackCounter+;
#pragma link C++ class TEveTrackCounterEditor+;

// TEvePointSet
#pragma link C++ class TEvePointSet+;
#pragma link C++ class TEvePointSetArray+;
#pragma link C++ class TEvePointSetArrayEditor+;

// TEveLine
#pragma link C++ class TEveLine+;
#pragma link C++ class TEveLineEditor+;
#pragma link C++ class TEveLineGL+;

// TEveFrameBox
#pragma link C++ class TEveFrameBox+;
#pragma link C++ class TEveFrameBoxGL+;

// TEveDigitSet
#pragma link C++ class TEveDigitSet+;
#pragma link C++ class TEveDigitSetEditor+;

// TEveQuadSet
#pragma link C++ class TEveQuadSet+;
#pragma link C++ class TEveQuadSetGL+;

// TEveBoxSet
#pragma link C++ class TEveBoxSet+;
#pragma link C++ class TEveBoxSetGL+;

// GeoNode
#pragma link C++ class TEveGeoNode+;
#pragma link C++ class TEveGeoTopNode+;
#pragma link C++ class TEveGeoNodeEditor+;
#pragma link C++ class TEveGeoTopNodeEditor+;

#pragma link C++ class TEveGeoShapeExtract+;
#pragma link C++ class TEveGeoShape+;

// TrianlgeSet
#pragma link C++ class TEveTriangleSet+;
#pragma link C++ class TEveTriangleSetEditor+;
#pragma link C++ class TEveTriangleSetGL+;

// TEveStraightLineSet
#pragma link C++ class TEveStraightLineSet+;
#pragma link C++ class TEveStraightLineSetGL+;
#pragma link C++ class TEveStraightLineSetEditor+;
#pragma link C++ class TEveStraightLineSetProjected+;

// Projections / non-linear transformations
#pragma link C++ class TEveProjectable+;
#pragma link C++ class TEveProjected+;
#pragma link C++ class TEveProjection+;
#pragma link C++ class TEveRhoZProjection+;
#pragma link C++ class TEveCircularFishEyeProjection+;

#pragma link C++ class TEveProjectionManager+;
#pragma link C++ class TEveProjectionManagerEditor+;
#pragma link C++ class TEveProjectionManagerGL+;

#pragma link C++ class TEveTrackProjected+;
#pragma link C++ class TEveTrackProjectedGL+;
#pragma link C++ class TEveTrackListProjected+;

#pragma link C++ class TEvePolygonSetProjected+;
#pragma link C++ class TEvePolygonSetProjectedEditor+;
#pragma link C++ class TEvePolygonSetProjectedGL+;

#pragma link C++ class TEvePointSetProjected+;
#pragma link C++ class TEvePointSetProjectedGL+;
Loading

0 comments on commit 81fcfd9

Please sign in to comment.