[root] / trunk / graf3d / eve / src / TEveManager.cxx Repository:
ViewVC logotype

Log of /trunk/graf3d/eve/src/TEveManager.cxx

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 46521 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Oct 13 05:11:44 2012 UTC (2 years, 3 months ago) by matevz
File length: 30528 byte(s)
Diff to previous 44507
Fix bug 96529 and two other TRootBrowser related issues.
Make Eve fully terminatable and restartable within a single root session.

* TEveBrowser:
  CloseWindow() and CloseTab() functions are now virtual in TRootBrowser.
  Remove menu entry for creation of TEve projector -- this never worked.
  Add function SanitizeTabCounts() to be called when a new tab is added into
  the root-browser controlled areas.

* TEveManager:
  Remove fMacroFolder from list of browsables in destructor.
  Manage main-window termination signals in accordance with changes in
  TEveBrowser.

Revision 44507 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jun 4 12:30:41 2012 UTC (2 years, 7 months ago) by axel
File length: 30600 byte(s)
Diff to previous 42084
Remove
  using namespace std;
from Riostream.h, which has huge consequences for all of ROOT.
Riostream.h is now a simple wrapper for fstream, iostream, iomanip for backward compatibility; Riosfwd.h simply wraps iosfwd.

Because of templates and their inline functions, Riostream.h needed to be included in headers, too (e.g. TParameter.h), which violated the assumption that Riostream.h is not exposing its using namespace std to headers.
ROOT now requires R__ANSISTREAM, R__SSTREAM, which does not change the set of supported compilers.

