$Id: History 81903 2014-06-06 13:52:37Z gcosmo $ ------------------------------------------------------------------- ========================================================= 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 ! ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- -------------------------------------------------------- * Started 31st May 2005. Hitherto, management history * * has been in the top visualization history file. * -------------------------------------------------------- History file for visualization management sub-category ------------------------------------------------------ 10th April 2014 Gabriele Cosmo (visman-V09-06-28) - Get rid of deprecated 'register' storage class specifier in source files. 22nd November 2013 John Allison (visman-V09-06-27) - G4VisManager.cc: Fix for end-of-run action "accumulate". - G4VisCommandsSceneAdd.cc: Tidied. 21st November 2013 Makoto Asai (visman-V09-06-26) - Move invokation with G4TransportationManager in G4VisCommandsSceneAdd.cc to G4TrakingMessenger. G4TransportationManager is thread-local. G4VisCommandsSceneAdd.cc cannot access to G4TransportationManager. 15th November 2013 John Allison - Some changes as suggested by PVS. - Fixes for Coverity. 9th November 2013 John Allison (visman-V09-06-25) - G4VisCommandsViewerSet.cc: o /vis/viewer/set/style: Add single letter option to parameter candidate list - "w wireframe s surface". o /vis/viewer/set/projection: Improve guidance. - G4VisCommandsViewerDefault.cc: o /vis/viewer/default/style: Add parameter candidates, "w wireframe s surface". 8th November 2013 Laurent Garnier - G4VisCommandsViewerSet.cc: Add candidate parameter for /vis/viewer/set/style. This will be useful for fixing JIRA DEV-10 bug (but not required) 7th November 2013 John Allison (visman-V09-06-24) - G4VisCommandsSceneAdd.cc: /vis/scene/add/date: o Position at top-right corner of view, right-justified. o (It was top-centre, left justified.) 7th November 2013 John Allison (visman-V09-06-23) - G4VisCommandsSceneAdd.cc: Fix compilation error. 6th November 2013 John Allison (visman-V09-06-22) - G4VisCommandsTouchableSet.cc and G4VisCommandsSceneAdd.cc: o Further improvements to parameter guidance. 4th November 2013 John Allison (visman-V09-06-21) - G4VisManager: o Keep events for MT-refresh mode. o Improve names and informationals. - G4Scene: Initialise fMaxNumberOfKeptEvents to 100. - G4VisCommandsScene.cc: o Allow user to specify the number of kept events in refresh mode. This has no effect in sequential mode but is used by MT: /vis/scene/endOfEventAction refresh 3rd November 2013 John Allison (visman-V09-06-20) - G4VisManager: Further improvements to event keeping and informationals. - G4VisCommands.cc: /vis/reviewKeptEvents: o Improved informationals. 2nd November 2013 John Allison (visman-V09-06-19) - G4VisManager: Fixed event keeping in MT mode. 1st November 2013 John Allison (visman-V09-06-18) - G4VisManager: Printing brought under control of verbosity flag. - G4VisCommandsTouchableSet.cc, G4VisCommandsSceneAdd.cc: o /vis/touchable/set/colour and several other commands: . Parameter guidance may be called only once. So instances of multiple calls to parameter guidance have been eliminated. Any extended information that was in parameter guidance has been moved to command guidance. This fixes a problem whereby guidance information was being lost and fixes a crash in the GAG interface. 14th October 2013 Laurent Garnier G4VisExecutive.icc: avoid mix with WT driver and GL2PS 25th September 2013 John Allison (visman-V09-06-17) - G4VisManager.cc: o Vis commands are *not* be broadcast to threads. o Fix crash in EndOfEvent for batch MT mode. 24th September 2013 John Allison (visman-V09-06-16) - G4VisCommands.cc: o /vis/reviewKeptEvents: Keep enabled state (ConcreteInstance pointer). - G4VisManager.cc: o Move SetConcreteInstance *out* of IsValidView. . Now in Enable(). . Begin/EndOfRun/Event methods protected if !ConcreteInstance. o Implemented IgnoreStateChanges. o MT mode: . Implemented maxNumberOfKeptEvents. o Cosmetics. 20th September 2013 John Allison (visman-V09-06-15) - First implementation of multithreading visualisation: o Drawing from user code is explicitly ignored. o Events are kept until end of run, then drawn: - this could mean a huge consumption of memory. - to avoid this, "/vis/disable". o Some debug statements remain for testing. 19th September 2013 Makoto Asai (visman-V09-06-14) - Implementing IgnoreStateChanges() to be invoked from RayTracer and other utilities that have their own event loop. 12th September 2013 Makoto Asai (visman-V09-06-13) - Introducing G4VisManager::SetUpForAThread(). This method is invoked by G4WorkerRunManager so that G4VisManager will get noticed at the end of event of each worker thread. 26th August 2013 John Allison (visman-V09-06-12) - /vis/scene/add/magneticField o Added integer parameter: No. of data points per half scene. 24th August 2013 John Allison (visman-V09-06-11 coworks modeling-V09-06-09) - Removed G4FlavoredParallelWorldModel. 18th August 2013 John Allison (visman-V09-06-10 requires modeling-V09-06-08, which in turn requires greps-V09-06-06) - Added /vis/scene/add/magneticField. 30th July 2013 John Allison (visman-V09-06-09) - G4VisManager.cc: o Added missing fDirectoryList.push_back for /vis/touchable/. Fixes Bug 1503. o Removed check on fpSceneHandler->GetModel() in G4VisManager::DispatchToModel. This was a bug introduced during the elimination of i_mode. Fixes Bug 1499 (whereby trajectory->DrawTrajectory() had stopped working). 10th June 2013 John Allison (visman-V09-06-07) - G4ViewParameters.cc: Migrated to modeling-V09-06-06: o Replaced PVNameCopyNoPathNotEqual by appropriate operator!=. o Replaced VAMSNotEqual by appropriate operator!=. 10th June 2013 John Allison (visman-V09-06-06) - G4VViewer: o Added new virtual function: virtual const std::vector* GetPrivateVisAttributesModifiers() const; // So that privately accumulated vis attributes modifiers may be // concatenated with the standard vis attributes modifiers for commands // such as /vis/viewer/set/all and /vis/viewer/save. This returns zero by default, but if implemented in a subclass can be used to return vis attribute modifiers - e.g., see G4OpenGLQtViewer. - /vis/viewer/save, /vis/viewer/set/all: o Temporarily concatenate the above private vis attribute modifiers for saving to standard output or file or copying to a viewer. Does not modify the standard vis attribute modifiers of the current view. - G4ViewParameters::TouchableCommands: o Improve writing of touchable commands for /vis/viewer/save. If successive paths are equal, avoid repeating /vis/set/touchable. 29th May 2013 John Allison (visman-V09-06-05) - G4VisManager::RegisterEndOfRunUserVisAction: o Prevent storing of vis extent is radius <= 0. - G4VisCommandsSceneHandler.cc: Spelling correction in a comment. - G4VisCommandsSet.cc: Improved guidance for "/vis/set/touchable". 24th February 2013 John Allison (visman-V09-06-04) - G4VisCommandsSceneAdd: o Removed unused fields as warned by new clang compiler. 14th January 2013 John Allison (visman-V09-06-02 and 03) - G4VisCommandsSceneAdd.cc: 12th January 2013 John Allison (visman-V09-06-01) - G4VisCommandsSceneAdd: o Coverity fixes. 2nd December 2012 John Allison (visman-V09-06-00) - Removed NURBS and references to i_mode. 17th November 2012 John Allison (visman-V09-05-47) - G4VisManager.cc: o Improved guidance on /vis/set/ and /vis/touchable/ command directories. 2nd November 2012 John Allison (visman-V09-05-46) - G4ViewParameters.hh: Tidied. 30th October 2012 John Allison (visman-V09-05-45) - G4VisManager.cc: o Improved PrintAvailableGraphicsSystems. Collected systems of same name on one line with a list of nicknames. 29th October 2012 John Allison (visman-V09-05-44) - G4VisCommandsSceneAdd.cc: /vis/scene/add/date: o Added user-specified date-time as last argument(s) on command line. 24th October 2012 John Allison (visman-V09-05-43) - G4VGraphicsSystem: o Added virtual function IsUISessionCompatible. o Changed spelling of SetNickname for consistency. - G4VisCommandsSceneHandler.cc: /vis/sceneHandler/create: o If UI session is incompatible, look for a "fallback" graphics system. - G4VisExecutive.icc: o Added "fallback" graphics systems for Qt. 24th October 2012 John Allison (visman-V09-05-42) - G4ViewParameters.cc: o Added fVisAttributesModifiers to operator<< and operator!=. - G4VisCommands.cc: /vis/list: o Added printing of possible attributes for trajectories and touchables. - G4VisCommandsViewer.cc: /vis/viewer/copyViewFrom: o Added reference to /vis/viewer/set/all for copying scene modifications. 18th October 2012 John Allison (visman-V09-05-41) - G4VisExecutive.icc: o Reverted to G4OpenInventorXt as the default OI for X Windows. o Get G4OpenInventorXtExtended with "/vis/open OIXE". 17th October 2012 John Allison (visman-V09-05-40) - G4VisExecutive.icc: o Added G4OpenInventorXtExtended and made it the default OI for X Windows. 11th October 2012 John Allison (visman-V09-05-39) - G4ViewParameters: o Added "Commands" functions for saving state to /vis/ commands. - G4VisManager, G4VisCommandsViewer.cc: o Added /vis/viewer/save. - G4VSceneHandler: o Tidied. 9th October 2012 John Allison (visman-V09-05-38) - G4VisCommandsTouchableSet: o Fixed compiler warnings on Windows. - G4VisManager.cc: o Fixed run-time warning about command directory. 9th October 2012 John Allison (visman-V09-05-37) - Completed /vis/touchable/set/ commands. 8th October 2012 John Allison - First attempt at /vis/touchable/set/ commands. - Only /vis/set/touchable and /vis/touchable/set/colour implemented. - sources.cmake: o Added new files G4VisCommandsTouchableSet.hh/cc. - G4VisManager.cc: o Added the above commands. - G4VVisCommand.cc: o Added static cache for current touchable path. - G4VisCommandsSet.cc: o Added /vis/set/touchable. - G4VisCommandsTouchableSet: o New class for /vis/touchable/set/ commands. 7th October 2012 John Allison (visman-V09-05-36) - G4ViewParameters: o Added VisAttributesModifiers. This is to be used by new commands, /vis/touchable/set/... - G4VSceneHandler:: CreateModelingParameters: o Added copying of VisAttributesModifiers. - G4VisCommandsSceneAdd.cc: o Code tidy. 6th October 2012 John Allison (visman-V09-05-35) - G4VisCommandSceneAdd.cc: G4VisCommandSceneAddVolume: o Pick up found full path from G4PhysicalVolumeSearchScene so that it can be passed to G4PhysicalVolumeModel as a base. The base full path is the full path of the top physical volume (actually the full path of the mother of the top physical volume), so that even if a user issues "/vis/drawVolume sub-detector", the full path includes the base full path, i.e., the full path up to the world volume. - G4VSceneHandler: o Deprecated NURBS at next major release. o Changed G4Exception labels to 101+. 1st October 2012 John Allison (visman-V09-05-34) - G4VSceneHandler::LoadAtts: o Added G4Atts from trajectories model to access event ID. - G4VisCommandSceneAddTrajectories: o Print G4Atts from trajectories (to advertise availability of event ID). 28th September 2012 Gabriele Cosmo (visman-V09-05-33) - Explicitly include units header in G4ViewParameters.hh. 27th September 2012 John Allison (visman-V09-05-32) - G4VisManager.cc: o Added an extra refresh for auto-refresh viewers at end of run. 26th September 2012 John Allison (visman-V09-05-31) - G4ViewParameters: Added: o SetOrthogonalProjection(); o SetPerspectiveProjection(G4double fieldHalfAngle = 30. * deg); o SetDefaultColour(const G4Colour&); o SetDefaultTextColour(const G4Colour&); 26th September 2012 John Allison (visman-V09-05-29) - G4VViewer: Added non-virtual RefreshView() that simply calls SetView(), ClearView(); DrawView(). 25th September 2012 John Allison (visman-V09-05-28) - G4VisCommandsSceneAdd.cc: /vis/scene/add/axes: o Added protection, limited width to length/50. 6th September 2012 John Allison (visman-V09-05-27) - G4VisCommandsSceneAdd.cc: o Removed multi-requested parameter guidance. Collapsed guidance to one long string with '\n' for new lines. 8th August 2012 John Allison (visman-V09-05-26) - Tagged. 6th August 2012 John Allison - G4VisCommandsSceneAdd.cc: o /vis/scene/add/frame: Fixed bug in SetParameterRange. 17th July 2012 John Allison (visman-V09-05-25) - Tagged. 16th July 2012 John Allison - G4VisCommandsViewer.cc: /vis/viewer/copyViewFrom: o Added LightpointDirection and LightsMoveWithCamera to list of copied view parameters. - G4VSceneHandler::Begin/EndPrimitives2D: o Moved fProcessing2D from G4OpenGLSceneHandler. o Now may be used by all and any driver. 15th July 2012 John Allison (visman-V09-05-24, needs modeling-V09-05-09) - G4VisCommandsSceneAdd: Re-implemented: o /vis/scene/add/arrow o /vis/scene/add/axes 13th July 2012 John Allison - G4VisCommandsSceneAdd.cc/hh: o Re-implemented /vis/scene/add/axes with annotated arrows. 5th July 2012 Gabriele Cosmo (visman-V09-05-23) - Explicitly use inclusion of headers for system of units and physical constants, in plan to remove implicit inclusion from globals.hh. 15th June 2012 John Allison - G4VSceneHandler.cc: Spelling correction in comment. 7th June 2012 John Allison (visman-V09-05-22) - Shadow clean. 6th June 2012 John Allison (visman-V09-05-21) - G4VisCommandsSceneAdd.cc: Fix compiler warning. 5th June 2012 John Allison (visman-V09-05-20) - Added /vis/scene/add/line(2D) and arrow(2D). 3rd June 2012 John Allison (visman-V09-05-19) - G4VisCommandsSceneAdd.cc/hh, G4VisCommandsGeometrySet.cc: o Coverity fixes. 23rd May 2012 John Allison (visman-V09-05-18) - Health Check 2012: o Over the years we have added drivers and features and added fixes. A health check revealed several instances of code duplication, unnecessary screen refeshing, incorrect buffer switching (necessitating extra refreshing), etc. This tag is an attempt to bring the basic vis algorithms up to full health and efficiency. o G4VSceneHandler: . ClearStore and ClearTransientStore become "ordinary" virtual functions *not* requiring to be called by sub-class implementations. The default implementation in G4VSceneHandler is an empty function. . ProcessScene: - Changed from a private function (called only by friend G4VViewer::ProcessView) to a straightforward protected virtual function that can be overloaded by the subclass. A typical example of overloading is by G4OpenGLScenehandler::ProcessScene, which simply invokes the base class function twice, as is required for a good treatment of transparency, e.g., void G4OpenGLSceneHandler::ProcessScene() { G4VSceneHandler::ProcessScene(); // Repeat if required... if (fSecondPassRequested) { fSecondPass = true; G4VSceneHandler::ProcessScene(); fSecondPass = false; fSecondPassRequested = false; } } - Now assumes graphics database store has already been cleared, i.e., ClearStore has been called. ClearStore is now called from G4VViewer::ProcessView just before calling ProcessScene. - Existing call to ClearStore removed. - Second pass of run-duration models removed (in accordance with above change from private to protected virtual function). - Call to FinishView removed - this is the repsonsibility of the viewer. o G4VViewer::ProcessView: ClearStore before ProcessScene. o G4VisCommandsScene.cc: . /vis/scene/notifyHandlers: - Remove a superfluous call to ClearTransientStore and associated tentative comments. 22nd April 2012 John Allison (visman-V09-05-17) - G4VisCommandsSceneAdd: Fixed compiler warnings. 12th April 2012 John Allison - G4VSceneHandler::ProcessScene: Moved FinishView to end. - G4VisCommandsScene.cc: o The above is a fix of the "curious problem" in visman-V09-05-16. o Code reverted. - G4VisCommandsSceneAdd: /vis/scene/add/date: o G4Timer fTimer instantiated in constructor - more efficient. - G4Scene.cc: Improved warning message. 12th April 2012 John Allison - G4VisManager.hh: Removed unnecessary unnamed namespace around some typedef's. - G4VisManager.cc: Removed unused #include "G4VisFeaturesOf...". - /vis/scene/add/date: Removed trailing \n. 11th April 2012 John Allison (visman-V09-05-16) - G4VisManager.cc, G4VisCommandsScene.cc/hh o Added /vis/scene/activateModel. - G4VSceneHandler.cc: o Augmented drawing loops to take account of model activation state. - G4Scene.cc: o Improved CalculateExtent to take account of model activation state. o Tidied operator<<. - G4VisCommandsScene.cc: o /vis/scene/notifyHandlers: . Instead of Set+Clear+DrawView, used ApplyCommand("/vis/viewer/refresh") twice!! This was an attempt to fix a curious problem whereby trajectories were not refreshed. Probably the go only to the back buffer, because a second refresh seems to do the trick. o /vis/scene/list: Improved. - G4VisCommandsSceneAdd.cc: /vis/scene/add/userAction: o Small improvement to guidance and code readability. 10th April 2012 John Allison - /vis/scene/list: Changed verbosity check to warnings. 10th April 2012 John Allison (visman-V09-05-15) - Migrated to G4Scene::Model. - G4VisManager.cc: Minor improvements to printing. - /vis/list: Added PrintAvailableUserVisActions and improved. - /vis/scene/list: Added printing of end-of-run models. 10th April 2012 John Allison (visman-V09-05-14) - G4VisManager::RegisterRunDuration/EndOfEvent/EndOfRunUserVisAction. Now you can register any number of named vis actions and associate them with particular types of action. They are added to the scene with /vis/scene/add/userAction [] (default all). 8th April 2012 John Allison (visman-V09-05-13) - Added /vis/viewer/copyViewFrom. - G4VisManager.hh: Tidy. - G4VisCommandsSceneAddUserAction: Tidy model name. 8th April 2012 John Allison (visman-V09-05-12) - Added /vis/set/colour and /vis/set/lineWidth. (/vis/set/ commands set "current quantities" for future /vis/scene/add/ commands.) - /vis/scene/add/frame: Modified to use the above "current quantities". 5th April 2012 John Allison - G4Scene::CalculateExtent: Include validation of models. This re-calculated extent. Solves problem of change of extent if a volume chnages visibility, for example, by a /vis/geometry command. - /vis/scene/notifyHandlers: o Fix warning message if no scene exists. o Call G4Scene::CalculateExtent to ensure extent is up to date. 4th April 2012 John Allison (visman-V09-05-11) - G4VVisCommand: Commented out as-yet-unused "current quantities". - /vis/set/textLayout: Allow omitable argument - default "left". 30th March 2012 John Allison - G4ViewParameters: o Moved XGeometry constants (fXValue, etc.) to static. o Added fGeometryMask to list of those tested in PrintDifferences and operator!=. o Added fGeometryMask to those printed in operator<<. 30th March 2012 John Allison - G4Scene.cc::operator!=: o Added test on size of fEndOfEventModelList and fEndOfRunModelList. o Improved comments. 29th March 2012 Laurent Garnier - G4VSceneHandler: Made SetScene virtual 28th March 2012 John Allison - G4VisCommandsViewer.cc: Improved some warning messages. 27th March 2012 John Allison - G4VisCommandsSceneAdd.cc: Added SetType for classes using G4CallBackModel, 27th March 2012 John Allison - /vis/viewer/set/picking: Improved guidance. - /vis/scene/add commands: Rationalised tag names. 26th March 2012 John Allison (visman-V09-05-10) - G4VisCommandsSet.cc: Added #include for strict Windows compiler. 23rd March 2012 John Allison (visman-V09-05-09. Needs greps-V09-05-06.) - Added /vis/set/textLayout and tidied. - Modified list of "current quantities" for vis commands. From G4VVisCommands.hh: // Current quantities for use in appropriate commands static G4Colour fCurrentColour; static G4Colour fCurrentTextColour; static G4Text::Layout fCurrentTextLayout; static G4double fCurrentLineThickness; static G4VisAttributes::LineStyle fCurrentLineStyle; static G4VMarker::FillStyle fCurrentFillStyle; static G4VMarker::SizeType fCurrentSizeType; The default values are (from G4VVisCommands.cc): G4VVisCommand::fCurrentColour = G4Colour::White(); G4VVisCommand::fCurrentTextColour = G4Colour::Blue(); G4VVisCommand::fCurrentTextLayout = G4Text::left; G4VVisCommand::fCurrentLineThickness = 1.; G4VVisCommand::fCurrentLineStyle = G4VisAttributes::unbroken; G4VVisCommand::fCurrentFillStyle = G4VMarker::filled; G4VVisCommand::fCurrentSizeType = G4VMarker::screen; 21st March 2012 John Allison (visman-V09-05-08) - Introduced concept of "current quantities" for use in vis commands. - Added /vis/set/textColour, the first command in the series that will allow the user to change the above current quantities for use by subsequent commands. - Some tidying of the vis command structure: o Moved /vis/default/ to /vis/viewer/default/ (it is specific to viewers). - Files removed: o G4VisCommandsDefault.hh/cc - New files: o G4VisCommandsViewerDefault.hh/cc o G4VisCommandsSet.hh/cc 7th March 2012 John Allison (visman-V09-05-07) - G4VisCommandsSceneAdd: o Added /vis/scene/add/logo2D and text2D. o Improved /vis/scene/add/axes, logo and scale: . Size computed automatically by default. o /vis/scene/add/date: . Placed left-adjusted to centre of screen pending implementation of right-adjustment. o Tidied. 28th February 2012 John Allison (visman-V09-05-06) - Migrated to G4VScenehandler::fObjectTransformation. 13th February 2012 John Allison (visman-V09-05-05) - G4VisCommandsSceneAdd.cc: Small improvement to /vis/scene/add/eventID. 11th February 2012 John Allison (visman-V09-05-04) - Merged vis-V09-05-04-2ndbranch (tag vis-V09-05-04-2ndbranch-08) to trunk. 9th February 2012 John Allison (visman-V09-05-03) - Needs global-V09-05-00 (for date). - Added /vis/scene/add/date and /vis/scene/add/frame. - /vis/scene/add/eventID: Added layout parameter. 17th January 2012 Laurent Garnier - Removed ProcessText. 13th January 2012 John Allison (visman-V09-05-02) - Tagged. 3rd January 2012 Laurent Garnier - G4VSceneHandler : Add ProcessText method in order to draw text 3rd January 2012 John Allison (visman-V09-05-01) - G4VisCommandsScene.cc: /vis/scene/notifyHandlers: o Downgraded "scene has changed" from WARNING to NOTE. 2nd January 2012 John Allison - G4VisManager::EndOfEvent: Removed unwarranted DrawView. It was causing two copies of the geometry to be drawn. 30th December 2011 John Allison (visman-V09-05-00) - G4VisManager: Implemented Begin/EndDraw(2D). o Note that this forces all thus-bracketed Draw messages to have the same transformation. If an attempt to change the transformation is detected, a fatal exception is raised. - G4VSceneHandler: Added Get/SetObjectTransformation. 12th December 2011 John Allison - G4VSceneHandler::GetMarkerSize: Bug fix: o Bug: If size < 1., size = 1. for all markers. o Fix: Applies only to "screen-size" markers. - G4VisCommandSceneAddLogo: Improvements to /vis/scene/add/logo: o In "auto" mode, logo is placed front-bottom-right facing the viewer regardless of currenrt viewpoint direction. (Many examples set the viewpoint direction to (-1,0,0) so that the y-axis is up and the z-axis horizontal; the beam is usually fired down the z-axis. This improvement puts the G4 logo in a sensible place.) o More choices for facing direction: . auto|[-]x|[-]y|[-]z - defaults to auto . If automatic, faces the user. 12th November 2011 John Allison (visman-V09-04-12) - G4VisListManager::SetCurrent: o Changed "Fatal" to "JustWarning" for non-existent model. 11th November 2011 John Allison (visman-V09-04-11) - G4VisModelManager.hh: Coverity fix. 11th November 2011 John Allison (visman-V09-04-10) - Tagged. 10th November 2011 John Allison - G4VisManager.cc: Fixed compiler warning. 5th November 2011 Joseph Perl (visman-V09-04-09) - source.cmake needs G4VisCommandsDefault 4th November 2011 John Allison (visman-V09-04-08 - needs greps-V09-04-09) - G4VisManager: o Added PrintAvailableColours. o Prints available colours on initialisation. - G4VisCommands.cc: o /vis/list prints available colours. 30th October 2011 John Allison (visman-V09-04-07) - G4VisManager: o Added Get/SetDefaultViewParameters. o These are used by viewers during instantiation. o This allows you to set defaults for future operations. o You can do this in code or by commands. In code, e.g., where you instantiate the vis manager: G4VisManager* visManager = new G4VisExecutive; // You can change the default view parameters, i.e., those used on // instantiation of a viewer. First instantiate a view parameters // object with default values (e.g., it would draw in wireframe mode). G4ViewParameters vp; // Change drawing style to "Draw surfaces - hidden surfaces removed". vp.SetDrawingStyle(G4ViewParameters::hsr); // Make this default for all new viewers. visManager->SetDefaultViewParameters(vp); visManager->Initialize(); - G4VisCommandsDefault: o Added /vis/default/hiddenEdge and /vis/default/style. o Sets defaults for future viewers. - G4VViewer.cc: o Pick up default view parameters from vis manager. 11th October 2011 John Allison (visman-V09-04-06) - G4VisCommandsViewer: Introduce RefreshIfRequired. 10th October 2011 John Allison (visman-V09-04-05) - G4VViewer: Added virtual function ResetView. 27th September 2011 John Allison - G4VisCommandsViewerSet.cc: Avoid setting auto-refresh for viewers that are not auto-refresh by default. 25th September 2011 John Allison (visman-V09-04-04) - G4VisCommandsSceneAdd.cc: Tidied. 16th September 2011 John Allison - G4VisCommandsSceneAdd.cc: When adding trajectories (/vis/scene/add/trajectories) print attributes even if warnings are suppressed. - Migrated to new G4Exception. 21st and 30th June 2011 John Allison - Added /vis/viewer/set/rotationStyle Guidance : Set style of rotation - constrainUpDirection or freeRotation. constrainUpDirection: conventional HEP view. freeRotation: Google-like rotation, using mouse-grab. 27th May 2011 Joseph Perl (visman-V09-04-03) - Tagged. 18th May 2011 Laurent Garnier - G4VisCommandGeometrySetVisibility : Add method to set value on a logical volume 17th May 2011 John Allison (visman-V09-04-02) - (Note: visman-V09-04-01 skipped.) - G4Scene: Added SetName. - G4VisCommandsViewerSet.cc: Fixed Coverity warning. - G4VisCommandsSceneAdd.cc: Fixed gcc 4.6.0 warning. 27th December 2010 John Allison (visman-V09-04-00) - Tagged. This tag DOES include changes below of December 11th. 14th December 2010 Gabriele Cosmo (visman-V09-03-16) - G4VisManager: moved GetVerbosity() static method to non-inline to allow for Windows DLL exporting. - Tag does NOT include changes below of December 11th. 11th December 2010 John Allison - G4VisCommandsSceneAdd.cc: /vis/scene/add/trajectories: o If >= warnings, print available attributes in all cases. - G4VisCommandsScene.cc: /vis/scene/notifyHandlers: o Flag kernel visit in all cases. - G4VisListManager.hh: o In case of model with existing name, instead of G4Exception, simply replace. 13th November 2010 John Allison (visman-V09-03-15) - G4VisCommandScene.cc: o Backed out change in /vis/scene/notifyHandlers. o Improved comments. - G4VisManager.hh: Tidied layout. 10th November 2010 Laurent Garnier - G4VisCommandScene.cc: o In /vis/scene/notifyHandlers: Add a clear for Transient Store. 7th November 2010 John Allison (visman-V09-03-14) - G4VisExecutive.icc: Inlined constructor. - G4VisManager.cc: Fixed Coverity warning. - G4VisCommandsViewer.cc: Fixed Coverity warning. 6th November 2010 John Allison - G4VisCommandsSceneAdd.cc: Fixed Coverity warning. 5th November 2010 John Allison (visman-V09-03-13) - G4VSceneHandler.cc and G4ViewParameters.cc: o Fixed Coverity warning. 6th October 2010 John Allison (visman-V09-03-12) - Added /vis/viewer/set/defaultColour and /vis/viewer/set/defaultTextColour. 3rd September 2010 Gabriele Cosmo (visman-V09-03-11) - Added missing inclusion of header in G4ViewParameters.cc. 15th June 2010 John Allison (visman-V09-03-10) - G4VisCommandsGeometrySet.hh: Added virtual destructors to fix compilation warnings. - G4VisCommandsGeometrySet.cc: Changed "/vis/viewer/rebuild" to "/vis/scene/notifyHandlers", the command to be executed after a "/vis/geometry/..." command. "/vis/scene/notifyHandlers" causes rebuild if viewer is "auto-refresh", otherwiae a message advises a rebuild. This prevents over-enthusiatic rebuildin. 3rd June 2010 John Allison (visman-V09-03-09) - G4VisManager.cc: Checked valid view in DispatchToModel. - Changed /vis/scene/add/digiti[sz]ations to /vis/scene/add/digis. 1st June 2010 John Allison (visman-V09-03-07) - G4VisManager: o Made fVerbosity and GetVerbosity static (saves having to get vis manager pointer). o Some tidying. - G4VisCommandsSceneAdd.cc: Fixed compiler warning. 30th May 2010 John Allison (visman-V09-03-06) - Added /vis/scene/add/digiti[sz]ations. - Added /vis/filtering/digi. - G4VisManager, G4VisExecutive: Added registration and methods for digis. - G4VSceneHandler: Added AddCompound(const G4VDigi&). 29th May 2010 John Allison (visman-V09-03-05) - Co-works greps-V09-03-01 and tracking-V09-03-03. - G4VisManager: o Introduced DispatchToModel without i_mode. o Moved i-mode deprecation warning to G4VTrajectory. - G4VSceneHandler.cc: o Moved i-mode deprecation warning to G4VTrajectory. - G4VisCommandsViewer.cc: /vis/viewer/rebuild: o Added sceneHandler->ClearTransientStore(). o Added viewer->Set/Clear/DrawView(). 28th May 2010 John Allison (visman-V09-03-04) - G4VisManager, G4VisExecutive: Introduced optional verbosity string argument in constructor. You can now write, for example: G4VisManager* visManager = new G4VisExecutive("quiet"); Note that the default is "warnings": G4VisManager* visManager = new G4VisExecutive; 28th May 2010 John Allison (visman-V09-03-03) - Co-works interfaces-V09-03-04. - G4VisExecutive.icc: Change order of flags to follow G4UIExecutive. 26th May 2010 John Allison (visman-V09-03-02) - G4VisExecutive.icc: Added drivers with generic nicknames: o OGL, OGLI, OGLS, OI. o The specific driver depends on G4VIS_USE and G4UI_USE flags. So, for example, "/vis/open OGL" might open an OGLSX window on X or an OGLSWin32 on Windows. It means that example vis.mac scripts can be written with this generic command that will work on all systems and all user choices. In particular, it will open an OGLSQt window in a G4UIQt session. 20th May 2010 John Allison (visman-V09-03-01) - G4VisCommandsCompound.cc: Restore previous viewer after /vis/drawTree. - G4VisManager.hh: Cosmetic. - G4VGraphicsSystem: Add Set methods. 11th May 2010 John Allison (visman-V09-03-00) - G4VSceneHandler: o Follow change in generic section and cutaway interface. o Trap use of user-defined DrawTrajectory and print i_mode warning. - G4VisCommandsSceneAdd.cc: o Follow change in generic section and cutaway interface. o Trap use of i_mode and print warning. - G4VisManager.cc: o Trap use of i_mode and print warning. 9th March 2010 Laurent Garnier - G4OpenGLViewer : Fix clipping when resizing non square size windows 8th March 2010 Laurent Garnier -G4VisManager.cc : Add protection against null pointer 22nd November 2009 John Allison (visman-V09-02-08) - G4VisCommandsSceneAdd.cc: /vis/scene/add/trajectories rich: o Added G4RichTrajectoryPoint().GetAttDefs() to informational. 17th November 2009 John Allison (visman-V09-02-07) - Tagged. 17th November 2009 Laurent Garnier - Allow arbitrary viewer deletion (fixes crash). o G4VViewer::~G4VViewer: Removes itself from viewer list. o G4VSceneHandler::~G4VSceneHandler: better algorithm for removing viewers to handle viewer self removal. 16th November 2009 Laurent Garnier -G4VSceneHandler.cc: Bug fix: Deleting G4VSceneHandler null pointer exception fix. 14th November 2009 John Allison - G4VSceneHandler.cc: Bug fix: Should be const_cast, not static_cast, for hits. (Introduced in visman-V09-02-05 and geant4-09-02-ref-10.) 6th November 2009 John Allison - G4VSceneHandler::AddCompound (const G4THitsMap&): o For scoring maps, call DrawMesh with G4DefaultLinearColorMap as default. o Write message about other options: - /vis/open/gMocrenFile - /score/draw.. commands. o For hits that are not scoring maps, call DrawAllHits. 5th November 2009 John Allison - G4VSceneHandler.cc: o ProcessScene: Added DrawEndOfRunModels(). o AddCompound (const G4THitsMap&): Call DrawMesh. 4th November 2009 John Allison - G4Scene: Added EndOfRunModelList. - G4VSceneHandler: o Added DrawEndOfRunModels. o AddCompound(const G4THitsMap&): Prototype implementation using G4ScoringManager. Still does nothing for scoring maps but otherwise calls DrawAllHits. - G4VisManager.cc: Call fpSceneHandler->DrawEndOfRunModels at end of run. - G4VisCommandsSceneAdd: Added optional parameter: o /vis/scene/add/psHits [scoring map name] 30th October 2009 John Allison (visman-V09-02-06 coworks greps-V09-02-03) - Added /vis/scene/add/psHits. - G4VisManager.cc: As above and also: o Tidied view creation. o Improved message ("scene" should be "scene handler"). 23rd October 2009 John Allison (visman-V09-02-05 coworks greps-V09-02-02) - Implemented default behaviour in G4VSceneHandler::AddCompound (const G4THitsMap&). 21st October 2009 John Allison (visman-V09-02-04 coworks greps-V09-02-02) - G4VSceneHandler: o Added default AddCompound (const G4THitsMap&) methods. (For time being just issues warning.) 29th September 2009 John Allison (visman-V09-02-03) - G4VSceneHandler.cc: Allow refresh in GeomClosed as well as Idle state. - G4VisCommandsSceneAdd.cc: Fixed uninitialised pointers. - G4VisManager.cc: Considerable tidy up. 24th July 2009 Laurent Garnier - G4VisCommandsSceneAdd::EventID::operator() : Add a protection if CurrentSceneHandler has no model 13th May 2009 John Allison (visman-V09-02-02) - G4VisCommandsViewerSet.hh/cc: Added /vis/viewer/set/targetPoint. - G4VisManager.cc: End of run event keeping information improved. 14th March 2009 John Allison (visman-V09-02-01) - G4VisCommands.hh/.cc: Introduced /vis/initialize. - G4VisManager.cc: /vis/verbose and /vis/initialize instantiated in constructor. - G4VisExecutive.icc: made methods inline. 25th February 2009 Laurent Garnier (visman-V09-02-00) - Notify handler send by G4VVisManager is implemented in G4VisManager 22th January 2009 Laurent Garnier - Fix bug in ratio and geometry on X/Xm/Qt/Win32 viewers. Now Could pass XString like 400x600-0+0 to viewers and set position and location. 12th January 2009 John Allison - /vis/viewer/create: Pass both X and Y window size hints to viewer. (To get a non-rectangular viewer give a X-windows-style geometry argument, such as "800x400" or "800x400-0+0".) 2nd December, Laurent Garnier - G4ViewParameters.hh G4ViewParameters.icc G4VisManager.hh G4VisManager.icc G4ViewParameters.cc G4VisManager.cc G4VViewer.cc G4VisCommandsViewer.cc, do a lot of change to be able to pass XString like 400x600-0+0 to viewers and set position and location. It will work for Qt, X, Win32 for the moment. 27th July 2008 John Allison (visman-V09-01-05) - G4VisCommands.cc: Trap recursive use of /vis/reviewKeptEvents. 30th April 2008 John Allison (visman-V09-01-04) - Fixes more gcc-4.3.0 compiler warnings. 28th April 2008 John Allison (visman-V09-01-03) - G4VisCommandsScene.cc: Improve warning message. - G4ViewParameters.hh: Improve commenting for Software Ref. Man. 4th April 2008 John Allison (visman-V09-01-02) - Fixed gcc-4.3.0 compiler warnings. 5th February 2008, Laurent Garnier - Implemented a function in order to IncrementPan with X,Y,Z values 29th January 2008 John Allison (visman-V09-01-01) - G4VisExecutive.icc: Re-instated G4DAWNFILE (somehow got lost!!) 4th January 2008 John Allison (visman-V09-01-00) - Implemented extended 2D interface. 30th November 2007 Laurent Garnier - G4VisExecutive.icc : Add a #ifdef G4VIS_USE_DAWN directive in order not to add a 'new G4DAWNFILE' if G4VIS_USE_DAWN is not set #endif 16th November 2007 Joseph Perl (visman-V09-00-02) - G4VisCommandsCompound.cc: Replace references to Wired3. - G4VisCommandsSceneAdd.cc: Replace references to Wired3. 10th November 2007 John Allison (visman-V09-00-01) - G4VisManager.cc: Minor improvement in messaging. - G4VisCommandsScene.cc: Improvements in /vis/scene/endOfEventAction messaging. 10th July 2007 John Allison (visman-V09-00-00) - Remove redundant method declarations in G4VisManager.hh. - Reinstate refesh after "/vis/viewer/set/autoRefresh true". -25th May 2007 John Allison (visman-V08-03-01) Improved error trapping in viewer initialisation. - Bug fix in /vis/scene/notifyHandlers for case of no current viewer. 16th May 2007 John Allison (visman-V08-03-00) - G4VSceneHandler.cc: Added #include "G4AttDef.hh" to help buggy Windows compiler(!). 4th April 2007 John Allison (visman-V08-02-04) - G4VSceneHandler.cc: Bug fix for zero vis atts in LoadAtts. 3rd April 2007 John Allison (visman-V08-02-03) - Added /vis/viewer/set/picking. Picking is false by default, except for OpenInventor. 25th March 2007 John Allison (visman-V08-02-02) - G4VisExecutive.icc: Removed G4GAGTree. - G4VisCommandsCompound.cc: Removed /vis/scene/add/eventID, once again, from /vis/drawVolume. - G4VisCommands.cc: Improved messages for /vis/abortReviewKeptEvents. - G4VisManager.cc, G4VSceneHandler.cc: Cosmetic. 11th January 2007 John Allison (visman-V08-02-01) - Added /vis/abortReviewKeptEvents. - /vis/reviewKeptEvents: Improved guidance. - Bug fix: /vis/open in /vis/reviewKeptEvents loop. o Moved fpRequestedEvent from G4VSceneHandler to G4VisManager. - Reduced WARNING noise. 5th January 2007 John Allison (visman-V08-02-00) - G4VSceneHandler: o Introduced LoadAtts (from G4OpenInventorSceneHandler, but now available to all scene handlers). Loads G4AttValues and G4AttDefs onto any object that inherits G4AttHolder. o Change signature of GetLineWidth from G4Visible& to G4VisAttributes* for consistency with similar utility functions. (Only used by OpenGL at present; requires opengl-V08-02-00.) o GetLineSegmentsPerCircle: protected against null vis atts pointer. - G4VisCommandsGeometrySet and G4VisManager.cc: o Introduced /vis/geometry/set/forceLineSegmentsPerCircle (inadvertently omitted in previous release). o Improved guidance. - G4VisCommandsGeometry.cc: Invoke /vis/viewer/rebuild only if viewer current. - G4VViewer.cc: Improved comment. - G4VisCommandsCompound.cc: o Re-introduced /vis/scene/add/eventID into /vis/drawVolume. - G4VisCommandsViewer.cc: Improve guidance for /vis/viewer/addCutawayPlane. 12th December 2006 Gabriele Cosmo (visman-V08-01-16) - Commented command "vis/scene/add/eventID" forcing event ID to scene in G4VisCommandsCompound.cc. 25th November 2006 John Allison (visman-V08-01-15) - G4VisCommandsSceneAdd.cc: Follow change of behaviour of G4StateManager. Supresses eventID message when state == G4State_EventProc unless last event. - G4VisCommands.cc: /vis/reviewKeptEvents: o An improvement in the information printed. o Temporarily set endOfEventAction refresh so that eventID for each event. - G4VisCommandsScene.cc: /vis/scene/endOfEventAction: o Restrict warning message so that the warning about the number of kept events only happens for "accumulate". Improve printing. - G4VisCommandsViewer.cc: Spelling correction in warning message. - G4VisManager.cc: Correct for 0 requested kept events. - G4Scene.cc: Initialise no. of kept events to 0. 22nd November 2006 John Allison (visman-V08-01-14) - Fixed /vis/reviewKeptEvents for "stored" viewers. 21st November 2006 John Allison (visman-V08-01-13) - Fixed double drawing of event. - Restored old verbosity and printing interface (for obsolete user vis managers). 16th November 2006 John Allison (visman-V08-01-12) - /vis/scene/notifyHandlers: Refreshes only auto-refresh viewers. Warning of scene change issued for other viewers. 15th November 2006 John Allison (visman-V08-01-11) - First implementation of /vis/reviewKeptEvents. 14th November 2006 John Allison (visman-V08-01-10) - Merged visman-V08-01-08-branch onto main branch. 14th November 2006 John Allison (visman-V08-01-08-08) - Partial implementation of /vis/reviewKeptEvents. 14th November 2006 John Allison (visman-V08-01-08-07) - Minor improvements: o G4VisManager: Removed event count (not used). o G4VSceneHandler: Inhibited drawing when vis disabled. o Various /vis/scene commands: Added update statement so that handlers are notified after change of scene. Forces rebuild and refresh of all viewers using current scene. 12th November 2006 John Allison (visman-V08-01-08-06) - Further iteration of event refreshing: o G4VisManager: ~ Introduced DrawEvent private method for vis manager and G4VSceneHandler. ~ Removed unused methods from previous attempts. o G4VSceneHandler: Used vis manager DrawEvent. o /vis/scene/add/eventID: improved so it picks up event ids of refreshed events. 11th November 2006 John Allison (visman-V08-01-08-05) - Removed /vis/scene/transientsAction. Now event keeping by the vis manager is automatic if there is a valid scene. If the user issues "/vis/scene/endOfEventAction accumulate []", events are kept up to a maximum N in number (N<0 means unlimited, the default value is 100). Otherwise just the last event is kept. - Tidied up. 9th November 2006 John Allison (visman-V08-01-08-04) - G4VisManager: Removed data memebers associated with previous attempts at event refreshing. - G4VSceneHandler.cc: Removed previous attempts at event refreshing. - /vis/drawVolume and /vis/scene/add/volume: Improved guidance for parallel worlds. - /vis/viewer/select: Ensure refresh for auto-refreshing viewers. - /vis/viewer/set/autoRefresh: Inhibit refresh for auto-refreshing viewers. 8th November 2006 John Allison (visman-V08-01-08-03) - First attempt at using event keeping to refresh views. 6th November 2006 John Allison (visman-V08-01-08-02) - Merged visman-V08-01-09. 6th November 2006 John Allison (visman-V08-01-09) - /vis/drawVolume and /vis/specify: Suppress all but first warning about needing to refresh for viewers that are not auto refresh. - G4VScenehandler.cc: Remove warning about emepty scene. (Subsequent action is to add a world, if empty - reasonable behaviour.) 5th November 2006 John Allison (visman-V08-01-08-01) - G4VisCommandsSceneAdd.cc: Improved implementation of parallel worlds. Gets material world = *(transportationManager->GetWorldsIterator()) in all cases following fixes run-V08-01-ref04-01 and geomnav-V08-01-ref04-01. 3rd November 2006 John Allison (visman-V08-01-08-00) - On visman-V08-01-08-branch. - G4VisCommandsSceneAdd.cc: First implementation of parallel worlds visualisation: /vis/scene/add/volume worlds - G4VisCommandsCompound.cc: Minor re-ordering of commands in /vis/drawVolume to avoid warning messages about empty scene. 3rd November 2006 John Allison (visman-V08-01-08 with tracking-V08-01-05) - Activated /vis/scene/add/trajectories with "rich" and "smooth" - see below. Needs tracking-V08-01-05. 1st November 2006 John Allison (visman-V08-01-07) - /vis/scene/add/trajectories: o Allow string parameters "rich" and "smooth". Not yet activated (awaiting tags in tracking). o Deprecate use of integer parameter (i_mode). - GNUmakefile: Add geometry/magneticfield/include (for new /vis/scene/add/trajectories command above). - G4VisManager.cc: Remove unnecessary comment line. ---------------------------------------------------- 19th September 2006 John Allison (visman-V08-01-06) - G4ViewParameters: Added ExplodeCentre. - G4VisCommandsGeometrySet.cc: Bug fix in /vis/geometry/set/colour. ---------------------------------------------------- 13th September 2006 John Allison (visman-V08-01-05) - G4ViewParameters: Improved setting and access to explode factor. - G4VisCommandsViewer: Added /vis/viewer/clone. - G4VisCommandsViewerSet: Added /vis/viewer/set/explodeFactor. - G4VisManager.cc: Registered /vis/viewer/clone. - G4VSceneHandler.cc: Pass explode factor to modeling parameters. 12th September 2006 Jane Tinslay - Add attribute based trajectory drawing & filtering, and attribute based hit filtering --------------------------------------------------- 4th September 2006 John Allison (visman-V08-01-04) - G4ViewParameters: Added CutawayMode and ChangeCutawayPlane. - Added /vis/viewer/addCutawayPlane, changeCutawayPlane, clearCutawayPlanes and /vis/viewer/set/cutawayMode. 30th August 2006 John Allison (visman-V08-01-03 - needs modeling-V08-01-05) - Added /vis/viewer/set/globalLineWidthScale. - Augmented /vis/scene/add/volume to include intersection of clipping volume (only box -box *box at present). - G4VSceneHandler: o Added GetLineWidth to take account of GlobalLineWidthScale. o Added CreateSection/CutawayPolyhedron to exploit generic sectioning (DCUT) and cutaways. Currently not activated due to instabilities in BooleanProcessor. - G4ViewParameters: o Added GlobalLineWidthScale. o Removed IsViewGeom/Hits/Digis (functionality available in G4Scene). 14th August 2006 John Allison (visman-V08-01-02) - G4VisManager.hh: Added some OpenGL friends. - G4VisCommandsCompound.cc: /vis/drawVolume: re-ordered "attach" before "add/volume". Catches non-existing handlers better. Overall effect of compound command unchanged. - G4VSceneHandler.cc: Added (commented out) code for "event refreshing". 10th July 2006 John Allison (visman-V08-01-01) - Co-works with greps-V08-01-01. - G4VSceneHandler: o Removed Establish/DecommissionSpecials. o Respect rationalised G4ModelingParameters. o Added GetNoOfSides that respects forced line segments per circle. - G4VisCommandsScene.cc: Spelling correction. 3rd July 2006 John Allison (visman-V08-01-00) - /vis/scene/transientsAction: Added max number of events parameter. - Added /vis/viewer/clearTransients. - Improved /vis/list. - G4VisManager.hh/icc: Added data members and acces for event copying. - G4VisManager.cc: o Verbosity control of model printing. o (Commented out) code for event copying. - G4VSceneHandler.cc: o (Commented out) code for event copying. 8th June 2006 John Allison (visman-V08-00-23) - Fixed bug in /vis/scene/endOfRunAction introduced in visman-V08-00-14 that made it ineffective. 7th June 2006 John Allison (visman-V08-00-22) - G4VSceneHandler.cc: Zeroed modeling parameters pointer after use. 6th June 2006 John Allison (visman-V08-00-21) - G4VisCommandsViewer: /vis/viewer/create: Fixed view params copy to self. 4th June 2006 Joseph Perl (visman-V08-00-20) - This tag includes all the changes below. 2nd June 2006 Jane Tinslay - Add accessor for current trajectory drawing model - Make G4HepRepFileSceneHandler a friend of G4VisManager 1st June 2006 Jane Tinslay - Add accessor in G4VisListManager 30th May 2006 Jane Tinslay - Add G4TrajectoryChargeFilterFactory and G4TrajectoryOriginVolumeFilterFactory to G4VisExecutive 25th May 2006 John Allison (visman-V08-00-19) - G4Scene.cc: Changed default fRecomputeTransients to false. - G4VisCommandsViewerSet.cc: /vis/viewer/set/style - remove candidates. Use first letter only (so "/vis/viewer/set/style wire" works, for example.) - G4VisFilter/List/ModelManager.hh: Indent printing of models. - G4VUserVisAction.hh: Add forward declaration of class G4VGraphicsScene. 22nd May 2006 John Allison (visman-V08-00-18) - G4VisManager: o Added SetReprocessing (for transients). o Reduce dependency on Run (get event from event manager). o (Includes some event copying stuff - commented out.) - G4VSceneHandler.cc: Require Idle state for transient re-computation. - G4Scene: o Remove Clear(). (Not used.) o Add printing and testing for fRecomputeTransients. (Forgot in visman-V08-00-08.) - /vis/.../list commands: Default verbosity "warnings". 13th May 2006 John Allison (visman-V08-00-17) - Provided identity transformation for 2D drawing. A temporary expedient until all drivers can implement 2D drawing. 12th May 2006 John Allison (visman-V08-00-16) - Added /vis/list. - Added /vis/scene/add/eventID. - Final refinements for event/run reprocessing (re-computation of transients): o Pick up random number status from run manager. o Run and event numbers reset. o Protect against non-instantiation of run manager. - Followed G4CallbackModel change (see modeling-V08-00-09). - G4VisCommandsScene.cc, G4VisCommandsSceneHandler.cc, G4VisCommandsViewer.cc: Corrected SetDefaultValue for verbosity string parameter (changed 0 to "0"). 4th May 2006 John Allison (visman-V08-00-15) - Improved protection for null models and parameters. 2nd May 2006 Jane Tinslay - Add G4TrajectoryGenericDrawerFactory to G4VisExecutive - Add FilterTrajectory method to G4VisManager 28th April 2006 John Allison (visman-V08-00-14) - G4VSceneHandler.cc: Added call to FinishView after run-duration model computation and before end-of-event and transients re-computation to get good buffer swapping behaviour for double buffer drivers. - G4VisCommandsScene.cc: Added protection in /vis/scene/endOfRunAction. Error for accumulate if end of event action is not also accumulate. - G4VisManager: To get good refresh bahaviour when re-computing transients in OpenGL*Xm and similar drivers, postpone ShowView to end of run for last event in a run. This ensures G4 is in Idle state. - GNUmakefile: Added includes for access to run manager for above. 22nd April 2006 John Allison (visman-V08-00-13) - Bug fix (workaround) for memory leak in CheckModel (bug #861). - Implement PrintAvailableModels using improvement below. 21st April 2006 Jane Tinslay - Improve printout for trajectory drawing and filtering 19th April 2006 John Allison (visman-V08-00-12 - needs greps-V08-00-02) - G4VisManager: o Implemented Draw2D(const G4Text&). o Added PrintAvailableModels (but awaiting implementation). o Fixed directory names (trailing '/'). - G4VSceneHandler: o Implemented Begin/EndPrimitives2D. o Migrated to direct access to G4PhysicalVolumeModel. 28th March 2006 Jane Tinslay (jst28032006) - Introduce G4VisFilterManager.hh to manager filtering - Additions to G4VisCommandsListManager, G4VisExecutive, G4VisManager to support filtering 28th March 2006 John Allison (visman-V08-00-11) - Corrects logic of transients re-computation: o G4VisManager and G4VSceneHandler: Improved logic of TransientsDrawn flags. o G4VSceneHandler: Improved logic of transients re-computation. o G4VViewer: Improved logic of fNeedKernelVisit. - Unified treatment of bools in commands. 24th March 2006 Jane Tinslay (jst24032006) - Introduce trajectory drawing manager which is used by G4VisManager. No change in overall functionality. 16th March 2006 Jane Tinslay (jst16032006) - Add G4TrajectoryDrawByOriginVolumeFactory to G4VisExecutive 13th March 2006 John Allison (visman-V08-00-10) - Fixes recomputation of transients when changing drivers. - G4VisManager: Added fTransientsDrawnThisEvent/Run. - G4VSceneHandler: o Removed fTransientsDrawn (now in G4VisManager). o Added fProcessingSolid. o Fixed recomputation of transients. 8th March 2006 John Allison (visman-V08-00-09) - G4VisManager.cc: Fix bug that causes crash when no current scene handler. 6th March 2006 John Allison (visman-V08-00-08) - Added /vis/scene/transientsAction, a feature for recomputing transients (trajectories, hits, user drawing, etc.) when needed by the viewer. Thus, transients are "remembered" and may be copied between graphics systems. 9th February 2006 John Allison (visman-V08-00-07) - First implementation of refresh end-of-event models (trajectories, etc.). 8th February 2006 John Allison (visman-V08-00-06) - Needs modeling-V08-00-02. - G4VSceneHandler.cc: Made use of G4ModelingParameters::DrawingStyle. - G4VisCommandsSceneAdd.cc: Removed unnecessary #include. 3rd February 2006 John Allison (visman-V08-00-05) - Introduced /vis/geometry/... for editing vis attributes of geometry volumes. - Very minor printing and comments improvements. 26th January 2006 John Allison (visman-V08-00-04) - G4VViewer: Removed fModified. It was used to flag a change of view parameters but it was only ever used negatively, i.e., to *prevent* its effect of invoking SetView. So it has been removed and the responsibility for calling SetView after a change of view parameters rests with the user (e.g., the vis commands). Only used by OpenGL and OpenInventor; now works with opengl-V08-00-01 and openinventor-V08-00-00. - G4VSceneHandler.hh: Improved comments. - G4VisListManager.hh: Prevent crash on attempt to Print when nothing registered. - G4VisManager.hh: Extended friendship to G4XXXSceneHandler. 25th January 2006 John Allison (visman-V08-00-03) - Retro tag: visman-V08-00-00 + friend status for Ray Tracer. 11th January 2006 John Allison (visman-V08-00-02) - G4VisExecutive.icc: protected with G4VISEXECUTIVE_ICC. - G4VisManager.hh: prepared for RayTracer reorganisation (friend status). - G4VisCommandsScene.cc: /vis/scene/create: simplified registration of scene to avoid recursive invocation of /vis/scene/notifyHandlers/. - G4VisCommandsSceneAdd.cc: Improved message when world not available. - G4VisCommandsViewer.cc: /vis/viewer/refresh: When world added, delegate to /vis/scene/notifyHandlers. Avoids double refresh. - G4VisManager.cc: Changed ERROR to WARNING when user calls Draw with invalid view. 9th January 2006 John Allison (visman-V08-00-01) - This tag includes all the changes below. 9th January 2006 John Allison (visman-V08-00-00) - This tag is geant4-08-00-ref-00 + change of 5th January only. 5th January 2006 John Allison - G4VSceneHandler.cc: Reversed change of 22nd November 2005: fMarkForClearingTransientStore(true) initially now. This is so that at end of event or run, the view is refreshed and the scene (detector geometry, etc.) is drawn or written to file. 14th December 2005 John Allison - Improved /vis/scene/notifyHandlers so that it forces a rebuild of the graphical database, if any. Particularly relevant for Open Inventor. - G4Scene.cc, G4VSceneHandler.cc: Improved warning messages. - G4VisManager.cc: Apply "/vis/scene/notifyHandlers" if world has been added to an empty scene. - G4VisCommandsViewer.cc: "/vis/viewer/refresh": if world is added to an empty scene, invoke UpdateVisManagerScene, which applies "/vis/scene/notifyHandlers", which now forces a rebuild. - G4VisCommandsViewer.cc: Fix bug in "/vis/viewer/rebuild". 4th December John Allison (visman-V07-01-10) - G4Vismanager.cc: Prevent ERROR messages at end of event and run when user has not instantiated a scene handler, e.g., in batch mode. 29th November 2005 Jane Tinslay - Make G4VisManager::RegisterModelFactories() non-pure for backwards compatibility. - Add information message to G4VisManager::DispatchToModel when default trajectory model is used. 23rd November 2005 Joseph Perl (visman-V07-01-09) - Tagged in preparation for Geant4 8.0 23rd November 2005 Jane Tinslay - Enhanced trajectory implementation 22nd November 2005 John Allison - Added /vis/viewer/rebuild (forces visit of kernel). - Changed G4Transform3D::Identity to G4Transform3D(). - Tidied initial printing. - Removed MyVisManager (was deprecated in previous major release). - G4VSceneHandler.cc: fMarkForClearingTransientStore(false) initially. - G4VVisCommand.cc: Improved UpdateVisManagerScene. - Refined guidance of issue "/tracking/storeTrajectory 1" on "/vis/scene/add/trajectories". - Improved /vis/sceneHandler/attach. - G4VisManager.cc: Improved comments. 13th October 2005 John Allison (visman-V07-01-08) - G4ViewParameters: Added XGeometryString. - G4VViewer.cc: Pick up XGeometryString. - /vis/open and /vis/viewer/create: Allow X-Windows-type geometry string in window size hints. - /vis/viewer/set/background: Add opacity parameter. 20th October 2005 John Allison (visman-V07-01-07) - G4VisManager: o Added methods for managing trajectory models. o Implemented first version of DispatchToCurrentModel(const G4VTrajectory&, G4int i_mode). o Created /vis/modeling/trajectories/ for trajectory model messengers. o Added XGeometryString for some future viewer enhancements. - G4VisExecutive: Added RegisterTrajectoryModelMakers. 20th October 2005 John Allison (visman-V07-01-06) - Get standard colours with "/vis/viewer/set/background red", for example. - G4VisCommandsViewer.cc: Fixed G4ThreeVector/G4Vector3D problem with CLHEP-1.9.2.1. 13th October 2005 John Allison (visman-V07-01-05) - Background colour - /vis/viewer/set/background. - Non-uniform scaling - /vis/viewer/scale and scaleTo. - Migrated to . 12th October 2005 John Allison (vis-V07-01-03) - G4VisCommandsViewer.cc: Trapped zero viewer pointer in /vis/viewer/update (bug found by system test of vis-V07-01-02). 16th September 2005 John Allison (visman-V07-01-04) - Simplified use of ConcreteInstance. It is now always non-zero for an instantiated vis manager; invalid views are reported by the vis manager. The exception is /vis/disable which zeros it; /vis/enable or any valid command resets it. 16th September 2005 John Allison (visman-V07-01-03) - Issue "/tracking/storeTrajectory 1" on /vis/scene/add/trajectories. - Added warning: o Attempt to add volume to a scene already containing the world. - Added error message: o Logical volume model must be only volume model in scene. - G4Scene.cc: Improvement - no functional change. 13th September 2005 John Allison (visman-V07-01-02) - Added WhiteBackground to G4ViewParameters. - Added /vis/viewer/set/whiteBackground. - G4VSceneHandler::GetColour and GetTextColour: white and opaque objects on a white background are changed to black. - Added RayTracerX to G4VisExecutive under control of G4VIS_USE_RAYTRACERX. - Re-instated invocation of SetView and ClearView in /vis/viewer/refresh. 2nd September 2005 John Allison (visman-V07-01-01) - Introduced optional second pass over run-duration models in G4VSceneHandler::ProcessScene. 20th July 2005 John Allison (visman-V07-01-00) - G4VisCommandsViewer.cc: Protected new viewer pointer. 7th June 2005 John Allison (visman-V07-00-02) - /vis/scene/notifyHandlers: Fixed case of scene handler with no viewer. 31st May 2005 John Allison (visman-V07-00-01) - G4VisCommandsSceneAdd.cc: Fixed /vis/scene/add/text to accept text with spaces. - G4ViewParameters.cc: Printed WARNING: Viewpoint direction is very close to the up vector direction.