$Id: History,v 1.88 2000/06/09 08:42:46 johna Exp $
-------------------------------------------------------------------

     =========================================================
     Geant4 - an Object-Oriented Toolkit for Simulation in HEP
     =========================================================

                      Category History file
                      ---------------------
This file should be used by G4 developers and category coordinators
to briefly summarize all major modifications introduced in the code
and keep track of all category-tags.
It DOES NOT substitute the  CVS log-message one should put at every
committal in the CVS repository !

     *************************************************************
     * Note that modeling and test have their own History files. *
     *************************************************************

     ----------------------------------------------------------
     * Reverse chronological order (last date on top), please *
     ----------------------------------------------------------

History file for visualization category
---------------------------------------

9th June 2000  John Allison  (vis-V01-01-06)
- Tagged for system testing.

8th June 2000  Guy Barrand
- OPACS/src/G4GoSceneHandler.cc : correct polyhedron 
  wire-frame in order to remove some edges. Now the
  rendering is the same than for OpenGL driver.
   This was requested for long by ALICE, and had been
  requested for ATLAS by Gaston Parrour recently.

7th June 2000  John Allison
- /vis/viewer/update preferred, synonym /vis/viewer/show deprecated.

7th June 2000  Makoto Asai
- Fix the flip view of RayTracer.

2nd June May 2000  John Allison
- Forced /control/verbose 2 for compound commands.

20th May 2000  John Allison
- Bug fix in G4PhysicalVolumeModel for replicas (Guy Barrand).

26 May 2000  Guy Barrand
- management/src/G4VisCommandsScene.
  Protect against a null pointer for aScene in NotifyHandlers::SetNewValue.
- OPACS/src/G4WoViewer.cc :
  Change camera name checking so that a viewer created
  by the GUI (Wo) could be hooked.
- OPACS/src/G4GoSceneHandler.cc :
  Change circle rendering.
- OpenInventor/G4OpenInventorSceneHandler : protect against null pointers.

22nd May 2000  John Allison  (vis-V01-01-05)
- Many bug fixes from in OpenGL (opengl-V01-01-00) - see OpenGL/History.  Main
  features:
  o workaround for bug in Mesa which slowed OpenGLXm (Guy Barrand).
  o multiple OpenGLXm windows no longer cause crash on exit (Guy).
- modeling-V01-01-00: Added G4VTreeGraphicsScene (DTREE).
- G4Scene::IsEmpty if empty of RunDurationModels - VisManager adds world in
  this case.

18th/19th May 2000  John Allison
- Introduced some /vis/viewer/set commands.
- /vis/scene/include/trajectories changed to /vis/scene/add/trajectories.
  Similarly hits.  (Old commands kept but deprecated.)
- G4ViewParameters.cc: bug fix in density culling printing.
- G4VisCommandsSceneHandler.cc: bug fix in /vis/sceneHandler/create.
- G4VisManagerRegisterMessengers.cc: improved comments.

18th May 2000  John Allison  vis-V01-01-04
- Included DAWN-V01-01-04: Automatic filename incrementation is made default.

15th May 2000  John Allison
- Added compound commands /vis/open, /vis/drawVolume and /vis/specify.
- /vis/viewer/reset now resets *all* view parameters.
- Fixed double application of transformation in /vis/scene/add/volume.
- Fixed verbosity parameter in /vis/scene/list.
- Made G4BoundingSphereScene::PreAddThis non-inline.

13th May 2000  John Allison
- Redefined current target point to be *relative* to standard target point.
  (No longer necessary to initialize current target point in G4VViewer
  constructor.  The fix of 4th May is reversed.)

11th May 2000  Satoshi Tanaka vis-V01-01-03
- In G4DAWNFILEViewer.cc, 
  <       strcpy( fPSViewer, "ghostview" );
  ---
  > //    strcpy( fPSViewer, "ghostview" );
  >       strcpy( fPSViewer, "gv" );


4th May 2000  John Allison
- Tidied comments in G4VisManagerRegisterMessengers.cc.
- Initialize current target point in G4VViewer constructor.
- Re-implemented /vis/viewer/reset to change view parameters of
  viewer directly.

2nd May 2000  John Allison  vis-V01-01-02
- Added /vis/viewer/reset.
- G4VSceneHandler, G4VViewer, G4OpenGLXmMainMenubarCallbacks: corrected
  some name anomolies - "scene" was still being used in places where it
  meant "scene handler".
- G4VViewer: added GetShortName(), corrected SetName(...).
- G4ViewParameters.hh: improved class description.
- G4VisManager: added ViewerShortName(...) and GetViewer(...) utilities.
- G4RayTracer: set out-of-world ray to black.
- G4RayTracerViewer: corrected trapping of orthogonal projection.
- Some minor enhancements to tests.

27th April 2000  Gabriele Cosmo
- Removed unnecessary #include "G4Transform.hh" from VRML.  (Since
  geometry-V01-01-02 G4Transform.hh no longer exists.)  

27th April 2000  John Allison
- Updated README file.

12th April 2000  John Allison  vis-V01-01-01
- Made G4PhysicalVolumeModel::DescribeSolid virtual.
- G4PhysicalVolumeModel::DescribeSolid no longer deals with composite
  solids - now programmed into CompositeSolid::CreatePolyhedron, where
  CompositeSolid means G4IntersectionSolid, G4SubtractionSolid and
  G4UnionSolid.
- G4PhysicalVolumeModel::DescribeSolid no longer deals with displaced
  solids - now programmed into G4DisplacedSolid::CreatePolyhedron.
- Added G4LogicalVolumeModel::DescribeSolid, which explicitly adds
  components of composite solids as white forced-wireframe objects.
- Removed unnecessary #includes from G4VSceneHandler.hh which required
  consequent inclusion in many other scene handlers and viewers.