Without "using namespace std", several identifiers are now prefixed by std::; e.g. roofit/* source files now have a using namespace std to keep their coding style.
TFile::MakeProject() now generates "using namespace std" to convert the CINT-style class names into C++ ones.

Revision 42084 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 17 11:20:33 2011 UTC (3 years, 2 months ago) by matevz
File length: 30585 byte(s)
Diff to previous 39083
From Mihai Niculescu:
- fix crash on exit when staped-elements are popultedl
- follow up on change ULont_t -> ULong64_t in TExMap.

Revision 39083 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 4 01:42:46 2011 UTC (3 years, 8 months ago) by matevz
File length: 30565 byte(s)
Diff to previous 35074
Bow to coverity's understanding of EVE and to implementation of THLimitsFinder::Optimize().

Revision 35074 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Aug 30 15:18:02 2010 UTC (4 years, 4 months ago) by matevz
File length: 30487 byte(s)
Diff to previous 34957
Merge the following revisions from branches/dev/fireworks:
34608, 34786, 34787, 34788, 34804, 34808, 34835, 34841, 34956, 35031, 35071


34608
=====

Author: matevz
Date: Tue Jul 27 13:04:00 2010
New Revision: 34608

URL: http://root.cern.ch/viewvc?rev=34608&root=root&view=rev
Log:
Add data-member 'Int_t fNumChildren' caching the number of children.
std::list<>::size() can become really expensive for large collections.
Observed when running on heavy-ion data.

Modified:
    branches/dev/fireworks/graf3d/eve/inc/TEveElement.h
    branches/dev/fireworks/graf3d/eve/src/TEveElement.cxx
    branches/dev/fireworks/graf3d/eve/src/TEveGeoNode.cxx


34786
=====

Author: alja
Date: Thu Aug 12 20:05:46 2010
New Revision: 34786

URL: http://root.cern.ch/viewvc?rev=34786&root=root&view=rev
Log:
CPU performance improvements:
Add virtual GetProjectedAsElement() in TEveProjected and its derived classes to avoid dynamic casts.

Modified:
    branches/dev/fireworks/graf3d/eve/inc/TEveBox.h
    branches/dev/fireworks/graf3d/eve/inc/TEveCompound.h
    branches/dev/fireworks/graf3d/eve/inc/TEveElement.h
    branches/dev/fireworks/graf3d/eve/inc/TEveGeoShape.h
    branches/dev/fireworks/graf3d/eve/inc/TEveLine.h
    branches/dev/fireworks/graf3d/eve/inc/TEvePointSet.h
    branches/dev/fireworks/graf3d/eve/inc/TEvePolygonSetProjected.h
    branches/dev/fireworks/graf3d/eve/inc/TEveProjectionBases.h
    branches/dev/fireworks/graf3d/eve/inc/TEveStraightLineSet.h
    branches/dev/fireworks/graf3d/eve/inc/TEveTrackProjected.h
    branches/dev/fireworks/graf3d/eve/src/TEveProjectionBases.cxx


34787
=====

Author: alja
Date: Thu Aug 12 20:36:52 2010
New Revision: 34787

URL: http://root.cern.ch/viewvc?rev=34787&root=root&view=rev
Log:

Bugfix:
In TEveCaloDataVec add missing check for periodic TwoPi flag (TEveCaloData::fWrapTwoPi).

Modified:
    branches/dev/fireworks/graf3d/eve/src/TEveCaloData.cxx


34788
=====

Author: matevz
Date: Thu Aug 12 20:38:50 2010
New Revision: 34788

URL: http://root.cern.ch/viewvc?rev=34788&root=root&view=rev
Log:
Protect Runge-Kutta propagator against division by zero when the field
object returns 0 as the maximum magnetic field.

Modified:
    branches/dev/fireworks/graf3d/eve/src/TEveTrackPropagator.cxx


34804
=====

Author: matevz
Date: Fri Aug 13 13:42:28 2010
New Revision: 34804

URL: http://root.cern.ch/viewvc?rev=34804&root=root&view=rev
Log:
* TEveManager
  Use TExMap instead of std::set to store changed elements.
  Set insertion becomes expensive for large collections all being
  changed at the same time.

* TEveSceneList
  In ProcessChanges() take TExMap* as argument. Here map of changed
  objects / elements still needs to be built as we iterate in parallel
  over logical shape maps of all scenes.

* Other classes
  Implement virtual TEveElement::GetObject() for frequently used
  classes to avoid unnecessary dynamic casts.

Modified:
    branches/dev/fireworks/graf3d/eve/inc/TEveArrow.h
    branches/dev/fireworks/graf3d/eve/inc/TEveDigitSet.h
    branches/dev/fireworks/graf3d/eve/inc/TEveElement.h
    branches/dev/fireworks/graf3d/eve/inc/TEveGeoNode.h
    branches/dev/fireworks/graf3d/eve/inc/TEveGeoShape.h
    branches/dev/fireworks/graf3d/eve/inc/TEveManager.h
    branches/dev/fireworks/graf3d/eve/inc/TEvePointSet.h
    branches/dev/fireworks/graf3d/eve/inc/TEveScene.h
    branches/dev/fireworks/graf3d/eve/src/TEveElement.cxx
    branches/dev/fireworks/graf3d/eve/src/TEveManager.cxx
    branches/dev/fireworks/graf3d/eve/src/TEveScene.cxx


34808
=====

Author: matevz
Date: Fri Aug 13 14:45:18 2010
New Revision: 34808

URL: http://root.cern.ch/viewvc?rev=34808&root=root&view=rev
Log:
White-space.

Modified:
    branches/dev/fireworks/graf3d/eve/inc/TEveProjectionBases.h


34835
=====

Author: matevz
Date: Tue Aug 17 18:21:43 2010
New Revision: 34835

URL: http://root.cern.ch/viewvc?rev=34835&root=root&view=rev
Log:
In CreateWindow(), also check if Display* is non-null.

Modified:
    branches/dev/fireworks/graf3d/gl/src/TGLWidget.cxx


34841
=====

Author: alja
Date: Wed Aug 18 15:20:26 2010
New Revision: 34841

URL: http://root.cern.ch/viewvc?rev=34841&root=root&view=rev
Log:
Use TEveProjected::GetProjectedAsElement() instead of dynamic_cast of TEveProjected to TEveElement.

Modified:
    branches/dev/fireworks/graf3d/eve/src/TEveElement.cxx


34956
=====

Author: alja
Date: Mon Aug 23 19:38:40 2010
New Revision: 34956

URL: http://root.cern.ch/viewvc?rev=34956&root=root&view=rev
Log:

In TEveCalo2DGL::DrawRPhi() fix offset-by-one  error (last bin in RPhi was not rendered).

Modified:
    branches/dev/fireworks/graf3d/eve/src/TEveCalo2DGL.cxx


35031
=====

Author: alja
Date: Thu Aug 26 18:25:31 2010
New Revision: 35031

URL: http://root.cern.ch/viewvc?rev=35031&root=root&view=rev
Log:

Fix rendering of endcap cellc in stack at negative eta.

Modified:
    branches/dev/fireworks/graf3d/eve/inc/TEveCalo3DGL.h
    branches/dev/fireworks/graf3d/eve/src/TEveCalo3DGL.cxx


35071
=====

Author: matevz
Date: Mon Aug 30 15:53:24 2010
New Revision: 35071

URL: http://root.cern.ch/viewvc?rev=35071&root=root&view=rev
Log:
* TEveCalo3D
  Add calo-grid line-width control.
  Add individual getters / setters for drawing of endcap / barrel
  grid.

* TEveCalo3DGL
  Honour settings for grid line-width and visibility.

* TEveElement
  Mark some data-members as transient.

Modified:
    branches/dev/fireworks/graf3d/eve/inc/TEveCalo.h
    branches/dev/fireworks/graf3d/eve/inc/TEveElement.h
    branches/dev/fireworks/graf3d/eve/src/TEveCalo3DGL.cxx

Revision 34957 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Aug 23 19:49:52 2010 UTC (4 years, 5 months ago) by matevz
File length: 29767 byte(s)
Diff to previous 34278
It turns out gGeoIdentity is not unique but specific to TGeoManager.
So, whenever changing gGeoManager, also change gGeoIdentity.
Failing to do so leads to crashes in CSG operations.

It would make sense to drop the global gGeoIdentity and to provide
static TGeoIdentity* TGeoManager::IdentityMatrix().

Revision 34278 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jul 1 10:52:00 2010 UTC (4 years, 6 months ago) by rdm
File length: 29645 byte(s)
Diff to previous 33463
fix format warnings.

Revision 33463 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 11 09:38:29 2010 UTC (4 years, 8 months ago) by matevz
File length: 29640 byte(s)
Diff to previous 33451
* TEveManager: Simplify TEveManager::Terminate() -- close browser
  window directly in destructor.

* TEveViewer: Disconnect from TGLViewer class signals in destructor.

Revision 33451 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 10 19:49:48 2010 UTC (4 years, 8 months ago) by matevz
File length: 29803 byte(s)
Diff to previous 33450
Comment variable now unused.

Revision 33450 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 10 19:46:26 2010 UTC (4 years, 8 months ago) by matevz
File length: 29800 byte(s)
Diff to previous 31326
In Terminate():
- Wait for window-closed messages from X to be processed before
  deleting the inner frames.
- Leak TEve/RootBrowser -- the delayed window destruction leads to X11
  errors.

Revision 31326 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 19 17:04:40 2009 UTC (5 years, 2 months ago) by matevz
File length: 29608 byte(s)
Diff to previous 31256
Make EVE GED editors use a different top name-label.

It is actually a button that allows a user to create a new editor with
the current object. Maximum number of such floating editors is limited
to 10 (static in TEveGedEditor).

TEveManager forwards object changes and delitions to appropriate
static functions in TEveGedEditor that properly update the floating
editors if they are affected by the change.

Revision 31256 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 17 21:59:06 2009 UTC (5 years, 2 months ago) by matevz
File length: 29446 byte(s)
Diff to previous 31233
* TEveBrowser
  Add static ged-editor class-name to TEveGListTreeEditorFrame.
  Cleanup.

* TEveGedEditor
  Add coment about usage of virtual TGedFrame* CreateNameFrame().
  Cleanup.

* TEveGedEditor
* TEveManager
  Cleanup.

Revision 31233 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 17 13:53:33 2009 UTC (5 years, 2 months ago) by matevz
File length: 29067 byte(s)
Diff to previous 30887
* TEveUtil
  When checking and executing a macro strip off also the directory.

* TEveManager
  InsertVizDBEntry() - rewrite logic for un-registration of clients
  from the old model.
  Also propagate changes to projected replicas if update is requested.

  LoadVizDB() - call Redraw3D() at the end.

  SaveVizDB() - expand pathname before opening the file.   

* TEveElement
  SetVizModel() - decrease fParentIgnoreCnt *before* removing itself
  from the old model and increase it *after* adding itself to the new model.

* TEveStraightLineSet
  In CopyVizParams() write out "kTRUE"/"kFALSE" for boll values.

Revision 30887 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 27 13:49:01 2009 UTC (5 years, 2 months ago) by matevz
File length: 28927 byte(s)
Diff to previous 29695
* TEveManager - add checks to see if we are running in batch mode and if
  GUI lib initialization has been successful.

* TGLContext - only write info about successful GLEW initialization if gDebug
  is set.

Revision 29695 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 6 11:10:55 2009 UTC (5 years, 5 months ago) by matevz
File length: 28633 byte(s)
Diff to previous 29130
Reduce dependence on TPad:
- remove include where redundant;
- replace with TVirtualPad where sufficient.

Revision 29130 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jun 22 10:41:49 2009 UTC (5 years, 7 months ago) by brun
File length: 28672 byte(s)
Diff to previous 27157
From Matevz;
- TEveManager::AddCanvasTab(const char* name) assigned the name to the current tab, not the newly created one.

Revision 27157 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jan 15 14:05:12 2009 UTC (6 years ago) by brun
File length: 28707 byte(s)
Diff to previous 26948
From Axel:
Replace all references to Text_t by char, still keeping the definition in Rtypes.h

Revision 26948 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 16 11:19:24 2008 UTC (6 years, 1 month ago) by matevz
File length: 28717 byte(s)
Diff to previous 26889
In destructor also delete the event-manager.

Revision 26889 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Dec 13 07:11:16 2008 UTC (6 years, 1 month ago) by brun
File length: 28669 byte(s)
Diff to previous 26802
From Alja and Matevz:

TEveTrackPropagator
-------------------
- Improve logic that handles the stopping condition when propagating towards
  a user-provided path-mark.
- Increase minimum RK step to 10 cm.

TEveWindowManager
-----------------
- Add method DestroyWindows() that allows recursive destruction of
  all existing eve-windows.

TEveManager
-----------
- In destructor, when destroying eve-windows, call specialized
  TEveManager::DestroyWindows() instead of DestroyElements().
  This avoids potential trouble with GUI elements destructed via
  TGFrame::DeleteWindow() that uses a timer to invoke the real destructor.

Revision 26802 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Dec 10 16:59:38 2008 UTC (6 years, 1 month ago) by matevz
File length: 28568 byte(s)
Diff to previous 26741
Start with collapsed list-entries for WindowManager, Viewers and Scenes.

Revision 26741 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Dec 8 19:39:37 2008 UTC (6 years, 1 month ago) by matevz
File length: 28565 byte(s)
Diff to previous 26717
TEveManager
-----------
- Create new viewer in current window-slot if it is empty.

TEveWindow, TEveWindowManager
-----------------------------
- Convenience functions for setting/getting current window.

test_windows.C
--------------
- Create also an TRootEmbeddedCanvas.

SplitGLView.C
-------------
- Changes for the new TGLWindow registration syntax.

Revision 26717 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Dec 7 22:07:55 2008 UTC (6 years, 1 month ago) by matevz
File length: 28306 byte(s)
Diff to previous 26662
graf3d/gl
=========

Documentation changes.

TGLSAViewer
-----------
- store TGLSAFrame as a normal composite-frame.


graf3d/eve
==========

Support for creation of GL windows.
Support for full hierarhic destruction.

TEveManager
-----------
- Push all gl-viewer management to TEveViewerList.
- Allow spawning several GL viewers during initialization.

TEveViewer
----------
- Subclass from TEveWindowFrame. This way all eve-window operations
  are supported.

TEveViewerList
--------------
- Perform gl-viewer management via Add/RemoveElement() virtuals.

TEveWindow
----------
- Properly set cleanup of all frames.
- Delete embedded GUI frames via DeleteWindow().
- Change all debug printout with info messages at gDebug > 0.

TEveElement
-----------
- Added access methods for member 'Int_t fParentIgnoreCnt'.


tutorials/eve
=============

Use new interace for creating / accessing eve and gl viewers.

Revision 26662 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Dec 4 20:25:08 2008 UTC (6 years, 1 month ago) by matevz
File length: 28080 byte(s)
Diff to previous 26561
Merge some revs between 26639 and 26661 from the fireworks branch.

26639
=====

TEveElement
-----------
- Add virtual ChangedNameTitle() to allow propagation of name/title change.
- Call ChangedNameTitle() in SetElementName/Title() functions.

TEvePointSet
------------
- Call ChangedNameTitle() in SetElementName/Title() functions.

TEveWindow
----------
- Use ChangedNameTitle() to propagate eve-window name changes to
  eve-frame components.
- Replace trivial overloads of Acuire/RelinquishWindow() with
  name-change callback.


26640
=====

TGLRnrCtx
---------
- Start reporting gl-select-buffer resizing once its size is above 64k.


26653
=====

TEveWindow
----------
- Add getters.


26661
=====

TEveWindowManager
-----------------
- New class to manage EVE windows, in particular selection and dectruction.
- Move code for managing current-window from TEveWindow here.

TEveWindow
----------
- Move current-window code to TEveWindowManager.
- In PreDeleteElement() notify the window manager that the window is
  about be deleted.
- TEveCompositeFrameInMainFrame and TEveCompositeFrameInTab were not
  forwarding name-change to the base-class in WindowNameChanged().

TEveManager
-----------
- Replace TEveElementList fWindows with TEveWindowManager fWindowManager.

TEveElement
-----------
- Added virtual void PreDeleteElement() that gets called prior to element
  deletion. The local version still calls gEve->PreDeleteElement(this).

Revision 26561 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Dec 1 17:35:55 2008 UTC (6 years, 1 month ago) by matevz
File length: 27996 byte(s)
Diff to previous 26397
Merge the following releases from the fireworks branch:

26432
 - Added TGLSAViewer::DeleteMenuBar().

26444
 - TGLSAViewer - use a steering flag for menu-bar destruction.

26468
 - TEveCaloDataVec - option to define XY axis from cells themselves.

26481
 - TEveCaloDataVec - bugfix;
 - show the new feature in cms_calo*.C tutorials.

26523
 - TEveWindow - new classes for management of EVE vindows;

26524
 - missing include.

26557
 - TEveWindow:
   - support hiding of title-bar directly from frame; render decollapse box
     when hidden;
   - bind context menu to Action/IconBox button;
   - consistent usage of simple frame-style.

Revision 26397 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Nov 23 18:25:50 2008 UTC (6 years, 2 months ago) by matevz
File length: 27730 byte(s)
Diff to previous 26367
Merge revs 26369 and 26395 from the fireworks branch.

26369
#####

TEveElement
===========
In CheckReferenceCount() do nothing if the element is already destructing.

TEveScene
=========
In destructor mark beginning of destruction and remove this from the
scene-list.

26395
#####
TEveManager
===========
In destructor set fScenes and fViewers to 0 after calling DEstroy() on them.

In PreDeleteElement() check if fScenes is 0 before calling
DestroyElementRenderers().

Revision 26367 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 21 18:08:30 2008 UTC (6 years, 2 months ago) by matevz
File length: 27678 byte(s)
Diff to previous 26274
Merge revisions 26280:26327 from the fireworks branch.

26281
=====
- TGLScenePad: replace static variable with a data-member. Fix comments.

26304
=====
- TEveProjectionAxesGL: fix index out of bounds error reported by valgrind.

26306
=====
- TGLScene, TGLScenePad: better comments, consistent whitespace.
- TEveElement: add method DestroyOrWarn(): original Destroy() method is exception throwing.
- TEveScene: delete GL-scene and pad in destructor; add ownership information to class-docs.
- TEveSceneList: add method DestroyScenes().
- TEveViewer: add ownership information to class-docs.
- TEveManager: delete scenes, scene-list, viewers and viewer-list in destructor.

26325
=====
TEveTrackPropagator: implement the following overrides of virtual functions:
 - TEveElement::CheckReferenceCount() - take into account references from TEveRefBackPtr;
 - TEveRefBackPtr::OnZeroRefCount()   - call CheckReferenceCount().

26327
=====
Remove trailing whitespace in eve/ and gl/.

Revision 26274 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 18 20:32:48 2008 UTC (6 years, 2 months ago) by matevz
File length: 27383 byte(s)
Diff to previous 26164
Merge from the fireworks branch the following revisions:

26053
=====
TEveCalo, TGLFontManager - Fix memory leaks.

26167
=====
TEveLegoOverlay - Add possiblity to draw a header text in top right corner of window.

26254
=====
TGLSAViewer - Properly clean up the TGMenuBar.
TEveManager - Add static method Terminate() to shutdown the manager.

26267
=====
TGLScene - In FindLogicalSmartRefresh() delete the shape if the classes don't
match. This was a (rare) memory leak.
TEveBoxSetGL - Consistent punctuation.

26273
=====
TEveManager - Add method 'void CloseEveWindow()' and connect it to the
'CloseWindow()' signal of the main browser.

Revision 26164 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 12 16:06:58 2008 UTC (6 years, 2 months ago) by matevz
File length: 26436 byte(s)
Diff to previous 25879
Disable tab-close button for the embedded GL viewers.

Revision 25879 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Oct 19 20:49:34 2008 UTC (6 years, 3 months ago) by matevz
File length: 26262 byte(s)
Diff to previous 25438
TEveArrow
---------
Include tube/arrow radius in bounding-box calculation.

TEveManager
-----------
Fix typo.

TEveVSDStructs
--------------
Add methods
  TEveVector Orthogonal() const;
  void OrthoNormBase(TEveVector& a, TEveVector& b) const;
for getting vectors orthogonal to given vector.

TGLPerspectiveCamera
--------------------
Fix calculation of default dolly distance. Viewport aspect ratio was
not taken into account.

TGLViewer
---------
In SetupCameras() also process the three inverted orthographic cameras
added recently.

Revision 25438 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 17 19:35:20 2008 UTC (6 years, 4 months ago) by matevz
File length: 26263 byte(s)
Diff to previous 25245
TEveBrowser
-----------
Add optional Option_t* argument to InitPlugins() allowing caller to
choose which plugins to instantiate.
Handle 'F' locally, pass others to TRootBrowser.

TEveManager
-----------
Add optional Option_t* argument to constructor and to static Create().
This allows selection of which plugins to load at startup.

Revision 25245 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Aug 25 21:44:09 2008 UTC (6 years, 4 months ago) by matevz
File length: 26006 byte(s)
Diff to previous 24449
Merge changes from the eve-dev branch (-r 25202:HEAD). This makes trunk up to date with all developments in eve/ and gl/. eve-dev branch is now obsolete and will be removed.

Revision 24449 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jun 20 21:37:48 2008 UTC (6 years, 7 months ago) by matevz
File length: 25930 byte(s)
Diff to previous 24266
Implement saving/loading of VizDB via creation/processing of CINT scripts.

TEveManager
-----------
1. Implement Load/SaveVizDB()
2. Add bool members controlling behaviour of VizDB during loading, in
particular whether to replace existing entries and update connected clients.

TEveElement
-----------
1. Implement top-level SaveVizParams() and virtual WriteVizParams()
that is called throughout the element class-hierarchy.
2. Add the following methods that can be called from the context menu:
   - void VizDB_Apply(const char* tag);
   - void VizDB_Reapply();
   - void VizDB_UpdateModel(Bool_t update=kTRUE);
   - void VizDB_Insert(const char* tag, Bool_t replace=kTRUE, Bool_t update=kTRUE);

Other
-----
Virtual WriteVizParams() implemented for the following classes:
TEvePointSet, TEveLine, TEveTrack, TEveTrackList and
TEveStraightLineSet.

Revision 24266 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jun 13 13:42:25 2008 UTC (6 years, 7 months ago) by matevz
File length: 23020 byte(s)
Diff to previous 24147
Merge rev 24265 from the fireworks branch.

Revision 24147 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jun 4 19:48:39 2008 UTC (6 years, 7 months ago) by matevz
File length: 22362 byte(s)
Diff to previous 24047
- TEveProjectionManager:
  Added member 'Bool_t fImportEmpty' - this forces the projection manager
  to also import sub-trees without any projectable elements.
  Useful if one expects a completely parallel element structure in
  projected replica.

- TEveSelection:
  Added method 'void RemoveImpliedSelected(TEveElement* el)' needed for
  deregistration of implied-selected elements during their destruction.

- TEveManager:
  - In PreDeleteElement() check if the element is implied selected or
    highlighted and deregister it from there.
  - In function InsertVizDBEntry():
    a) added argument 'Bool_t update';
    b) when replacing the model-element copy its children to the new
       model and optionally update their viz-params.

- TEveElement:
  - Add methods to simplify propagation of visualization-parameters
    between model-elements and their clients
  - Add members 'Int_t fParentIgnoreCnt, fTopItemCnt' that allow
    better tracking of references in view of automatic destruction.
  - Consolidate Has/Num|Children/Parents() methods.

- TEveGeoNode:
  Use TEveElement::HasChildren() instead of checking container size.

Revision 24047 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 28 23:22:54 2008 UTC (6 years, 7 months ago) by matevz
File length: 21732 byte(s)
Diff to previous 24026
- TEveElement
  Add member 'TEveElement *fVizModel' that points to VizDB entry used
  for determination of element's visual properties.
  When setting the VizModel add it as a child to the model-element.
  This will allow for two-way communication between client and model
  elements.

- TEveManager
  When adding a model-element into VizDB increase its deny-destroy
  count. Use Destroy() not direct delete when removing it.

- TEvePolygonSetProjected
  - Override TEveElement::SetMainColor() so that we can keep line and
    fill colors in sync if this is desired.
  - Remove SetLine/FillColor(Pixel_t).

- TEveGeoNode
  Add some info and warning messages for unexpected conditions (which
  I now suspect might actually happen in some rare cases).

Revision 24026 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 26 19:12:12 2008 UTC (6 years, 7 months ago) by matevz
File length: 21475 byte(s)
Diff to previous 24001
TEveManger
----------

Implement basic visual-parameter database management using TMap
(load/save not supported yet).

Use TMap instead of std::map for geometry management.

TEveElement
-----------

Implement CopyVizParamsFromDB().

test_compound.C
---------------

Add minimal example showing usage of visual-parameter database.

Revision 24001 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri May 23 20:58:14 2008 UTC (6 years, 8 months ago) by matevz
File length: 20456 byte(s)
Diff to previous 23979
Optimize updates of element visibility by introducing a new stamp-type
and preprocessing the changed elements in TEveManager::DoRedraw3D().

Make TEveElement::AddStamp() virtual. This allows sub-classes to react
to different changes within the element.
This also simplifes handling of visibility for TEveGeoNode and
TEveSceneInfo.

TEveProjection manager properly maintains compound-element relation.

Finalize propagation of visibility and color from compounds to
compound elements and from projectables to projecteds.

Add three new selection propagation modes (compound, compound and
projectable, master).

Remove obsolete method TEveElement::UpdateItems() and all its
incarnations.

Replace asserts in TEveTrackPropagator::HelixToBounds() with a warning
as this case can actually occur due to numerical errors for tracks with
pZ close to zero.

Revision 23979 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu May 22 19:28:49 2008 UTC (6 years, 8 months ago) by matevz
File length: 20092 byte(s)
Diff to previous 23731
Propagation of main-color and render-state from:
a) compounds to compound-members;
b) projectables to projected elements.

New tutorial to test/demonstrate compounds (not complete).

Revision 23731 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 7 18:20:21 2008 UTC (6 years, 8 months ago) by matevz
File length: 19035 byte(s)
Diff to previous 23507
TEveManager::GetGeometry() - if TGeoManager is locked, unlock it on
load time and re-lock it back afterwards.

TEveGeoShape - added method SetShape() so that full object can be
constructed also in program (required loading from file before).

Revision 23507 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 24 13:15:07 2008 UTC (6 years, 9 months ago) by brun
File length: 18728 byte(s)
Diff to previous 23140
Fix a shadowed variable

Revision 23140 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Apr 11 11:01:39 2008 UTC (6 years, 9 months ago) by rdm
File length: 18719 byte(s)
Diff to previous 22539
move the following directories to "graf2d":

asimage, freetype, gpad, graf, postscript, qt, win32gdk, x11, x11ttf

move the following directories to "graf3d":

eve, ftgl, g3d, gl, x3d

Revision 22539 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Mar 8 14:36:37 2008 UTC (6 years, 10 months ago) by rdm
Original Path: trunk/eve/src/TEveManager.cxx
File length: 18719 byte(s)
Diff to previous 21812
From Alja, Bertrand & Matevz: merged branches/dev/fireworks 21757:22514.

This includes:

- development for event-displays of ALICE and CMS since 5.18 in eve/,
  gl/ and gui/;

- many new tutorials and demos for eve/;

- fix in TQObject to support class-signals from all base-classes.

Revision 21812 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jan 22 20:52:31 2008 UTC (7 years ago) by matevz
Original Path: trunk/eve/src/TEveManager.cxx
File length: 18243 byte(s)
Diff to previous 21652
From Alja:

New class TFTGLManager for management of FTGL fonts.

New classes TEveText, TEveTextEditor and TEveTextGL for display and
configuration of a 3D text.

New test macro 'tutorials/eve/text_test.C'.


From Matevz:

Reenable smart-refresh during redraw of TEveScenes.

Minor code-layout changes.

Revision 21652 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 11 17:13:04 2008 UTC (7 years ago) by matevz
Original Path: trunk/eve/src/TEveManager.cxx
File length: 18215 byte(s)
Diff to previous 21644
Cleanup includes in TEveManager.h and add them in cxx files that actually need them.

Revision 21644 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 11 15:51:14 2008 UTC (7 years ago) by matevz
Original Path: trunk/eve/src/TEveManager.cxx
File length: 18468 byte(s)
Diff to previous 21534
Do not check if geometry file is readable before calling
TGeoManager::Import() as it does not work for remote files (http in
particular).

Add option to assign aliases for geometries and to specify the default
geometry.

Revision 21534 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Dec 20 12:17:22 2007 UTC (7 years, 1 month ago) by matevz
Original Path: trunk/eve/src/TEveManager.cxx
File length: 17348 byte(s)
Diff to previous 21452
Fix a bug in TEveElement::Destroy(): the destruction was not properly
propagated to parents and thus redraw was not performed.

Extend strings providing information about exceptions.

Consolidate variable name for exception header in files that were
modified during the above changes.

Revision 21452 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 18 15:16:52 2007 UTC (7 years, 1 month ago) by matevz
Original Path: trunk/eve/src/TEveManager.cxx
File length: 17008 byte(s)
Diff to previous 21310
Main ged-editor was not updated from TEveManager::ElementChanged().

Revision 21310 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Dec 10 19:05:45 2007 UTC (7 years, 1 month ago) by matevz
Original Path: trunk/eve/src/TEveManager.cxx
File length: 16900 byte(s)
Diff to previous 21291
Fix coding convention violations.

Revision 21291 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Dec 10 11:56:31 2007 UTC (7 years, 1 month ago) by matevz
Original Path: trunk/eve/src/TEveManager.cxx
File length: 16900 byte(s)
Diff to previous 21197
Add exception handler for TEveExceptions.
Rename function arguments that were still named render_element and alike.
Add function descriptions.

Revision 21197 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 4 19:29:01 2007 UTC (7 years, 1 month ago) by matevz
Original Path: trunk/eve/src/TEveManager.cxx
File length: 15907 byte(s)
Diff to previous 21167
In TEveManager::Create() make sure GUI system is initialized.
Needed when linking Eve into a stand-alone application (CMS fireworks).

Revision 21167 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 4 01:01:27 2007 UTC (7 years, 1 month ago) by matevz
Original Path: trunk/eve/src/TEveManager.cxx
File length: 15766 byte(s)
Diff to previous 21056
Fix warnings about size_t.
Add some docs.
Change magnetic field units from kGauss to Tesla.

Revision 21056 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 26 19:48:38 2007 UTC (7 years, 1 month ago) by matevz
Original Path: trunk/eve/src/TEveManager.cxx
File length: 15772 byte(s)
Diff to previous 21054
TEveTrans: coding conventions. Fix warning by solaris cc.

TEveBrowser: add missing ctor argument to TRootBrowser during base
initialization (solaris cc).

TEveManager: fix names of Eve components garbled by automatic string
conversion.

Revision 21054 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 26 18:00:41 2007 UTC (7 years, 1 month ago) by matevz
Original Path: trunk/eve/src/TEveManager.cxx
File length: 15778 byte(s)
Diff to previous 21048
When including ROOT header files use "" instead of <>.

Replace NULL with 0 in TEveGLText.

TEveTrackPropagator: make public data-members protected and provide
get/set methods. Second attempt at fixing Solaris cc errors: make
Helix and Vertex4d struct declarations public.

Revision 21048 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 26 16:01:52 2007 UTC (7 years, 1 month ago) by matevz
Original Path: trunk/eve/src/TEveManager.cxx
File length: 15778 byte(s)
Diff to previous 21044
Add static function TEveManager::Create() and removed old
initialization scripts.

Fix macros to use this new initialization method.

Revision 21044 - (view) (download) (as text) (annotate) - [select for diffs]
Added Mon Nov 26 14:31:05 2007 UTC (7 years, 1 month ago) by rdm
Original Path: trunk/eve/src/TEveManager.cxx
File length: 15906 byte(s)
from Matevz:
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).

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

Subversion Admin
ViewVC Help
Powered by ViewVC 1.0.9