$Id: History,v 1.213 2008/12/02 09:16:10 gcosmo 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 ! ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- Dec 02, 2008 G.Cosmo (global-V09-01-17) - Changed date for release 9.2. Nov 07, 2008 P.Gumplinger (global-V09-01-16) - Removed unnecessary 'const' qualifier from G4PlaneVectorRand() function declaration. Nov 07, 2008 G.Cosmo (global-V09-01-15) - Added header G4RandomTools.hh, implementing global utility methods for random Lambertian vector and random plane vector. Implementation derived from G4OpBoundaryProcess. Oct 14, 2008 V.Ivantchenko (global-V09-01-14) - G4PhysicsVector: changed algorithm for computation of second derivatives, to guarantee continuity with first derivative; fixed second derivative at edges of the vector to be the same as in neighboring nodes. Sep 22, 2008 G.Cosmo (global-V09-01-13) - Corrected initialisation of vectors to conform to definition in G4PhysicsVector, and added protections against empty vectors. (V.Ivantchenko) - Corrected definition of copy-constructor and operator=() in G4PhysicsVector and added corresponding definitions in derived classes, where needed. Aug 15, 2008 G.Cosmo (global-V09-01-12) - Restored original implementation of G4SwapPtr() but using reference of pointers as arguments, allowing for unambiguous use from client code. Aug 14, 2008 P.Gumplinger (global-V09-01-10, global-V09-01-11) - Corrected G4SwapPtr() function in templates.hh (see also problem report #1020). Jun 26, 2008 G.Cosmo (global-V09-01-09) - Corrected version number tag. Jun 23, 2008 G.Cosmo (global-V09-01-08) - Changed date for release 9.2-beta. May 06, 2008 M.Maire (global-V09-01-07) - G4UnitsTable: added units for electric-field, V/m. Apr 23, 2008 G.Cosmo (global-V09-01-06) - Changed date for release 9.1.p02. Apr 21, 2008 V.Ivantchenko (global-V09-01-05) - Corrected deletion of temporary in G4PhysicsVector::FillSecondDerivatives(). Apr 07, 2008 A.Bagulya, V.Ivantchenko (global-V09-01-04) - G4PhysicsVector: o Introduced cubic spline interpolation, optionally selectable. o Optimised implementation of GetValue() method. - G4LPhysicsFreeVector: corrected use of GetValue() to adopt implementation available from the base class. Mar 19, 2008 V.Grichine (global-V09-01-03) - Modified G4RandomDirection global function to use unit radius sphere surface algorithm instead of 8-quadrants technique, giving 30% performance boost. Mar 13, 2008 G.Cosmo (global-V09-01-02) - Introduced inclusion of and in G4String.hh and templates.hh respectively for porting on gcc-4.3.0 compiler. - Cleared compilation warnings in G4DataInterpolation and G4JTPolynomialSolver on gcc-4.3.0 for ambiguous use of parentheses in condition statements. Feb 15, 2008 G.Cosmo (global-V09-01-01) - Removed useless specification of units in implementation of G4GeometryTolerance::SetSurfaceTolerance(). Jan 22, 2008 G.Cosmo (global-V09-01-00) - Changed date for release 9.1.p01. Nov 20, 2007 G.Cosmo (global-V09-00-02) - Changed date for release 9.1. Nov 13, 2007 G.Cosmo (global-V09-00-01) - Cleared compilation warnings for non-inlining and shadowing of variables. Aug 21, 2007 G.Cosmo (global-V09-00-00) - Changed date for release 9.0.p01. Jun 18, 2007 G.Cosmo (global-V08-03-07) - Force static initialisation to G4GeometryTolerance singleton, to overcome problems in startup on MacOS for the case of redundant link list of libraries. Jun 05, 2007 G.Cosmo (global-V08-03-06) - Fixed compilation warnings on Intel icc compiler for useless const specification in return values of G4ErrorPropagatorData methods. Jun 05, 2007 G.Cosmo (global-V08-03-05) - Define static methods not inline in G4ErrorPropagatorData class, to allow for generation of DLLs on Windows. May 30, 2007 G.Cosmo (global-V08-03-04) - Changed date for release 9.0. May 18, 2007 G.Cosmo (global-V08-03-03) - Removed kAngTolerance and kRadTolerance constants, now provided by the G4GeometryTolerance class. Values are still kept as the original set in geomdefs.hh and cannot be changed. May 16, 2007 G.Cosmo (global-V08-03-02) - Introduced new utility class G4ErrorPropagatorData to provide access to mode, state, target and manager verbosity for the error propagation classes (by P.Arce). May 13, 2007 V.Ivanchenko (global-V08-03-01) - Fixed bug in G4LPhysicsVector constructor: initialise vectors of length=nbin+1 (one bin is hidden for users). Addresses bug report #942. May 11, 2007 G.Cosmo (global-V08-03-00) - Added G4GeometryTolerance singleton class for the definition of tunable geometrical tolerances. The Cartesian tolerance can either be set to a fixed value (kCarTolerance=1E-9 mm) or to a value computed on the basis of the maximum extent of the world volume assigned through the G4GeometryManager at the beginning of the application -before- any geometrical object is created. - Old static constant 'kCarTolerance' has been removed. - Added new class G4SimplexDownhill in HEPNumerics module: a Simplex method for function minimization. Apr 25, 2007 G.Cosmo (global-V08-02-02) - Changed date for release 8.3. Feb 19, 2007 G.Cosmo (global-V08-02-01) - Changed date for public patch-01 to release 8.2. Feb 09, 2007 G.Cosmo (global-V08-02-00) - Added G4TwoVector type, typef of CLHEP's Hep2Vector class. Nov 30, 2006 G.Cosmo (global-V08-01-07) - Added ClearUnitsTable() method to G4UnitDefinition to allow for proper deallocation of units from the run-manager. Nov 22, 2006 M.Asai (global-V08-01-06) - Fixed the incorrect behavior of G4StateManager, so that now it changes the state AFTER it asks to all the G4VStateDependent classes. Nov 15, 2006 G.Cosmo (global-V08-01-05) - Added signal handler for debugging FPE signals and catching NaNs in applications. Works only on Linux with gcc compiler. Activated through the run-manager if "run" module is compiled with the flag G4FPE_DEBUG set in the environment. - Changed date for release 8.2. Nov 02, 2006 G.Cosmo (global-V08-01-04) - Removed definitions of 'sysconf()', 'filetime2msec()' and 'times()' for WIN32 in G4SliceTimer. Symbols are already defined in G4Timer and included in the library. Fixes archiving warning on Windows. Nov 02, 2006 G.Cosmo - Changed date for release 8.1.p02. Oct 23, 2006 G.Cosmo (global-V08-01-03) - New class G4SliceTimer with implementation derived from G4Timer for the computation of slice time intervals (by M.Asai). Sep 15, 2006 G.Cosmo (global-V08-01-02) - Corrected inclusion of CLHEP headers in wrapper files G4SystemOfUnits.hh and G4PhysicalConstants.hh Aug 18, 2006 M.Maire (global-V08-01-01) - G4UnitsTable: removed mum; um should be used instead. Jul 20, 2006 G.Cosmo (global-V08-01-00) - Changed date for release 8.1.p01. Jun 13, 2006 V.Grichine - Extended unit test G4IntegratorTest in HEPNumerics. May 03, 2006 G.Cosmo (global-V08-00-04) - Updated date for release 8.1 in G4Version.hh. May 03, 2006 G.Cosmo (global-V08-00-03) - Clear entries in table in destructor of G4UnitDefinition. May 03, 2006 G.Cosmo (global-V08-00-02) - Added G4VNotifier class, renamed from G4VStoreNotifier implemented inside the geometry module. The class is a simple abstract class allowing for implementation of user notifiers to be activated for example at registration/deregistration of objects in stores. Feb 15, 2006 M.Maire (global-V08-00-01) - G4UnitsTable: added GeV/cm, MeV/cm, keV/cm, eV/cm (Energy/Length) g/cm2 ("Mass/Surface") and MeV*cm2/g ..etc.. ("Energy*Surface/Mass"). Jan 30, 2006 M.Maire (global-V08-00-00) - G4UnitsTable.cc: added Symbol um for micrometer. Dec 02, 2005 G.Cosmo (global-V07-01-06) - templates.hh: get rid of hard-coded numbers for DBL_MIN, FLT_MIN, DBL_DIG, DBL_MAX, FLT_DIG, FLT_MAX/MAXFLOAT. Use numeric_limits from instead. Fix necessary to allow for porting on VC++8 compiler. - Added unit test LimitsTest.cc. Nov 28, 2005 G.Cosmo (global-V07-01-05) - Changed header file from version.hh to G4Version.hh. Coworks with tag "run-V07-01-08" - Fix in G4strstreambuf destructor to avoid double flushing of buffer. Nov 09, 2005 G.Cosmo (global-V07-01-04) - Removed '#undef __DEPRECATED' statement in G4Types.hh for strstream deprecation by the gcc compiler. - Added forward declaration for __void__ type to be used for definition of fake default constructors for usage of direct object persistency. Nov 04, 2005 G.Cosmo (global-V07-01-03) - Support for CLHEP-2.0.X series: o Introduced explicit usage of 'CLHEP::' and 'HepGeom::' namespaces for vector and geometry types. o Added wrapper headers for units and constants to allow for usage in the global namespace. Units and constants are NOT moved to the CLHEP namespace in this version. o Works with both 1.9.X and 2.0.X series of CLHEP. Oct 26, 2005 K.Murakami (global-V07-01-02) - version.hh: modified for the release 8.0 - G4strstreambuf: revised for migration to sstream Oct 04, 2005 G.Cosmo (global-V07-01-01) - G4Allocator: initialise esplicitely data in copy-ctor. - G4AllocatorPool: added default dummy argument to ctor to allow for default-ctor Sep 26, 2005 K.Murakami (global-V07-01-00) - Added version.hh header, including definitions for software versioning. Aug 12, 2005 M.Maire - G4UnitsTable.cc: added Surface/Mass unit (cm2/g). May 19, 2005 V.Grichine (global-V07-00-06) - Improved accuracy to G4AnalyticalPolSolver for quartic case. May 17, 2005 V.Grichine (global-V07-00-05) - Added new class G4AnalyticalPolSolver in HEPNumerics module, implementing the CACM algorithm for solving analytically a polynomial equation up to the 4th order. Apr 22, 2005 G.Cosmo (global-V07-00-04) - G4Types.hh: extend check for deprecated warning on for major versions of gcc >= 3. Mar 21, 2005 J.Allison (global-V07-00-03) - G4UnitsTable.hh/.cc: Added G4BestUnit::operator G4String. Mar 18, 2005 G.Cosmo - Fixed compilation warnings on SUN-CC for G4JTPolynomialSolver. Mar 15, 2005 G.Cosmo (global-V07-00-02) - Migrated calls to G4Exception in HEPNumerics to canonical signature. - Q/A cleanup to clear CodeWizard warnings and minor fixes. - Moved inline methods to .icc files. - Minor cosmetics. Mar 01, 2005 G.Cosmo (global-V07-00-01) - Fixed compilation warnings on WIN32-VC for G4JTPolynomialSolver; removed unnecessary inclusion of . Feb 14, 2005 G.Cosmo (global-V07-00-00) - Added polynom-solver class G4JTPolynomialSolver implementing the Jenkins-Traub algorithm for real polynomial root finding. To be used by the twisted-trap shape for precise computation of intersections. Dec 02, 2004 G.Cosmo (global-V06-02-05) - Added inclusion of to G4Allocator.hh to make the header self-consistent. Nov 12, 2004 G.Cosmo (global-V06-02-04) - Migrated code to use 'std' namespace for mathematical functions included from . Removed explicit inclusion of CLHEP.h and therefore also implicit inclusions of system headers , and . - Removed implicit inclusion of CLHEP's template function abs(), use now standard function std::abs() instead. Nov 01, 2004 H.Kurasige (global-V06-02-03) - Code cleanup in G4PhysicsTable implementation. - Added push_back() method. Oct 29, 2004 G.Cosmo (global-V06-02-02) - Added global function G4RandomDirection() providing a random 3-vector normalised in 4pi. - Cleared obsolete setup for min/max macros required for Windows/VC++6. Oct 25, 2004 H.Kurashige (global-V06-02-01) - Added collection of flags and related methods in G4PhysicsTable. The collection of boolean values will be used by physics processes to flag if recomputation will be required or not. Jul 1, 2004 G.Cosmo (global-V06-02-00) - Merge developments included in "global-V06-01-02" for the new G4Allocator implementation. Jun 11, 2004 G.Cosmo (global-V06-01-02c) - Use global flag G4IOS_EXPORT to export extern symbols for DLLs. Modified granular GNUmakefiles and corrected G4ios.cc to the new scheme. - Does NOT include developments introduced in "global-V06-01-02". Jun 9, 2004 G.Cosmo (global-V06-01-02b) - Adopt G4DLLIMPORT/G4DLLEXPORT technique to handle extern simbols for allowing support of DLLs on Windows. - Does NOT include developments introduced in "global-V06-01-02". Jun 7, 2004 G.Cosmo (global-V06-01-02a) - Added support for building DLLs on Windows: o Added macros for importing symbols. o Migrated G4ios and G4strstreambuf. - Does NOT include developments introduced in "global-V06-01-02". May 26, 2004 G.Cosmo (global-V06-01-02) - New implementation of the G4Allocator based on a pool of memory-chunks. The size of a single chunk is kept at 1Kb as for the old allocator. This implementation replaces the old G4Allocator based on pages and no longer portable on the new gcc-3.4.0 compiler. The new allocator also supports the standard interface required for STL containers, in case it will be used as alternative allocator instead of the default std::allocator. o New classes: G4AllocatorPool o Removed classes: G4AllocatorPage, G4AllocatorUnit. - Added unit test for allocation of std::vector collections. May 14, 2004 G.Cosmo (global-V06-01-01) - G4Allocator: added utility methods for explicitely deallocate storage and print total allocated pages size: ResetStorage(), GetAllocatedSize(). - Added unit test for deallocation. April 23, 2004 G.Cosmo (global-V06-01-00) - Fixed bug in HEPNumerics/G4DataInterpolation::PolynomInterpolation() for indexing in a for-loop. (V.Grichine) March 15, 2004 G.Cosmo (global-V06-00-01) - Removed obsolete "includes" target in management/GNUmakefile. - Corrected comments in G4UserLimits.hh. January 21, 2004 G.Cosmo (global-V06-00-00) - G4UnitsTable[.hh.cc]: corrected signatures to consider 'const G4String&' wherever applicable. November 24, 2003 G.Cosmo (global-V05-02-03) - G4UnitsTable.cc: fixed units initialisation and deletion of objects in constructors. November 4, 2003 G.Cosmo (global-V05-02-02) - Added method ExistPhysicsTable() to G4PhysicsTable. (H.Kurasige) October 31, 2003 M.Asai (global-V05-02-01) - Fixed uninitialized variable in G4StateManager and protect null pointer of G4VExceptionHandler used in G4Exception June 17, 2003 G.Cosmo (global-V05-02-00) - Archived g4std wrappers. Removed definition of G4std in G4Types.hh. June 6, 2003 G.Cosmo (global-V05-01-01) - Made g4std wrappers obsolete: o modified wrappers to include standard std headers o replaced all occurences of G4std:: with std:: o replaced all occurences of #include "g4std/XXX" with #include o removed usage of G4USE_STD_NAMESPACE macro. May 21, 2003 G.Cosmo (global-V05-01-00) - G4PhysicsVector.hh: moved copy costructor and assignment operator to public. Fixes problem report #486. April 7, 2003 G.Cosmo (global-V05-00-05) - G4Allocator.hh: revert back latest change. Performance loss is not really relevant in a real simulation but not negligible in a specific unit test. - Added simple unit tests for G4Allocator and G4Timer. April 1, 2003 G.Cosmo (global-V05-00-04) - G4Allocator.hh: test additional protection for NULL pointer in FreeSingle(). March 27, 2003 G.Cosmo (global-V05-00-03) - Fixed compilation problem on WIN32-VC platform for G4strstreambuf. March 25, 2003 G.Cosmo (global-V05-00-02) - Fixed trivial strict pedantic warnings in copy constructor for G4PhysicsTable and G4strstreambuf. Also for unused parameters in a couple of methods in G4String. - Removed unnecessary usage of GNU_GCC preprocessor flag in G4Allocator and G4strstreambuf. February 05, 2003 G.Cosmo (global-V05-00-01) - Removed copies of SystemOfUnits.h and PhysicalConstants.h, now using directly headers from CLHEP: changed globals.hh and G4SIunits.hh. January 22, 2003 G.Cosmo (global-V05-00-00) - global.hh: exclude definition of min/max for Windows .NET VC++ compiler. December 6, 2002 G.Cosmo (global-V04-01-05) - G4Integrator.icc: fixed some uninitialised variables. - Fixed unit test for G4Integrator. December 4, 2002 M.Asai (global-V04-01-03, global-V04-01-04) - Migration to new G4ApplicationState. November 20, 2002 G.Cosmo (global-V04-01-02) - G4UnitsTable[.hh.cc]: made GetUnitsTable static method non inlined. - G4Integrator[.icc]: plugged minor memory leak. August 19, 2002 M.Asai (global-V04-01-01) - Introducing a new G4Exception scheme. Added : G4VStateDependent.hh G4VStateDependent.cc G4ExceptionSeverity.hh Modified : G4Exception.cc G4StateManager.hh globals.hh June 21, 2002 G.Cosmo (global-V04-01-00) - G4Allocator.hh: changed definition of page size to become data-member of G4Allocator. fPageSize is now computed according to the size of the object to be allocated. The default size is 1024 bytes for objects whose size is less than 512 bytes, 10 times the size of the object otherwise. To be benchmarked before put it in production. May 30, 2002 G.Cosmo (global-V04-00-08) - G4DataVector.cc: initialise to zero values in collection for contructor taking capacity. May 24, 2002 G.Cosmo (global-V04-00-07) - Introduced temporary modifications for porting on gcc-3.1 compiler: o g4std/strstream: deactivate gcc-3.1 specific __DEPRECATED flag. o G4strstreambuf.icc: correct patch for overflow() to be specific only to gcc-3.0.X versions of the compiler. Behavior now fixed in gcc-3.1. o G4llocator.hh: use pointer to member data to compute offset in FreeSingle(). for gcc-3.1 compiler. gcc-3.1 complains and does not correctly handle offsets computed from non-POD types. Pointers to member data should be used instead. This advanced C++ feature seems not to work on earlier versions of the same compiler or on other system configurations. - Cosmetics for Software Reference Manual on G4Allocator related headers. May 15, 2002 G.Cosmo (global-V04-00-06) - G4UnitsTable.cc: fixed bug in operator<< to use the argument 'flux' instead of G4cout. - geomdefs.hh: added 'kUndefined' key to specify undefined EAxis. April 19, 2002 G.Cosmo (global-V04-00-05) - Moved inline constructors/destructors to no-inline. Files: G4DataVector[.hh.cc], G4OrderedTable[.hh.cc]. April 16, 2002 M.Asai (global-V04-00-04) - Give a bit more information to the user when G4Exception occurs. Affected files : G4Exception.cc G4StateManager.hh G4StateManager.cc March 25, 2002 G.Cosmo (global-V04-00-03) - G4String[.hh.icc]: use G4std::string instead of internal type 'std_string' in signatures of public methods. January 28, 2002 G.Cosmo (global-V04-00-02) - G4strstream.icc: temporary fix to G4strstream::overflow(int) for GNU gcc-3.0.X compilers, which require returning of character c in case of . January 25, 2002 G.Cosmo (global-V04-00-01) - Removed unnecessary std wrappers for HP-aCC (coworks with config-V04-00-00). - Removed obsolete inline definitions in g4std/wrappers/DEC-cxx/cmath. January 17, 2002 G.Cosmo (global-V04-00-00) - Replaced 'NULL' with '0' in G4Allocator.hh, G4strstreambuf.icc and G4Timer.cc. - G4strstreambuf.icc: plugged memory leak in destructor for buffer deletion and some cosmetics. November 29, 2001 G.Cosmo (global-V03-02-07) - Fixed warnings on gcc-3.0.2 for G4DataVector.cc and G4PhysicsVector.cc. - Minor fixes to G4String[.hh.icc] for avoiding compilation warnings on WIN32-VC and gcc-3.0.2. November 08, 2001 R.Chytracek (global-V03-02-06) - New optimised revision of G4ReferenceCountedHandle to reflect new design. Updated also unit test testReferenceCountedHandle.cc. October 23, 2001 G.Cosmo (global-V03-02-05) - Merged changes in "global-V03-02-03" for removal of STLinterface module. October 22, 2001 G.Cosmo (global-V03-02-04) - Note: this tag adds the following fearures to "global-V03-02-02" (removal of STLinterface is NOT included here!): o Introduced G4ReferenceCountedHandle templated class. o Added wrapper in include/g4std. October 11, 2001 G.Cosmo (global-V03-02-03) - Removed STLinterface module: o renamed cstring[.h.icc] to G4String[.hh.icc] and placed in management/include. o renamed ctoken.h to G4Tokenizer.hh and placed in management/include. September 17, 2001 H.Kurashige (global-V03-02-02) - Added Store/Retrieve method to G4DataVector. - Added Store/Retrieve method to G4OrderedTable. July 18, 2001 M.Asai (global-V03-02-01) - Added a feature of suppressing program abortion due to G4Exception affected files : G4StateManager.hh G4StateManager.cc G4Exception.cc July 16, 2001 G.Cosmo (global-V03-02-00) - Synchronised with CVS HEAD after inclusion liability disclaimer. June 15, 2001 G.Cosmo (global-V03-01-02) - globals.hh: removed definition of cbrt() to allow ANSI compilation on Linux-g++ architecture with new compiler gcc-2.95-2. June 06, 2001 G.Cosmo (global-V03-01-01) - G4DataVector: added constructor with argument for initialise values in collection. May 30, 2001 G.Cosmo (global-V03-01-00) - Defined 'str_size' as G4std::string::size_type and replaced usage of 'size_t' in G4String and G4SubString. Fixes problem report #40. April 05, 2001 G.Cosmo (global-V03-00-11) - Added patch to management/GNUmakefile for allowing compilation of G4UnitsTable.cc on SUN-CC5 (CC 5.2 Patch 109508-02), removing optimisation. April 03, 2001 G.Cosmo (global-V03-00-10) - Fixed minor bug in constructor of G4PhysicsLinearVector, G4PhysicsLnVector and G4PhysicsLogVector (H.Kurasige). April 02, 2001 G.Cosmo (global-V03-00-09) - G4UnitsTable.cc: resolved ambiguity of old/new style iostream for formatting in G4UnitsTable::operator<<. - Fix for compilation on WIN32-VC: added typedef to base collection G4PhysCollection in G4PhysicsTable. March 09, 2001 G.Cosmo (global-V03-00-08) - Tyde up comments. - Added patch to G4PhysicsTable::Store/Retrieve methods for non-ISO setup where 'binary' streams are not implemented. Binary mode is allowed only with ISO setup (native-STL). - Removed 'virtual' specifier from Retrieve (...) methods in G4PhysicsVector derived classes. - Fixed bug in constructor of G4PhysicsLnVector: added initialisation of 'dataVector' to zero (H.Kurasige). March 09, 2001 H.Kurasige - Added Store/RetrievePhysicsTable methods (G4PhysicsTable). - Added Store/Retrieve and GetType methods (G4PhysicsVector and related). - Introduced G4PhysicsVectorType class (enumeration). - Added unit test PhysicsTableTest.cc. March 06, 2001 G.Cosmo (global-V03-00-07) - Completed migration to STL vector for all classes in "global/management" o Migrated G4UnitsTable o Migrated G4StateManager March 05, 2001 G.Cosmo (global-V03-00-06) - Added new unit 'parsec' to SystemOfUnits.h (M.Maire). - Updated G4UnitsTable unit test (M.Maire). - Removed file G4UnitsTest.hh now replaced by G4SIunits.hh. February 24, 2001 G.Cosmo (global-V03-00-05) - Implemented migration to STL vectors for G4PhysicsTable (H.Kurasige). Added class description and comments for Software Reference Manual. February 05, 2001 H.Kurasige (global-V03-00-04) - Added default constructors to G4DataVector and G4OrderedTable. Removed default size. February 01, 2001 G.Cosmo, H.Kurasige (global-V03-00-03) - Migration to STL vectors for G4OrderedTable and G4DataVector. In G4OrderedTable, G4ValVector type has been removed and is now replaced with G4DataVector. - Removed from G4PhysicsVector dependency over G4PhysicsTable. Removed methods: LinkPhysicsTable(), IsLinkedTableExist() and GetNextTable(). Removed data-member ptrNextTable. Updated all related subclasses. - Updated unit tests in management/test. January 29, 2001 G.Cosmo (global-V03-00-02) - Added generic class G4PolynomialSolver in HEPNumerics module, extracting logic from class G4Torus in geometry/solids/CSG. January 16, 2001 G.Cosmo (global-V03-00-01) - Minor fixes to last migration in management classes tagged global-STLmigration-V02. January 09, 2001 H.Kurashige - Full STL migration for G4PhysicsVector and related. January 09, 2001 G.Cosmo (global-V03-00-00) - Fixed bug in destructor of G4Allocator (report #181): use "delete" instead of "free" for deleting a page allocated with "new". December 13, 2000 G.Folger (global-V02-00-06) - Added GNUmakefile to HEPRandom to handle "includes" gmake target. November 20, 2000 G.Cosmo (global-V02-00-05) - QA code cleanup and fixes to remove warnings from "-Wall -ansi -pedantic" g++ compiler options: o added/fixed declaration/implementation of private copy constructor and assignment operator where needed. o commented out variables declared and not used. o fixed declaration of variables used before being initialised. o fixed order of initialisation of member data in constructors. o fixed usage of unsigned-int (size_t) for array indeces. o G4strstreambuf: created .icc file and moved implementation of inlined functions therein. November 3, 2000 G.Folger (global-V02-00-04) - Added rules for "includes" target to GNUmakefile and management/GNUmakefile. Added GNUmakefile in STLInterface for the "include" target. November 1, 2000 G.Cosmo (global-V02-00-03) - Moved geometry constants kHistoryMax, kHistoryStride and kNavigatorVoxelStackMax to geomdefs.hh. August 22, 2000 H.P.Wellisch - Added wrapper in management/g4std. August 02, 2000 G.Cosmo (global-V02-00-02) - Added wrapper in management/g4std. - Added inclusion of new CLHEP random distributions in HEPRandom/include/Randomize.hh pending update of Randomize.h in CLHEP. July 22, 2000 M.Asai (global-V02-00-01) - Move G4VStateDependent and G4StateManager classes into global/management from intercoms. - "Abort" state is added to G4ApplicationState. - Modify G4Exception to change Geant4 status to "Abort". - Fix a bug of "double deleting" in the destructor of G4StateManager. July 21, 2000 G.Cosmo (global-V02-00-00) - STLInterface/cstring.icc: extended buffer for G4String::readLine from 256 to 1024 characters. June 26, 2000 G.Cosmo (global-V01-01-05) - Fixes for problem report #104, STLInterface: o defs.h: defined G4RWTHROW(a) to abort() in case G4NO_STD_EXCEPTIONS is set. o tpsrtvec.icc, tvordvec.icc: corrected implementation of last() in case of call to G4RWTHROW(a). o cstring.icc: defined function G4String::strcasecompare(a,b) which will NOT invoke the non-ANSI function strcasecmp(a,b) when G4USE_STD_NAMESPACE is set. - STLInterface/defs.h: fixed memory leaks in destruction of 'str' in destructors and copy-constructors of G4RWGeneralException and G4RWBoundsErr. - G4Timer.cc: added definition of 'vfork' for IRIX6_2 (requested by FNAL in report #104). June 15, 2000 G.Cosmo (global-V01-01-04) - Introduced fixes to g4std/complex for ISO and non-ISO compliance. Defined G4complex type as complex type of doubles. - Changed implementation of G4Integrator to a template class, to allow porting on Solaris CC compiler which does not implement templated member functions. May 25, 2000 J.Allison (global-V01-01-03) - Added new G4UnitDefinition("kg/m3",...) to G4UnitsTable.cc. March 23, 2000 G.Cosmo (global-V01-01-02) - Added class G4PhysicsLnVector[.hh.cc] implementing a physics vector with natural logarithmic scale for energy/momentum bins. (M.G.Pia) March 21, 2000 G.Cosmo (global-V01-01-01) - STLInterface: forced initialization of vectors' members also for ordered/sorted collections. Even when using the access operator vector::operator[] as left-hand operand, it requires the vector to be not empty. Removed usage of vector::reserve(capacity). March 11, 2000 G.Cosmo (global-V01-01-00) - STLInterface: implemented correct behavior for vectors' default constructors, as expected by the RW interface. o for pointer/value ordered/sorted collections, an EMPTY STL vector is created and the vector capacity is set to G4RWDEFAULT_CAPACITY using vector::reserve(capacity). No element initialisation is done. o for pointer/value simple collections, a default constructor creating an EMPTY STL vector is implemented; the constructor taking the capacity as argument, creates an STL vector of the given capacity and explicitly initialises its elements. NB: pointers are initialised to zero. - Added "g4std/complex" wrapper file (V.Grichine) February 16, 2000 H.Kurashige (global-V01-00-04) - G4UserLimits[.hh.icc]: added identifier for a concrete instance of the class. Added new member fType (G4String), SetType/GetType methods and new constructor. February 08, 2000 G.Cosmo (global-V01-00-03) - STLInterface/cstring.icc: fixed yet another bug in G4String::toUpper() and G4String::toLower(). Loop over the string characters was causing bounds overflow. - tpvector[.h.icc]: added resize(size_t) method which was missing! January 31, 2000 G.Cosmo (global-V01-00-02) - STLInterface: several fixes. o Fixed bug in G4String::toUpper(). (bug was introduced inadvertently on 20-Oct-1999). o Added checks for bound-overflows in G4RWTPtrSortedVector::find(). o Fixed bound-check for operators () and [] in most collections: () access operators DO NOT perform bound-checking (except if G4DEBUG set); [] access operators DO perform bound-checking. o tpvector[.h.icc]: changed 'unsigned int' to 'size_t' in constructors. Added 'rwsize' and bound-checking for operator[]. o tvvector.icc: added call to std_vector() in default constructor. o tpordvec.icc: added std_pvector:: scope for calls to [] operator, where missing. o tvordvec.icc: added std_vector:: scope for calls to [] operator, where missing. January 19, 2000 G.Cosmo (global-V01-00-01) - G4UnitsTable[.hh.cc]: added constructor to G4BestUnit for 3vectors (M.Maire). - globals.hh: added check on definition of CLHEP_MAX_MIN_DEFINED. January 3, 2000 G.Cosmo (global-V01-00-00) - Syncronized changes with HEAD (mainly CVS headers). - Fixed truncation problem in G4Poisson.hh. - Removed tphdict_test.cc and tvhdict_test.cc in STLInterface/test. - Added wrapper for HP-aCC for missing standard header. - Removed G4USE_STL from globals.hh and G4Timer[.hh.cc]. November 29, 99 G.Cosmo (global-V00-01-14) - Removed g4std/string wrapper since not anymore needed. It was previously made available only for Win/NT-VC++. Inclusion of system is handled only in g4rw/cstring where G4String is defined. November 26, 99 G.Cosmo (global-V00-01-13) - STLInterface: backed up inline keyword for simple methods in vectors' classes (test comparison with previous tag). - Reorganised cstring[.h.icc], no functional changes. November 25, 99 G.Cosmo (global-V00-01-12) - STLInterface: changes for ISO/ANSI C++ support: o Reorganised method definitions on wrapper classes; made templated vectors' methods all not inlined (test). Created .icc files accordingly. o Changed #define to typedef for std_string and protected in class scope. Introduced std_vector and std_pvector for collections, replaced G4std::vector and G4std::vector accordingly. - Added default comment header to files in STLInterface and class descriptions for Software Reference Manual. November 23, 99 G.Cosmo (global-V00-01-11) - Introduced changes to support ISO/ANSI code: o Modified STLInterface wrappers to invoke STL containers from G4std namespace. o Modified #include statements to invoke g4std wrappers. o Introduced G4endl and G4cin in G4ios.hh. Modified code accordingly. - Made destructors for vector wrappers collections in STLInterface virtual. - Added comments to G4UserLimits.hh for the Software Reference Manual (by M.Maire). November 19, 99 G.Cosmo (global-V00-01-10) - Addition of comments for the Software Reference Manual (by M.Maire): G4UnitsTable.hh, G4UnitsTest.hh, PhysicalConstants.h, SystemOfUnits.h. November 16, 99 G.Cosmo (global-V00-01-09) - STLInterface: removed wrappers for Dictionaries. Removed files: tvhdict.h, tphdict.h, rwstlhash.h. Removed also hash_map wrappers for every system. - Removed temporary 'using' statements in g4std wrappers. - Reorganised inline function definitions in management/include: added G4PhysicsVector.icc, G4LPhysicsFreeVector.icc and G4PhysicsOrderedFreeVector.icc. - Fixed bug G4PhysicsVector. Initialised data members in default constructor. - Removed 'RD44' from header description in every file. - Modifications for Software Reference Manual for existing class descriptions. November 15, 99 G.Cosmo (global-V00-01-08) - Fixes for keywords which did not migrate by mistake in the conversion of the HEAD. Namely: RWDEFAULT_CAPACITY, RWBoundsErr, RWGeneralException, RWTHROW, RW2STL_LessPtr and in some cases RWCString. November 11, 99 G.Cosmo (global-V00-01-07) - Migration RWT->G4RWT performed: o Moved STLInterface wrapper classes to STLinterface/g4rw. o Renamed RWCString to G4String and removed related typedef. o Removed RW_NPOS from defs.h and renamed other RW types/constants according to the migration. November 10, 99 G.Cosmo (global-V00-01-06) - Temporarly redefined RW_NPOS in STLInterface/rw/defs.h. Will be removed in the RWT->G4RWT migration and replaced with G4std::string::npos directly in the code. November 09, 99 G.Cosmo (global-V00-01-05) - Added new signature HashDefault(const unsigned long&) in STLInterface rw/rwstlhash.h. October 28, 99 G.Cosmo (global-V00-01-04) - Removed G4STREAM implementation from G4ios and G4strstreambuf, no longer needed. Incremented buffer size to 4096 chars. (by H.Yoshida) October 22, 99 G.Cosmo (global-V00-01-03) - Added first implementation of wrapper files for ISO-ANSI migration: added new directory management/include/g4std. - Added definition of G4std keyword in G4Types.hh. October 20, 99 G.Cosmo (global-V00-01-02) - Tagged. October 20, 99 J.Allison - STLInterface: cstring.h: changed (*this)[i] to std_string::operator[](i). - STLInterface: removed G4USE_EXPLICIT_TYPES_IN_TEMPLATES; introduced typename keyword where needed for HP aCC. Files modified: cstring.h, tpordvec.h, tpsrtvec.h, tpvector.h, tvhdict.h, tvordvec.h and tvvector.h. October 6, 99 G.Cosmo (global-V00-01-01) - STLInterface: Changed tolower/toupper to old implementation in cstring.h (by F.Behner) September 14, 99 G.Cosmo - STLInterface: renamed classes HashPtr and Hash to G4HashPtr and G4Hash in tphdict and tvhdict to make them compliant with G4 coding standards and avoid clashes with external software in global scope. - STLInterface: removed useless tests over size_t < 0 in files tvordvec.h, tvvector.h, tpsrtvec.h and tpordvec.h. - STLInterface: casted pointers to long in rwstlhash.h instead of unsigned. September 13, 99 V.Grichine - Added new class G4Integrator (.hh/.icc) and test file G4IntegratorTest.cc in HEPNumerics for integration of generic functions. September 10, 99 G.Cosmo - Added inline keyword to G4Poisson function in HEPRandom/include which was missing. August 24, 99 J.Allison (global-V00-01-00) - Initialised pointer in first constructor of G4DataInterpolation. - Included STLInterface-V00-01-00. June 21, 99 J.Allison (global-01-00-05) - Changed G4Exception to abort, i.e., produce core dump. - Includes STLInterface-18. May 24, 99 G.Cosmo (global-01-00-04) - globals.hh: removed inclusion of G4Timer.hh, left only G4Types.hh. The attempted solution does not work in situation where STL headers are pulled in before globals.hh. Several of this cases experienced on HP-aCC. - STLInterface/rw/tphdict.h: added find() method to retrieve a key. May 24, 99 G.Cosmo (global-01-00-03) - G4Timer.hh: removed CPP cludge for the "times" clash in ObjectSpace. Removed direct inclusion of global.hh to decouple translation unit from RW/STL headers. (F.Benher) - Introduced G4Types.hh and replaced basic types definitions in globals.hh and G4Timer.hh. - Added inclusion of G4Timer.hh in globals.hh to get rid of clashes about the order of inclusion. G4Timer.hh must appear -before- STL's . May 19, 99 G.Cosmo (global-01-00-02) - templates.hh: added definition of DBL_EPSILON and FLT_EPSILON. Added 'F' to single precision literal constants. - Updates to STLInterface wrappers from the STL task-force. Added AIX-xlC STL wrappers. May 17, 99 J.Allison - Added #undef os_times in G4Timer.hh to avoid clash with ObjectSpace when using STLInterface on Sun. May 14, 99 G.Cosmo (global-01-00-01) - Still updates to STLInterface from the STL task-force (internal tag considered is STLInterface-04). Introduced wrapper files differentiated for each architecture. May 11, 99 G.Cosmo - Updates and fixes to STLInterface headers. Input mainly from DEC and HP. - Added G4Poisson.hh to HEPRandom/include. It includes the implementation of the global function "G4long G4Poisson(G4double)" which reproduces the GPOISS algorithm adopted in Geant3. Uses the CLHEP standard engines as basic random generators. May 3, 99 G.Cosmo (global-01-00-00) - Updates to STL interface ISO/ANSI headers (F.Benher) - Added G4Exception call with STL strings in globals.hh and G4Exception.cc (F.Benher) April 29, 99 G.Cosmo - Moved SystemOfUnits.SI.h to G4UnitsTest.hh in management/include. This file is used only for test purposes and will not be tagged for public versions. March 30, 99 M.Maire - CodeWizard cleanup in G4UnitsTable. Fixed definition of operator=. March 18, 99 J.Allison - globals.hh: Added #ifdef G4USE_STL, changed position of #include "g4rw/cstring.h". December 17, 98 J.Allison (global-00-04-03) - Added first version of STL interface. December 2, 98 M.Asai (global-00-04-02) - Remove the construction of G4UnitsMessenger in G4UnitsTable. This messenger is constructed/destructed by G4UImanager to avoid a loop dependency. December 1, 98 G.Cosmo (global-00-04-01) - Removed G4Allocator.cc containing all template declarations for GNU-g++ compiler not supported anymore. - Removed g4templates.hh contining all template declarations for the old DEC cxx 5.X compiler not supported anymore. - Moved G4ParticleTypes.hh to particles/management/include to remove dependency over particles category. - Updated management/GNUmakefile: not anymore dependencies over external categories. Dependency over intercoms to be fixed still. December 1, 98 M.Nagamatu, H Yoshida - G4ios.cc guarded by G4STREAM November 27, 98 M.Asai - G4UnitsMessenger has been moved to intercoms category to avoid a loop dependency. November 12, 98 K. Amako (global-00-03-05) - Corrected a bug in the GetVectorLength() method of management/src/G4PhysicsVector.cc. The fixed bug has nothing to do with the basic behavior of G4PhysicsVector. November 11, 98 P.Gumplinger - Initialized all data members of the base class in G4PhysicsOrderedFreeVector constructors. November 6, 98 J.Allison (global-00-03-04) - #ifdef WIN32 in G4strstreambuf.hh (Guy Barrand). November 4, 98 G.Cosmo (global-00-03-03) - Added G4coutDestination.hh, G4strstreambuf.hh and G4ios.cc in global/management to resolve a circular dependency previously existing with intercoms category (H.Yoshida, M.Nagamatu). October 21, 98 G.Cosmo (global-00-03-02) - Fixed initialization of G4UnitDefinition::UnitsMessenger in G4UnitesTable.cc. October 17, 98 H.Kurasige - Modified G4FastVector.hh: new array is now created only if (items > N) in Initialize() method (in old version new array was created even when items are equal to N). October 13, 98 M.Nagamatu (global-00-03-01) - Added extern ostream G4cout/G4cerr under G4STREAM control. October 13, 98 M.Maire - Fixed length for printing the units. Add messenger file. September 23, 98 G.Cosmo - Replaced definition of min/max/sqr/abs with inclusion of CLHEP/config/TemplateFunctions.h. Now compliant with CLHEP-1.3. - Replaced definition of G4UniformRand() with explicit call to the static engine of the generator. This obviates to a silly bug in the AIX compiler when treating static objects via -qtwolink option. September 10, 98 G.Cosmo - Added #undef min/max/sqr/abs to prevent possible macros definition (temporary solution to allow backward compatibility with CLHEP-1.2). September 1, 98 M.Maire - Changed Watt to watt in SystemOfUnits.h and G4UnitsTable.cc. August 26, 98 J.Allison (global-00-02-02) - Introduced globals.hh for CLHEP-1.3 (backwards compatible with CLHEP-1.2): added definitions of template functions min/max/sqr/abs. August 11, 98 G.Cosmo (global-00-02-01) - Modified SystemOfUnits.h and G4UnitsTable.cc (M.Maire): introduced - angstrom, microbarn, picobarn, petaelectronvolt. July 17, 98 G.Cosmo (global-00-01-07) - Fixed bug in G4Timer introduced by methods renaming (G.Folger). July 15, 98 Y.Morita (global-00-01-06) - G4ios.hh: Added following lines for ooddlx compiler on CERN AFS-AIX #if defined(OO_DDL_TRANSLATION) #include #endif July 14, 98 G.Cosmo (global-00-01-05) - Modified key value for G4Allocator for porting on CC compiler. (H.Kurasige) July 8, 98 G.Cosmo (global-00-01-04) - Removed forward declarations of G4RWTPtrOrderedVector and G4RWTPtrSortedVector from g4templates.hh. July 7, 98 G.Cosmo (global-00-01-03) - Removed old unit symbols in globals.hh (M.Maire) - Added units for density in G4UnitsTable.cc (M.Maire) July 6, 98 G.Cosmo (global-00-01-02) - Tagged. July 3, 98 J.Allison - Added run/include to management/GNUmakefile for G4Allocator.cc ifdef GNU_GCC. - Added G4Allocator to G4Allocator.cc for GNU_GCC. July 3, 98 G.Cosmo (global-00-01-01) - Moved template declarations of G4Allocator for GNU_GCC from g4templates.hh to G4Allocator.cc. - Tagged. July 3, 98 J.Allison - Added G4Allocator,, for GNU_GCC. July 2, 98 G.Cosmo (global-00-07-01) - Updated g4templates.hh. June 26, 98 G.Cosmo (global-00-06-04) - Removed obsolete directory "benchmarks". June 22, 98 G.Cosmo (global-00-06-03) - Tagged. June 19, 98 J.Allison - In GNUmakefile.architecture, defined G4_SOLVE_TEMPLATES and GNU_GCC. - In g4templates.hh, protected G4Ray. June 15, 98 G.Cosmo (global-00-06-02) - Modified G4UnitsTable, "SymbolName" instead of "Symbol" (M.Asai). - Added few template declarations to g4templates.hh for DEC-AFS. June 10, 98 G.Cosmo (global-00-06-01) - Added forward declarations in g4templates.hh for BREPS classes which were removed by mistake in a committal by M.Maire. June 10, 98 P.Urban - Added G4VERBOSE symbol to the compilation command line. June 08, 98 H.Kurasige & M.Maire - Added particles G4EtaPrime and G4RhoZero in G4ParticleTypes.hh - Created G4UnitsTable (.hh and .cc) and G4UnitsTableTest.cc June 05, 98 M.Maire - Temporarily added PhysicalConstants.h and SystemOfUnits.h from CLHEP. Modified globals.hh accordingly. - Updated G4UnitsTest.cc May 12, 98 G.Cosmo - Fixed bug in GNUmakefile.architecture for OSF platforms. LDFLAGS was explicitly overriden (!?). April 23, 98 G.Cosmo (global-00-05-03) - Added forward declarations in g4templates.hh for BREPS classes. - Modified OpenInventor setup and added -woff option to CXXFLAGS in SGI-Local environment (J.Kallenbach). April 21, 98 M.Asai (global-00-05-02) - G4ApplicationState.hh, G4StateManager.hh and .cc, G4VStateDependent.hh and .cc are moved to "intercoms". - Tagged as global-00-05-02. April 20, 98 G.Cosmo - Added handling of native boolean types in globals.hh through the variable G4_HAVE_BOOL (before controlled only through CLHEP variable HEP_HAVE_BOOL). - Added G4_HAVE_BOOL to HP-aCC setup in GNUmakefile.architecture. April 15, 98 H.Kurasige - Removed post-const qualifier from following methods in G4UserLimits: GetMaxAllowedStep, GetUserMaxTrackLength, GetUserMaxTime, GetUserMinEkine, GetUserMinRange. April 09, 98 G.Cosmo (global-00-05-01) - Modified G4Allocator::AddNewPage(). Now used "register int" instead of "unsigned" for page chunks index. April 09, 98 M.Maire - Added new data and member functions to G4UserLimits class. March 24, 98 G.Barrand - GNUmakefile, GNUmakefile.architecture, GNUmakefile.common : MAKESHLIB changed in G4MAKESHLIB March 13, 98 G.Cosmo (global-00-04-04) - Added inclusion of G4GlobalFastSimulationManager.hh in g4templates.hh, courtesy of P.Mora de Freitas. March 12, 98 G.Cosmo (global-00-04-03) - Updated description of supported OS/compilers. March 07, 98 G.Cosmo (global-00-04-02) - Modified CPPFLAGS setup for HP-aCC. - Added -lftn to FCLIBS for SGI setup (P.Urban) March 05, 98 G.Cosmo (global-00-04-01) - Removed warnings of unused variables. March 03, 98 G.Cosmo - Changed NO_CBRT to G4_NO_CBRT in GNUmakefile.architecture and globals.hh. - Changed default constructor in G4StateManager.hh to be protected instead of private. March 02, 98 S.Sadilov - add (temporary solution?) MAXFLOAT macros in management/include/templates.hh for WinNT because of using its in processes/hadronic/models/high_energy/src/*.cc February 2, 98 G. Cosmo (global-00-03-04) - Added -ptr option to DEC-AFS. Now sharing a unique template repository. January 29, 98 G. Cosmo (global-00-03-03) - Added template definitions in G4Allocator.cc (M.Nagamatu) - Removed -DNO_NATIVE_GENERIC_H -I$(RWINC)/rw from compile command for HP-aCC. Optimised compilation is now +O2. January 29, 98 G. Cosmo (global-00-03-02) - Tagged global-00-03-02 January 29, 98 S. Sadilov - Included new G4SYSTEMS for Win/NT platform: WIN32-VC-NICE and WIN32-G++-NICE in GNUmakefiles.architecture. Added CLHEP, RW, architecture dependant variables and variables for positional qualifiers (different between UNIX and VC). - In GNUmakefile.common and GNUmakefile used $OUT_LIB introduced in GNUmakefile.architecture as positional qualifier for creating simple-libraries and composite-library. - In GNUmakefile.common used $RWINCGPP introduced in GNUmakefiles.architecture as right path on RW includes: different compilers (g++ for dependencies and VC compiler for buiding) use different RW. January 27, 98 G. Cosmo (global-00-03-01) - Introduced G4EXEC_BUILD and G4TEMPEXEC_REPOSITORY flags for C_FRONT based compilers. These flags allow to distinguish between the template repository used for building G4 libraries and the one used to build executables. When building an executable and G4EXEC_BUILD is set, the original template repository $G4TEMPLATE_REPOSITORY used to build libraries becomes read-only $G4TEMPEXEC_REPOSITORY is used instead. January 23, 98 G. Cosmo - Added "-DNO_NATIVE_GENERIC_H -I$(RWINC)/rw" to CPPFLAGS for HP-aCC in GNUmakefile.architecture. - Removed duplicated definition of G4Allocator from g4templates.hh. January 20, 98 G. Cosmo - Modified GNUmakefile.architecture, adding -DRW_NO_STL option to CPPFLAGS and removing it from CXXFLAGS. January 19, 98 E. Tcherniaev - Removed files Hep3Vector.hh, HepRotation.hh and G4SystemofUnits.cc - Updated several classes/files to use "#include " instead of "#include "CLHEP/..."". January 15, 98 G. Cosmo - Updated GNUmakefile.architecture to support aCC A.01.06 compiler. Standardized definitions of variables related to CLHEP and RW. - Removed patches/template-definitions for HP-aCC from g4templates.hh and G4Allocator.cc. December 19, 97 G. Cosmo - (alpha03) - Created.