7th April 2000  John Allison  vis-V01-01-00
- Modified GNUmakefiles for restructured geometry.

29th February 2000  John Allison  vis-V01-00-06
- Changed `char*' to `const char*' in G4FRClientServer::Err(...).

28th February 2000  John Allison
- Cosmetic improvements to G4RayTracerSceneHandler.hh and G4RayTracerViewer.hh.

24th February 2000  John Allison
- Minor inmprovement of messages from /vis/viewer/refresh.
- Cosmetic tidying in G4OpenGLViewer.cc.
- Added protection for null viewer in G4RTSteppingAction.cc and
  G4RayTrajectory.cc.
- Corrected for zoom, etc., in G4RayTracerViewer.cc.

23rd February 2000  John Allison
- Added G4RayTracerSceneHandler and Viewer.
- Some modifications to other RayTracer routines for vis compliance.
- (Note: headAngle still not right - ray traced views are sometimes tipped.)

23rd February 2000  John Allison  vis-V01-00-05
- Includes raytracer-V01-00-01a which is original version plus fixes for
  ISO compliance.

21st February 2000  John Allison
- /vis/viewer/refresh no longer invokes ShowView().
- G4VViewer: introduced data member fShortName.
- Added G4RTSteppingAction and G4RayTrajectory to list of G4VisManager's
  friends.
- Improved G4VisManager::CreateSceneHandler() and CreateViewer() and
  handling of error in G4VisCommandSceneHandler::Create() and
  G4VisCommandViewer::Create().
- OpenGL: char* becomes const char*.  Small output text improvement.
- test: some changes for Ray Tracer.  Boolean intersection instead of union.

02 February 2000  Guy Barrand
- OPACS/src/G4XoViewer.cc : change WaitForNotify signature to 
  be able to compile with DEC-cxx 6.1.

vis-V01-00-04 29th January 2000  Satoshi Tanaka
- CVS tag is assigned to the Makoto's committing below.

29th January 2000  Makoto Asai
- Introduction of G4RayTracer (visualization/RayTracer/...)
- Migration of G4RayTracer
  affected files :
    visualization/GNUmakefile
    visualization/management/include/MyVisManager.cc
    visualization/management/src/G4VisManager.cc
  affected files in other directory :
    config/G4VIS_BUILD.gmk
    config/G4VIS_USE.gmk

vis-V01-00-03  17th January 2000  John Allison
- Added protection for no voxelisation in G4LogicalVolumeModel.cc.
- Changed endl to G4endl in G4VisCommandsViewer.cc and G4GoSceneHandler.cc.

14th January 2000  John Allison
- Added protection for no viewer in G4VisCommandsViewer.cc.

vis-V01-00-02  11th January 2000  John Allison
- General handling of displaced solid (G4PhysicalVolumeModel).
- Introduced /vis/viewer/show (/vis/viewer/update is synonym).
- Improved printing in /vis/camera/reset.

vis-V01-00-01  27th December 1999  Satoshi Tanaka
- VRML-V01-00-00 27th December 1999  Satoshi Tanaka
- G4endl ==> "\n" for fDest objects ... for ISO standard C++ compiler

vis-V01-00-00  16th December 1999  John Allison
- (Note: NOT FOR SYSTEM TESTING - this tag still has problems with
   displaying logical volumes and text.)
- Added /vis/viewer/refresh.
- Rationalised command lists for keeping parameter lists up to date,
  G4VVisCommand::sceneNameCommands, etc.
- Added AddThis(const G4Polycone&), etc., to prevent hiding warnings.
- Developments in test - see test/History.

