[root] / trunk / graf3d / eve / inc / TEveCalo3DGL.h Repository:
ViewVC logotype

Log of /trunk/graf3d/eve/inc/TEveCalo3DGL.h

Parent Directory Parent Directory


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

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: 2215 byte(s)
Diff to previous 33198
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 33198 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Apr 26 08:40:04 2010 UTC (4 years, 8 months ago) by matevz
File length: 2213 byte(s)
Diff to previous 33124
Merge 33149 from the fireworks branch.


33149
=====

Author: alja
Date: Thu Apr 22 23:41:30 2010
New Revision: 33149

URL: http://root.cern.ch/viewvc?rev=33149&root=root&view=rev
Log:
TEveCaloData:
Add support for rendering of highlighted cells.
Add function GetHighlightTooltip() to set tool tip for highlighted cells.

TEveCaloLegoGL, TEveCalo3DGL, TEveCalo2DGL:
Add support for rendering of highlighted cells.

TEveCalo2D:
Cache selected and highlighted cells in eta and phi bins for RhoPhi and RhoZ projections.

Revision 33124 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 21 20:04:42 2010 UTC (4 years, 9 months ago) by matevz
File length: 2145 byte(s)
Diff to previous 30883
Implement central infractructure to allow eve-elements to support
internal multiple selection and highlightning of their sub-parts.

Use this in TEveDigitSet and its sub-classes TEveQuadSet and
TEveBoxSet.

Extend GL rendering and event-handling to support these operations.


eve/
====

* TEveElement - Add 3 new functions:
    virtual TString  GetHighlightTooltip();
    virtual void     UnSelected();
    virtual void     UnHighlighted();

* TEveSecondarySelectable - New secondary base-class for elements
  supporting internal multiple selection / highlight.

* TEveDigitSet, TEveQuadSet, TEveBoxSet
  - Sub-class TEveDigitSet from TEveSecondarySelectable.
  - Implement functions needed for internal selection.
  - Add common base-class TEveDigitSetGL for quad and box-set GL rendering.

* TEveChunkManager - Add support for restricted iteration.
  TEveChunkManager::iterator accepts set<Int_t> for that purpose.

* TEveViewer - Add functions to handle additional mouse-hover signals
  from TGLViewer.

* Other classes (all GL renderers) - Changes for additional argument
  to TGLLogicalShape::DrawHighlight().


gl/
===

* TGLObject - Take AlwaysSecondarySelect() into account when deciding
  whether to use DL caching for given draw-pass.

* TGLLogicalShape - Add a new (optional) argument to DrawHighlight()
  specifying kind of outline to use (selected or highlighted). This
  allows classes with internal selection to properly render outlines
  when sub-parts of an object are both selected and highlighted.


* TGLEventHandler - Proparly handle objects with internal selection /
  highlight.

* TGLSelectRecord - Add flag to separate GL-selection for selection
  and for highlight. This is really used by record handlers.

* TGLViewer - Add two new signal-emitting functions to properly notify
  clients about changes in internal object selection:
    virtual void ReMouseOver(TObject *obj, UInt_t state); // *SIGNAL*
    virtual void UnMouseOver(TObject *obj, UInt_t state); // *SIGNAL*


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

Add instructions for activation of internal selection in
TEveQuad/BoxSet.

Revision 30883 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 27 11:30:59 2009 UTC (5 years, 2 months ago) by matevz
File length: 2131 byte(s)
Diff to previous 30819
Merge revision 30868 from fireworks branch.

Revision 30819 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 20 20:01:16 2009 UTC (5 years, 3 months ago) by matevz
File length: 2168 byte(s)
Diff to previous 26772
From Alja.

graf3d/gl/inc/TGLViewer:
Change enum ESecSelType: remove obsolete member kNone and redefine kAlways to kOnRequest.

graf3d/gl/src/TGLEventHandler:
Set default secondary selection mode to kOnRequest: Buy default secondary
selection is now activated also on mouse click if this is defined by TGLLogicalShape.

graf3d/eve/inc/TEveElement.h:
graf3d/eve/src/TEveElement.cxx:
Add virtual function ForwardSelection() to allow TEveElement objects to forward its selection
state. This is required in case if some other objects is managing its selection and highlight state.

graf3d/eve/src/TEveSelection.cxx:
In MapPickedToSelect() first check if element is forwarding a selection.

graf3d/eve/inc/TEveCaloData.h
graf3d/eve/src/TEveCaloData.cxx
Add a member to hold a list of secondary selected cells (i.e. towers). Add a functionality to
manage selection state of calorimeter objects. In order to fit in TEveSelection procedure
TEveCaloData now inherits from TEveElement and manages selection state of child elements in FillImpliedSelected().

graf3d/eve/inc/TEveCalo.h:
graf3d/eve/src/TEveCalo.cxx:
Forward selection to TEveCaloData. Override IncImpliedSelected() to printout selected tower info.

tutorials/eve/calo_detail.C
Call  IncDenyDestroy() on calo data, since it is TEveElement, but not added anywhere.