vis-V00-01-14a  7th December 1999  John Allison
- Added `class' keyword in friend statement in G4VisStateDependent.hh
  to keep HP happy.

vis-V00-01-14  6th December 1999  John Allison
- Invert rotation of boolean component in G4PhysicalVolumeModel.cc.

vis-V00-01-13  Satoshi TANAKA  Dec 01, 1999
- DAWN-V00-01-08
- Removed implicit casting from the previous updation

vis-V00-01-12  Satoshi TANAKA  Nov 30, 1999
- DAWN-V00-01-06
- Fixing improper definition of alpha1, alpha2

vis-V00-01-11  29th November 1999  John Allison
- Introduced helper class G4VisStateDependent to decouple G4VisManager from
  G4StateManager, G4RunManager, etc.
- Archived old directoris inside test subdirectory.

vis-V00-01-10  25th November 1999  John Allison
- Adapted relevant header files of modeling and management for
  Software Reference Manual.

vis-V00-01-09  23th November 1999  Satoshi Tanaka
- Protection to ill-defined G4Trap in AddThis() 

vis-V00-01-08  10th November 1999  John Allison
- Added capability of viewing Boolean solids - coworks with geometry-V00-01-01.
- Fixed bug in G4VViewer to maintain proper status of fNeedKernelVisit.
- Added Boolean solids to test/src/MyDetectorConstruction.cc.
- Added circle to represent end of step in test/src/MySteppingAction.cc.

vis-V00-01-07  5th November  John Allison
- Added /vis/viewer/update [<viewer-name>].
- Some groundwork for /vis/scene/edit.
- Added additional check in G4VisManager::IsValidView().
- G4VSceneHandler::ClearStore() invokes fpViewer -> NeedKernelVisit().
  (After a clear of the graphical database it is necessary to do this.
  So if a derived class redefines, it must still invoke this base
  class method.
- G4Scene::AddRunDurationModel(), AddWorldIfEmpty(), AddEndOfEventModel():
  avoid duplicate models and flag with G4bool return argument.
- G4VisCommandsSceneAdd: respect the above G4bool return value.
- G4Scene::AddRunDurationModel(): remove temporary workaround for old CLHEP
  non-const problem.
- Added 3rd template argument of map (to keep Sun CC 4.2 happy) in
  G4OpenGLStoredSceneHandler.hh and G4OpenInventorSceneHandler.hh.
- G4OpenGLStoredSceneHandler::ClearStore() and
  G4OpenInventorSceneHandler::ClearStore() invoke base class function
  G4VSceneHandler::ClearStore().

VRML-V00-01-01 4th November 1999  Satoshi Tanaka
- Introduction of VRMLBeginModeling() for new vis commands  
- Updation and tagging of visualization/VRML/
  and this History file 

DAWN-V00-01-04  04th November 1999 Satoshi TANAKA  
- Protection to AddPrimitive( G4NURBS )
- Updation and tagging of visualization/FukuiRenderer/
  and this History file

DAWN-V00-01-03  02nd November 1999 Satoshi TANAKA
- Updation and tagging of visualization/FukuiRenderer/
  and this History file
- Environmental variable G4DAWN_MULTI_WINDOW is	
  renamed to G4DAWNFILE_MULTI_WINDOW for DAWN-file driver.
  (G4DAWN_MULTI_WINDOW	still works for a while.)

DAWN-V00-01-02  01st November 1999 Satoshi TANAKA
- Updation and tagging of visualization/FukuiRenderer/
  and this History file
- Separation of BeginModeling() and FRBeginModeling().
  Co-workable with /run/beamOn with the new vis commands.

29 Oct 1999  Guy Barrand
- Modify  G4Xo.cc to not load G4Xo.xrm resource file.
  Resource must be grouped in some g4.xrm file.

vis-V00-01-06  25th October 1999  John Allison
- No longer update view parameters in /vis/scene/add/volume, etc.
- Change G4RWTValHashDictionary to G4std::map in G4OpenGLStoredSceneHandler
  and G4OpenInventorSceneHandler (needs global-V00-01-03).

11 Oct 1999  Guy Barrand
- G4GoSceneHandler.cc/G4GoSceneHandler::EndPrimitives : modify
  the logic of setting the OMatrix for Go objects in order
  to avoid the usage of the CLHEP/Rotation.getAngleAxis that
  clearly has precision problem on some platforms (at least 
  Linux and HP-UX).

vis-V00-01-05  4th October 1999  John Allison
- Implemented /vis/scene/add/logicalVolume.
- Added G4LogicalVolumeModel.
- Augmented G4PhysicalVolumeModel so G4LogicalVolumeModel could inherit.
- Updated G4BoundingSphereScene and G4PhysicalVolumeSearchScene to
  implement extra virtual functions in G4VSceneHandler interface.
- Moved virtual destructor G4VModel::~G4VModel to non-inline implementation.
- Tidied G4VSceneHandler.

vis-V00-01-04 30 Sep 1999  Satoshi Tanaka
- RW/STL dependence was removed from VRML 1.0 driver

15 Sep 1999  Guy Barrand
- Modify  G4OpenGLStoredSceneHandler.cc to compile on Linux-g++ with STL.

vis-V00-01-03  27th August  John Allison
- Modified GNUmakefile to prevent building of global libraries.

vis-V00-01-02  27th August  John Allison
- Eliminate residual references to G4Ray.
- Improved some informational printing in G4VisManager::IsValidView.
- G4Vis
Manager::SetCurrentGraphicsSystem no longer gives spurious warnings.
- Improved README (change `gmake global' to plain `gmake').

vis-V00-01-01 26th August Satoshi TANAKA
- Protection for invalid calling of BeginModeling
- .DAWN.history ==> .DAWN_1.history 
   **** It means DAWN version 3.80a or  after is  required ***

vis-V00-01-00  24th August Satoshi TANAKA
- Improved README.

vis-01-00-15a  3rd July 1999  John Allison
- Improved README (Guy).
- Corrected a fprintf statement in G4OpenGLXViewer::spewWireframeEPS.

vis-01-00-15  29th June 1999  John Allison
- Moved #include <rw/tvhdict.h> from G4OpenGLSceneHandler.hh to .cc.
- Corrected #ifdef G4VIS_BUILD_OPENGL_DRIVER in G4OpenGLXViewer.hh.

vis-01-00-14  19th June 1999  John Allison
- Removed references to G4Ray from GNUmakefile.
- Archived (cvs removed) all G4Ray files.
- Cosmetic change to an output statement in G4VisToOldVisCommands.cc/

vis-01-00-13  1st June 1999  John Allison
- Updated README for May Release (Satoshi, John).
- Removed G4Ray from tag.

31 Mai 1999  Guy Barrand
- G4XoViewer : remove enabling/disabling XoCamera popup menu logic. 
  In some situation (N03) we were loosing the XoCamera popup menu. 
- G4XoViewer : correct ClearStore, ClearTransientStore.

vis-01-00-12a  26th May 1999  John Allison
- G4TrajectoriesModel.cc: (*TC) [iT] -> DrawTrajectory ();

vis-01-00-12  25th May 1999  John Allison
- Moved global operator != to member function.
- Updated OPACS to handle "ClearTransientStore" (Guy).

vis-01-00-11  12th May 1999  Guy Barrand
- G4VSceneHandler : ClearTransientStore.
- G4VisCommandsSceneHandler : protect against a null pointer.
- OpenInventor : use HEPVis/SoWindow to create windows (needed 
  on NT). Implement the a "transient scene graph" for "event"
  things. Use fXxx convention for fields.
- G4TrajectoriesModeling : do not draw a "marker" at each step by default. 

vis-01-00-10  10th May 1999  John Allison
- Acted upon Code Wizard reports.  Mainly made destructors virtual.

vis-01-00-09  28th April 1999  John Allison
- Changes for UserAction classes.

vis-01-00-08  John Allison
- Changes by Paulo Mora de Freitas for decoupling vis from parameterisation.

18th April 1999  John Allison
- Added "defined" after || in VRML1(1)(File).hh.  (Some preprocessors
  give an error without it.)

vis-01-00-07  15th April 1999  John Allison
- Replaced visualization/test/GNUmakefile by a simple one using binmake.gmk.
- Added CPPFLAGS += -I$(G4BASE)/intercoms/include to some GNUmakefiles ready
    for the move of G4VGraphicsScene to intercoms.

vis-01-00-06  29th March 1999  John Allison
- Platform dependency fix in G4VisCommandsScene.cc.

vis-01-00-05  7th February 1999  John Allison
- management: - Added /vis/scene/notifyHandlers.
              - Added virtual functions AddThis (const G4Polycone and
                G4Polyhedra to G4VSceneHandler
              - Moved some code from G4VisManager to G4Scene::AddWorldIfEmpty.
              - Various refinements and bug fixes.
- modeling: Augmented G4PhysicalVolumeSearchScene and G4BoundingSphereScene
            See modeling/History.
- OpenGL: - Corrected edgeCount check for triangles in
            G4OpenGLSceneHandler::AddPrimitive (const G4Polyhedron&).
          - Added (long unsigned int) cast in G4OpenGLXmRotationCallbacks.cc.
          - Added SetView and ShowView to G4OpenGLXViewer:
              // To force change of context...
              void G4OpenGLXViewer::SetView () {
                glXMakeCurrent (dpy, win, cx);
                G4OpenGLViewer::SetView ();  
              }
              // Hopefully to get better flushing in DEC OpenGL...
              void G4OpenGLXViewer::ShowView () {
                glXWaitGL ();
                glFlush ();
              }


vis-01-00-04 11th January 1999  John Allison
- Completed change of names from scene to sceneHandler, view to viewer.
- Vis manager and scene handlers now keep pointer to scene, rather than a copy.
- G4SceneList now a simple G4RWTPtrOrderedVector.
- /vis/camera/reset now resets viewpoint direction and up vector.

vis-01-00-03 10th January 1999  John Allison
- Added flags for viewing geom, hits, digis to G4ModelingParameters.

vis-01-00-02  9th January 1999  John Allison
- Changed Scene to SceneHandler, View to Viewer.

vis-01-00-01  6th January 1999  John Allison
- Made G4VisManager::GetInstance() private to prevent inadvertent misuse.
- Removed #include GNU_GCC - no longer necessary for egcs.
- Continued developing the new commands.

vis-00-04-04  16th December 1998  John Allison
- test/GNUmakefile for Linux-g++
- test/test19.cc - removed g4templates.hh
- OpenGL - reverted to 100%.

vis-00-04-03  9th December 1998  John Allison
- Made /vis/ commands from /vis~/.  The idea is to maintain backwards
  compatibility while allowing us to "deprecate" the old commands over
  a period of time.  Some of these /vis/ commands respond with "superceded",
  i.e., superceded by new commands, but still available in /vis~/.
- OpenGL viewing volume increased by 20% to prevent corners being clipped.

- 08/12/98 : G.Barrand : OpenInventor : due to 
  huge load problems on various platforms, init only
  the HEPVis things that are needed.

vis-00-04-02  30th November 1998  Satoshi Tanaka
- G4VRMLFILE_DEST_DIR for customising out file name - see VRML/History.

29th November 1998
- Added CPPFLAGS += -I....electromagnetic/utils/include to test/GNUmakefile.
- Added fName to G4SceneData.

vis-00-04-01  25th November 1998  John Allison.
- G4Ray/GNUmakefile update for move of files in particles.
- Added const G4VisAttributes* fpDefaultVisAttributes and access
  functions to G4ModelingParameters.
- Reverted to default assignment operator and copy constructor for
  G4ModelingParameters and G4ViewParameters.
- G4PhysicalVolumeModel can now handle invisible daughters.
- More new /vis/ commands - depends on intercoms-00-04-01.
- G4VScene passes DefaultVisAttributes* to ModelingParameters.

vis-00-03-07  23rd November 1998  John Allison.
- modeling/GNUmakefile update for move of files in particles (Hisaya).
- Removed semi-colon in G4BoundingSphereScene.cc.

vis-00-03-06  9th November 1998  John Allison.
- Small change to a message in G4VisManager.
- VRML refinement - see VRML/History.
- Needs greps-00-03-03.

vis-00-03-05b  9th November 1998  John Allison.
- Merged 6th November changes with vis-00-03-05a
- Bug fix in G4VisManager::IsValidView for batch running.
- Needs greps-00-03-03.

vis-00-03-05a  9th November 1998  Satoshi Tanaka
- VRML 2.0 Visualization driver is added to 
  management/include/MyVisManager.cc.

vis-00-03-05  9th November 1998  Satoshi Tanaka
- VRML 2.0 Visualization driver is commited:
 (1) Generatin of VRML 2.0 format files to describe Geant4 simulation.
 (2) Interactive displaying of physiccal-volume names and copy numbers
 (3) Interactive displaying of hit positions (displayed strings are
     costomizable.
 (4) Wireframe drawing style of Geant4 visualization is reflected as
     transparency = 0.7.  This value is customizable.
     If transparency is 1.0, drawing of detector geometry is skipped,
     and hits can be picked easily.

6th November 1998  John Allison
- Implemented basic /vis/viewer commands.
- Added `const G4String& name' argument to G4VScene and G4VView constructors.

vis-00-03-04  30th October 1998  John Allison
- Tagged.

29th October 1998  Guy Barrand
- G4OpenGLXView.hh, G4OpenGLXmView.cc, G4OpenGLXmWindowHandlingCallbacks.cc
  in order that things compile and compile without warnings on HP/aCC

14th October 1998  John Allison
- Augmented the new /vis/ commands.  Still not complete but they
  co-work with the old commands.
- Changed char* fName to G4String fName in G4VScene and G4VView.
  Consequent changes in G4OpenGLView.  Also OpenInventor?  Etc.

11th October 1998 Andy Walkden
- added (not a very good) version of hidden lines removal code. This code 
  suffers from depth buffering artefacts. glPolygonOffset is a feature of 
  OpenGL version 1.1, and can help overcome depth buffer problems. The code 
  to utilise glPolygonOffset is committed, but commented out, as it doesn't 
  seem to work with the version of Mesa available on rsplus currently. My 
  ideal strategy is to enable depth testing, draw the model as lines, enable 
  filled polygon offsetting (glPolygonOffset(1.0 /*offset scale factor*/, 
  2/*offset bias*/); glEnable (GL_POLYGON_OFFSET_FILLED);) then draw the 
  model as filled polygons. The offsetting should just add `2' (in window 
  coordinates, I think) onto the z value of all vertices relating to filled 
  polygons, thus dismissing the conflict between almost identical z values 
  for lines and filled polygon edges.

vis-00-03-03 9th October 1998  John Allison
- G4VisManager inherits G4VStateDependent.  This is used to draw
  end-of-event models.

4th October 1998 Andy Walkden
- Added ability for all G4OpenGLX derived graphics systems to produce
  vectored PostScript hardcopy. Facility for `automated screen dump'
  (i.e. pixmap output) still kept, as some rasterization features
  don't make it into the vectored PostScript output (such as haloing
  effects). Facility currently available via G4OpenGLXm by clicking
  `Miscellany' then `Create .eps file', to get a popup printing
  window.

vis-00-03-02a  26th September 1998  
- DAWNFILE driver is made platform dependent.
  (It is now compilable both at both Unix and NT without necessity
   of C macros like WIN32.)

vis-00-03-02  25th September 1998  
- DAWNFILE driver is ported to VC++

vis-00-03-01  24th September 1998  John Allison
- Eliminated G4VPhysicalVolume* fpWorld data memebr from G4VisManager.

22th September 1998 Guy Barrand.
- Correct modeling, management, G4Ray /GNUmakefile to have
  correct digits+hits includes.

19th September 1998 Guy Barrand.
- Due to a correction in globals.h restore correct code
  so that OpenInventor files compile correctly on NT.

vis-00-02-06  31st August 1998  John Allison
- Added G4VModel::Validate() and in subclasses.
- Reverted to default copy constructir and assignment operator in G4SceneData.
- Implemented G4VisManager::GeometryHasChanged().
- Switched on echoing of commands and history mechanism in test19.g4m.

vis-00-02-05  27th August 1998  John Allison
- Added G4HitsModel and G4TrajectoriesModel.
- Added /vis/scene/include/hits and trajectories, and some bug fixes.

vis-00-02-04  22nd August 1998  John Allison
- Many changes in modeling - see modeling/History.
- New commands: /vis/scene/create, list, add/volume, add/ghosts.

vis-00-02-03a  20th August 1998  John Allison
- Restored some code in G4SceneData.cc
- Fixed syntax bug in G4PhysicalVolumeSearchScene.hh

vis-00-02-03  14th August 1998  John Allison
- Added G4VisManager::GeometryHasChanged() - run manager can notify change.
- Removed AddRun(Event)DurationModelToCurrentSceneData - no longer used.
- Some bug corrections in visualization/OpenGL (Guy Barrand - see
  vis blackboard for details).
- Some protection added in visualization/OPACS (do.)
- Created visualization/test/OPACS (do.)

12th August 1998  John Allison
- More new commands - not fully functional yet.

11th August 1998  Guy Barrand
- G4OpenInventor : remove uneccesary includes.

vis-00-02-02b  11th August  Satoshi Tanaka
- AddPrimitive() for polymarker are implemented in DAWN and VRML drivers.

vis-00-02-02a  9th August  John Allison
- Small bug fix in G4VisCommandsScene.cc.

vis-00-02-02  9th August  John Allison
- Changed '.' to '-' in scene/view names.
- Began introduction of new /vis/ commands.
- Consequent changes to test - see test/History.

7th August  Guy Barrand.
- OPACS : use G4VView name to build widget names.
- OPACS : use new interactor parenting logic.
- OpenGL, OpenInventor, G4Ray : clean compilation warnings for OSF1/cxx, HP/aCC.

7th August  John Allison/Satoshi Tanaka/Guy Barrand.
- Added G4<driver>Scene::AddPrimitive (const G4Polymarker&) to keep
  compilers happy.

vis-00-02-01  6th August  John Allison
- Created G4VisManagerRegisterMessengers.cc.
- Bug fix in G4VisManager: now follows change of world volume after
  /vis~/clear/scene.
- OpenInventor: Correct some upper -> lower case mess (Guy Barrand)
- G4RayView: syntax bug fixes.

4th August 1998 Andy Walkden
I made some changes to OpenGL code...
The changes are (i) to tidy up some redundant hidden line 
removal function calls, (ii) to put some hidden line removal 
code in G4OpenGLScene::AddPrimitive(G4Polyhedron) and 
(iii) to add an option to generate an encapsulated postscript 
file of the current view in OpenGLXm. There is now a button 
in the Miscellany pulldown of the main menubar to bring up 
a shell in which you can specify a filename, colour or black 
and white and request the creation of a .eps file. The 
code is to be found in G4OpenGLXView, and so is not bound 
to the Xm user. Also it needs fixing for some Mesa 
implementations, and the HP CDE environment manages to stuff 
things up when rendering to a pixmap (although CDE makes a 
mess of most other things as well, so this isn't
disastrous).


vis-00-01-08  21th July 1998  John Allison
- Removed automatic refresh from /vis/camera/reset in G4VisCommandsCamera.cc.

vis-00-01-07b  21th July 1998  Satoshi Tanaka
- Revised G4FRSCENE::SendBoundingBox() so that 
  zooming polycy of  DAWN drivers becomes consistent with 
  OpenGL drivers

vis-00-01-07  20th July 1998  John Allison
- Corrected bug in G4VisManager::IsViewValid to trap drawing commands
  before geometry is available.

vis-00-01-06  19th July 1998  John Allison
- Default culling: culling - on, culling of invisible objects - on.
- set/drawing_style does *not* change culling flags.
- Minor bug fixes.

vis-00-01-05  15th July 1998  John Allison
- Cleaned up after name changes.
- Minor bug fixes.

vis-00-01-04  7th July 1998  Guy Barrand
- Introduced interactivity.gmk into GNUmakefiles.

vis-00-01-03  6th July 1998  John Allison
- Changes for interface restructuring.
- Simplified MyVisManager.

vis-00-01-02  5th July 1998  John Allison
- Changed visualization/GNUmakefile to use globlib.gmk.
- Updated README for geant4beta.
- Changed /vis~/draw/Ghosts to /vis~/draw/ghosts.

vis-00-01-01  4th July 1998  John Allison
- Moved G4VIS_BUILD.gmk and G4VIS_USE.gmk to geant4beta/config.
- Changed /vis/ to /vis~/.

3rd July 1998  John Allison
- Small changes to test - see test/History.
- Tidied.
- Removed GNUmakefile.G4VIS_USE and make_list.sh.

30th June 1998 - Paulo & Marc
- added the G4FlavoredParallelWorldModel.hh file to 
  visualization/modeling/include;
- added the /vis~/draw/Ghosts [particle name] command
  in the G4VisManMessDraw.cc file;
- added 
  CPPFLAGS += -I$(G4BASE)/geometry/magneticfield/include and
  CPPFLAGS += -I$(G4BASE)/processes/parameterisation/include
  lines to GNUmakefile to compile G4VisManMessDraw.cc.

geant4beta
============================================================
geant4alpha

vis-00-06-09  26th June 1998  John Allison
- OPACS and Open Inventor - something about widget parents (GB)
- Removed /new_vis/ commands.

vis-00-06-08a  26th June 1998 Satoshi Tanaka
- Updated G4VIS_USE.gmk
- (1) Macro -DG4VIS_USE_DAWNFILE is made properly set
- (2) G4VIS_USE_DAWN_ is renamed to G4VIS_USE_DAWN_OR_DAWNFILE
- (3) G4VIS_USE_VRML_ is renamed to G4VIS_USE_VRML_OR_VRMLFILE

vis-00-06-08  22nd June 1998  John Allison
- Changed G4BASE = ../.. to G4BASE = $(shell (cd ../..; pwd))
- Changed GNUmakefile.G4VIS_BUILD to G4VIS_BUILD.gmk

vis-00-06-07  19th June 1998  John Allison
- Defined G4_SOLVE_VIS_TEMPLATES in G4VIS_USE.gmk.  Needs
  the head version of GNUmakefile.architecture.
- Consequential changes (improvements) to template handling in test19.cc
- Some minor improvements in modeling.

vis-00-06-06  11th June 1998  John Allison
- Fixes to test_utils - see test/History.
- Improvements in modeling - see modeling/History.

vis-00-06-05  11th June 1998  Satoshi Tanaka
- In G4VisManMessDraw.cc and G4VisManMessSet.cc , ...
  //    G4double unit = G4UIcommand::valueOf (unitString);
        G4double unit = G4UnitDefinition::GetValueOf (unitString);

vis-00-06-04  10th June 1998  John Allison
- Created G4VIS_USE.gmk to replace GNUmakefile.G4VIS_USE.
- Changed test/GNUmakefile to use G4VIS_USE.gmk.
- Separate libraries are now default in GNUmakefile.
- Committed an interim version of README.
- Moved G4BoundingSphereScene from management to modeling.
- First attempt at defining the "scene" as lists of models.
- Removed some unnecessary checks in G4VisManMess*.

vis-00-06-03  27th May   1998  Satoshi Tanaka
- DAWNFILE driver is added. It is to generate g4.prim file
  under the current directory.  And make DAWN or DAVID invoke 
  using the g4.prim file as an input. For details, see the blackboard 
  document.

21st May 1998 Andy Walkden
- Added hidden line removal code to G4OpenGLView. HLR utilises OpenGL's
  stencil buffer, but still the drawn lines are a little fragmented
  (an effect seen often when depth buffering is used to resolve pixel
  rendering disputes). 
- HLR requires wireframe rendering, filled polygon rendering and then wireframe
  rendering again. Hence, three visits to the kernel help to slow HLR
  rendering right down.

vis-00-06-02  20th May   1998  Satoshi Tanaka
- Added G4VisFeaturesOfDAWNFILE.hh, cc
- Revised visualization/GNUmakefile, GNUmakefile.G4VIS_BUILD,
  GNUmakefile.G4VIS_USE
- These are for DAWNFILE driver in preparation, which enables to
  invoke DAVID directly from Geant4.

vis-00-06-01a 20th May   1998  Satoshi Tanaka
- code refinement of FukuiRenderer driver

vis-00-06-01  29th April 1998  John Allison
- Introduced non-pure virtual functions
  Establish/DecommissionSpecials (G4PhysicalVolumeModel&) in
  G4VGraphicsScene with implementation of the former in G4VScene.
  Modified G4PhysicalVolumeModel to use it; also protected
  G4PhysicalVolumeModel against non-implementation of
  Establish/DecommissionSpecials.
- Template instantiations in G4RayView made exclusive to GNU_GCC
- Some minor changes under test - see test/History.

27th April 1998 Andy Walkden
- altered OpenGLView's structure a little. Now, G4OpenGLXmView is a
  type of (inherits from) G4OpenGLXView.
- made code for haloing effects common to all OpenGL views.
- changed XUnmapWindow in G4OpenGLXView::~G4OpenGLXView to XDestroyWindow
  (idea of Guy's)

27th April 1998 Guy Barrand
- vis/OPACS : remove Begin/EndModeling in G4GoScene.

vis-00-05-06  23rd April 1998  John Allison
- Changed test19.mac to test19.g4m and consequent change in test19.cc.
- Fixed order of linking vis-a-vis -lG4track and -lG4tracking (GB).
- Fixed inadvertent bug in test_utils/src/MyPhysicsList.cc.
- Bug fix in G4OpenGLXmConvenienceRoutines.cc (GB).

vis-00-05-05  21st April 1998  John Allison
- Added run-time command line argument: test19 [<session-type>] [<verbosity>]
- Removed #if GNU_GCC from template instantiation requests in test19.cc.
- Added fDefaultTextVisAttributes to G4ViewParameters.
- Added G4VScene::GetTextColour (changed G4FukuiRendererScene, G4GoScene and
  G4OpenInventorScene.
- Changed default view parameters: culling on and invisible object culling on.
- Tidied CreateScene/View.
- Continued BaBar development.

15th April 1998  John Allison
- Added test/EucIntfce/, test/Bogus/ and test/babar_utils/ for BaBar test code.
  Also a new main() in BaBarCallListTest.cc.  Also a data file call_list.dat.
  See babar_utils/README.
- Camera commands, except spin and orbit, no longer initiate draw.
- Text is blue for time being (visible on black or white background.)

15th April 1998 : Guy Barrand
- From discussion with John and Simone G4VToolkit 
  has been renamed to G4VInteractorManager.

vis-00-05-04a  11th April 1998  Satoshi Tanaka
- Code improvements in DAWN driver
- (1) View parameters are sent to DAWN only at drawing times.
- (2) Way of getting marker size are made simpler by using
-     G4VScene::GetMarkerRadius ()  etc.

vis-00-05-04  8th April 1998  John Allison
- Small bug fix - then tag for Easter.

HEAD  6th April 1998  John Allison
- Added error printing to G4OpenGLScene::AddPrimitive (const G4Text& text).
- Added /vis~/draw/text.
- Added units to /vis~/draw/axes.
- Began the job of restructuring vis commands; so there is a new class
  G4VisCommandsCameraMessengers for starters!

HEAD  4th April 1998  John Allison
- Removed automatic drawing after /vis~/set commands.  Now an explicit
  redraw is necessary, but it allows you to change parameters during
  building a view.  For example to superimpose projected hits on a
  section:
    /vis~/clear/view
    /vis~/set/section_plane on 0 0 20 cm 0 0 1
    /vis~/draw/current
    /vis~/set/section_plane off
    /run/beamOn
- Fixed small bug in OpenGL for section drawing.
- Made some small improvements in G4ViewParameters.

vis-00-05-03  4th April 1998  John Allison
- Re-engineered maintenance of current depth, etc.  Needed new method
  G4VGraphicsScene::BeginModeling (G4PhysicalVolumeModel&) in
  graphics_reps.  The result is much cleaner model and modeling
  parameters classes.  Also, the current depth, physical volume and
  logical volume are immediately available as protected pointers in
  G4VScene.
- Required G4VScene::Begin/EndModeling to be invoked from subclass.
- Introduced G4NullModel to hold modeling parameters.  This avoids
  having to create a G4VModel for each graphics primitive.

HEAD  3rd April 1998  John Allison
- Added GetMarkerDiameter/Radius to G4VScene.
- Bug fix in G4VScene::GetMarkerSize.
- Removed GetCurrentPhysicalVolume from G4PhysicalVolumeModel - now in
  G4ModelingParameters (but might move again soon!).
- test/GNUmakefile now uses "$(MAKE) separate" for vis libraries.
- test19 recognises argument "1" as a verbose flag value.

HEAD April 2, 98 G.Barrand
- Modifications for Win32/NT.
- G4VIS_BUILD_[OIX, OIWIN32]_DRIVER, G4VIS_USE_[OIX, OIWIN32]

vis-00-05-02  26th March 1998  John Allison
- Added GetMarkerSize to G4VScene.
- Made ~G4VisManager virtual.
- Added current logical volume and current physical volume to working
  space in modeling parameters.  So it is no longer necessary to cast
  to G4PhysicalVolumeModel; all such casts removed.
- Moved nested classes out of G4RayView.

HEAD March 24, 98 G.Cosmo
- Modified G4VisManMessExpert.cc to correctly use random numbers
  by calling directly G4UniformRand().

HEAD March 24, 98 G.Barrand
- GNUmakefile : MAKESHLIB changed in G4MAKESHLIB

vis-00-05-01a  24 March 1998  Satoshi Tanaka
- Geometry tree can be obtained by, e.g., 
  % grep PVName g4.prim > g4.tree

vis-00-05-01  23rd March 1998  John Allison
- Made RegisterGraphicsSystems pure virtual.
- Added verbose level control to printing at initialization.
- Fixed (hopefully) bug in scene deletion.
- Made AddPrimitive (const G4Text/Circle/Square) pure virtual.
  (Had to add dummy void G4VRML1SCENE::AddPrimitive (const G4Text&).)
- Made AddPrimitive (const G4Polymarker&) virtual again.
- Opened some .hh files to G4VIS_USE flags.
- Removed Pre/PostAddThis from some graphics systems (not OPACS, OI).
- First implementation of G4ModelingParameters::hierarchy (DTREE).
- Added Get Global/Current Tag/Description to G4VModel.
- Introduced "working space" in G4ModelingParameters for geometry depth.
- Relocated some template instantiation requests (might give trouble on DEC).

vis-00-04-05a  16th March 1998  Satoshi Tanaka
- DAWN driver outputs physical-volume names and copy number.

vis-00-04-05  5th March 1998  John Allison
- Added G4Text/Circle/Square in G4RayScene.hh.
- Added G4Text/Circle/Square in G4BoundingSphereScene.hh.
- Made AddPrimitive (const G4Polymarker&) non-virtual in G4VScene.hh.

HEAD  5th March 1998  Andy Walkden
- Implemented G4Circle/Square.
- Added haloing to OpenGLXm "value added" options.

HEAD  5th March 1998  S.Sadilov
- visualization/GNUmakefile - using $OUT_LIB intoduced in
  GNUmakefile.architecture
- visualization/management/GNUmakefile - compiling G4VisManMessSet.cc
  without optimization on WinNT

vis-00-04-04a  5th March 1998  Satoshi TANAKA
- Environmental variables  to customized DAWN driver is
  renamed from DAWN_... to G4DAWN_...
- Default mode of DAWN driver is  EPS mode, i.e. 
  mode in which EPS files are generated.

vis-00-04-04  4th March 1998  John Allison
- First tag with modeling under visualization.
  Here's what you need to do...
    cd prototype
    cvs update -A -d -P modeling
    cd visualization
    cvs update -r vis-00-04-04 -d -P
  Change the following lines in your GNUmakefile...
    CPPFLAGS += -I../../visualization/modeling/include
    LDFLAGS  += -L../../visualization/modeling/$(G4SYSTEM)
    Remove: @cd ../../modeling      &&   $(MAKE)

vis-00-04-03  4th March 1998  John Allison
- Last tag with modeling at same level as visualization.
- Renamed near and far (VC++ keywords) in G4ViewParameters.cc.
- Removed unnecessary #include <strstream.h> or adapted for WIN32.

vis-00-04-02b  22nd February 1998  Satoshi Tanaka
- Split G4VIS_BUILD_VRML1_DRIVER into G4VIS_BUILD_VRML_DRIVER 
                                 and  G4VIS_BUILD_VRMLFILE_DRIVER.
- Split G4VIS_USE_VRML1          into G4VIS_USE_VRML           
                                 and  G4VIS_USE_VRMLFILE.

vis-00-04-02a  18th February 1998  John Allison
- Bug fix in G4RayView!

vis-00-04-02  18th February 1998  John Allison
- Introduced /vis~/set/section_plane.

vis-00-04-01  13th February 1998  John Allison
- Made messengers compatible with the new style.

vis-00-03-02a  3rd February 1998  John Allison
- Bug fix for 02.
- Changed GNUmakefile to use processes sub-libraries.

vis-00-03-02  2nd February 1998  John Allison
- Modernised messengers.

vis-00-03-01a 29th January 1998  John Allison
- Tagged a few improvement in OpenGL

vis-00-03-01 26th January 1998  John Allison
- Old environment variables abandoned - see visualization/README.
- G4VisManager is now instantiated *and* deleted in main().
- G4VisRegisterGraphicsSystem.icc replaced by
  MyVisManager::RegisterGraphicsSystems as a way - now optional - of
  a user overriding the default graphics system registration.

Januray 20 , 98 G. Barrand

- Implement object rotation in OPACS driver
  
Januray 19 , 98 G. Barrand

- Correct OpenInventor code so that it is ANSI-C++
  and then compiles with OSF1/cxx, HP-UX/aCC.

7th January 1998  John Allison
- Restructuring to use modeling category.

December 19, 97 G. Cosmo - (alpha03)

- 1st December 1997 - John Allison.
- This is interim code for testing by the visualization
  group and it will be tagged soon.  You must update to the
  head of graphics_reps and visualization simulatanouesly.
  It coworks (I hope - it's difficult to be 100% sure about
  this since I have a few changes for other categories in
  the pipeline - see previous email) with:
    digits+hits              digi-00-02-01
    events+tracks            event-00-02-01
    geometry                 HEAD
    global                   global-00-02-01
    intercoms                intercoms-00-02-01
    interfaces               interfaces-00-02-01
    particle+matter          piim-00-02-01
    run                      run-00-02-01
    track                    track-00-02-01
    tracking                 tracking-00-02-01
- Addition of:
    visualization/GNUmakefile.transition_to_G4VIS_BUILD
    visualization/GNUmakefile.transition_to_G4VIS_USE
    visualization/GNUmakefile.vis_cppflags_for_G4VIS_USE
  to turn the existing environment variables into the
  to-be-adopted G4VIS_... variables - see visualization/test/README.
- Consequent changes to other visualization GNUmakefiles.
- New way of instantiating graphics systems:
  Set the appropriate environment variables and include and
  compile G4VisRegisterGraphicsSystems.icc in your main():
    ...
    #include G4VisRegisterGraphicsSystems.icc
    ...
    main() {
      ...
- Added G4VisFeaturesOfXXX files which simple return a G4String.
 (Guy, Jeff, would you like to join this scheme?)
- Added commands /vis~/delete/scene and /vis~/delete/view.
- Added /vis~/show/view to test19.odb.

vis-00-02-01 to vis-00-02-05a not logged!!!

vis-00-01-02  13th July 1997  John Allison
- Consolidation of previous tag.

vis-00-01-01  8th June 1997  John Allison
- First systematic tag.
- G4Ray introduced.