tutorials/eve/calorimeters.C
In second tab create four different calorimeter views to demonstrate secondary selection.

Revision 26772 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 9 19:57:49 2008 UTC (6 years, 1 month ago) by matevz
File length: 1930 byte(s)
Diff to previous 24214
Merge revs between 26664 and 26771 from the fireworks branch.

26664
=====
TEveCalo3DGL - Check if data empty in draw function.


26681
=====
TEveCalo.cxx:
Check if Data is empty if use relative scaling.

TEveCalo3DGL.cxx:
Remove unnecessary if statement.


26683
=====
TGLFontManager:
Add maping from TTF ID to font name.

TEveCaloLegoGL:
Remove hard coded axis title, read from TAxis.

cms_calo.C, cms_calo_detail.C:
Set axis title.


26685
=====
Draw frame from eta, pgi axis in TEveCalo3D.


26687
=====
TEveCalo3DGL - Do not use DLcache in case of highlight and selection.


26688
=====
TEveCalo3DGL - Draw phi bins exactly from front endcap to back endcap.


26756
=====
TEveCalo3DGL - Draw frame within eta, phi limits.


26771
=====
TEveCaloX - Fix compilation warnings.

Revision 24214 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jun 11 14:48:35 2008 UTC (6 years, 7 months ago) by matevz
File length: 1743 byte(s)
Diff to previous 23140
TGLObject and subclasses
-----------------------------------------

Introduce new member 'Bool_t TGLObject::fMultiColor' that specifies
whether the class uses multiple colors for its rendering. This
information is important when drawing highlight or outlines around
objects as display-lists can not be used if color-state changes are
stored in them.

With this modification most of the logick for
  virtual Bool_t TGLLogicalShape::ShouldDLCache(...)
can be implemented in TGLObject version.

Most of the GL-rendering classes have been fixed to properly set the
fMultiColor state and rely on the TGLObject::ShouldDLCache().


TGLPhysicalShape
----------------

Use TGLLogicalShape::Draw() instead of DirectDraw() when drawing
highlights to allow usage of display-lists for classes that do not use
multiple colors.


TGLUtil
-------

Decrease the default draw-quality for DrawLine/Cylinder/Sphere/Disk to
10. With software rendering the previous value of 60 caused very low
refresh rates.

Introduce two inner classes TDrawQualityModifier and
TDrawQualityScaler allowing easy/safe modification of draw-quality for
the above functions.

Introduce inner class TColorLocker allowing easy/safe modification of
color-lock state.

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: 1809 byte(s)
Diff to previous 23087
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 23087 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 9 14:10:56 2008 UTC (6 years, 9 months ago) by rdm
Original Path: trunk/eve/inc/TEveCalo3DGL.h
File length: 1809 byte(s)
Diff to previous 22539
From Alja, Bertrand and Matevz - merged branches/dev/fireworks 22550:23082.


Major changes imported by this merge are:

gl/
====
- reorganization of scene rendering in TGLViewer - render opaque
  objects from all scenes first, then all transparent ones;

- improve saving of images from the GL-viewer so that the dialog boxes
  and other windows do not result in black areas on the saved image;

- improved management of FTGL fonts accross GL contexts.

eve/
====
- new classes for visualization of calorimeter data in lego mode;

- allow fixed scale beyond given radius for fish-eye projections.

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/inc/TEveCalo3DGL.h
File length: 1739 byte(s)
Copied from: branches/dev/fireworks/eve/inc/TEveCalo3DGL.h revision 22525
Diff to previous 22418
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 22418 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Mar 2 02:44:18 2008 UTC (6 years, 10 months ago) by matevz
Original Path: branches/dev/fireworks/eve/inc/TEveCalo3DGL.h
File length: 1739 byte(s)
Diff to previous 22416
Cosmetics.

Revision 22416 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Mar 1 21:56:28 2008 UTC (6 years, 10 months ago) by alja
Original Path: branches/dev/fireworks/eve/inc/TEveCalo3DGL.h
File length: 1741 byte(s)
Diff to previous 22382
Structural improvements.

Revision 22382 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Feb 27 21:03:50 2008 UTC (6 years, 10 months ago) by alja
Original Path: branches/dev/fireworks/eve/inc/TEveCalo3DGL.h
File length: 1735 byte(s)
Diff to previous 22370
Add members for secondary select.

Revision 22370 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Feb 27 14:53:09 2008 UTC (6 years, 10 months ago) by alja
Original Path: branches/dev/fireworks/eve/inc/TEveCalo3DGL.h
File length: 1588 byte(s)
Diff to previous 22326
Bug fixes for bounding box and palette. Structural improvements.

Revision 22326 - (view) (download) (as text) (annotate) - [select for diffs]
Added Mon Feb 25 21:22:54 2008 UTC (6 years, 10 months ago) by alja
Original Path: branches/dev/fireworks/eve/inc/TEveCalo3DGL.h
File length: 1706 byte(s)
New classes for visualization of calorimeters.

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