# Category global History

See `CONTRIBUTING.rst` for details of **required** info/format for each entry,
which **must** added in reverse chronological order (newest at the top).
It must **not** be used as a substitute for writing good git commit messages!

-------------------------------------------------------------------------------

## 2024-04-25 Pere Mato (global-V11-01-28)
- Changed Windows.h to windows.h since for MinGW always seems to be lower case, not relevant for native builds.
  _MSC_VER is only available for VC compiler, the os one is _WIN32.

## 2024-04-20 Gabriele Cosmo
- Fixed compilation error in G4PhysicsModelCatalog on Windows VC++ with
  C++20 Standard enabled.
  Based on [GitHub PR#69](https://github.com/Geant4/geant4/pull/69).

## 2024-04-04 Stephan Hageboeck
- Provide a helpful error message when GEANT4_DATA_DIR is set to an invalid
  location.

## 2023-12-21 Yoshihide Sato (global-V11-01-27)
- G4PhysicsModelCatalog.cc: added the ID for the Light-Ion QMD model.

## 2023-11-23 Gabriele Cosmo (global-V11-01-26)
- Updated tag IDs for geant4-11-02-ref-00.

## 2023-11-20 Gabriele Cosmo (global-V11-01-25)
- Updated tag IDs for geant4-11-02-cand-02.

## 2023-11-17 I. Hrivnacova (global-V11-01-24)
- Fixed memory leak in G4StatAnalysis::GetCpuClock():
  do not allocate local variable on heap.

## 2023-11-16 I. Hrivnacova (global-V11-01-23)
- Fixed memory leak in G4Type[Recursive]Mutex<T> and simplified code
  by removing unused function parameter.

## 2023-11-13 Gabriele Cosmo (global-V11-01-22)
- Updated tag IDs for geant4-11-02-cand-01.

## 2023-11-06 Gabriele Cosmo (global-V11-01-21)
- Updated tag IDs for geant4-11-02-cand-00.

## 2023-11-01 Gabriele Cosmo (global-V11-01-20)
- Fixed compilation error on macOS Apple Silicon when enabling FPE_DEBUG.
  No guarantee on the correctness of signal handling on this platform.
  Addressing problem report #2571.

## 2023-10-30 Gabriele Cosmo (global-V11-01-19)
- Updated tag IDs for geant4-11-01-ref-10.

## 2023-09-26 Vladimir Ivantchenko (global-V11-01-18)
- G4PhysicsVector, G4PhysicsFreeVector, G4PhysicsLogVector,
  G4PhysicsLinearVector - added extra method to support optional logarithmic
  search for bin in free vector needed for HP package update; use static_cast
  everywhere instead of C type conversion; use uniform class format.

## 2023-09-25 Gabriele Cosmo (global-V11-01-17)
- Updated tag IDs for geant4-11-01-ref-09.

## 2023-09-05 Makoto Asai (global-V11-01-16)
- Adding IgnoreTheIssue enum entry in G4ExceptionSeverity.hh.

## 2023-08-29 Gabriele Cosmo (global-V11-01-15)
- Updated tag IDs for geant4-11-01-ref-08.

## 2023-07-20 Gabriele Cosmo (global-V11-01-14)
- Updated tag IDs for geant4-11-01-ref-07.

## 2023-06-30 Gabriele Cosmo (global-V11-01-13)
- Updated tag IDs for geant4-11-01-ref-06.

## 2023-06-14 Ben Morgan (global-V11-01-12)
- Add `G4VERSION_REFERENCE_TAG` macro to distinguish release/development versions
  and cycle of the latter.

## 2023-05-31 Alberto Ribon (global-V11-01-11)
- G4PhysicsModelCatalog.cc: added the new INCLXX model of antiproton 
  annihilation at rest.

## 2023-05-31 Gabriele Cosmo (global-V11-01-10)
- Updated tag IDs for geant4-11-01-ref-05.

## 2023-04-30 Gabriele Cosmo (global-V11-01-09)
- Updated tag IDs for geant4-11-01-ref-04.

## 2023-04-06 Gabriele Cosmo (global-V11-01-08)
- Fixed typo in G4Backtrace class description.
  Reported in [GitHub PR#57](https://github.com/Geant4/geant4/pull/57).

## 2023-03-31 Gabriele Cosmo (global-V11-01-07)
- Updated tag IDs for geant4-11-01-ref-03.

## 2023-02-28 Gabriele Cosmo (global-V11-01-06)
- Updated tag IDs for geant4-11-01-ref-02.

## 2023-01-31 Gabriele Cosmo (global-V11-01-05)
- Removed obsolete and no longer used G4SIunits.hh header.

## 2023-01-30 Gabriele Cosmo (global-V11-01-04)
- Updated tag IDs for geant4-11-01-ref-01.

## 2023-01-09 Ben Morgan (global-V11-01-03)
- Add G4debug output stream for logging messages at lower priority than
  G4cout.

## 2022-12-20 Vladimir Ivanchenko (global-V11-01-02)
- G4DataVector - simplified inline methods in order to remove compilation
    warnings at some CMSSW platforms

## 2022-12-14 Ben Morgan (global-V11-01-01)
- Remove public interface to G4strstreambuf
  - G4strstreambuf becomes a private implementation detail of G4ios
  - Minimized G4cout/G4strstreambuf/G4coutDestination coupling
 
## 2022-12-12 Ben Morgan (global-V11-01-00)
- Remove obsolete GNUmakefile scripts

## 2022-11-29 Gabriele Cosmo (global-V11-00-33)
- Updated tag IDs for geant4-11-01-ref-00.

## 2022-11-18 Gabriele Cosmo (global-V11-00-32)
- More compilation warnings fixes for implicit type conversions.

## 2022-11-09 Gabriele Cosmo (global-V11-00-31)
- Fixed compilation warnings for implicit type conversions on macOS/XCode 14.1.

## 2022-10-31 Gabriele Cosmo (global-V11-00-30)
- Updated tag IDs for geant4-11-00-ref-09.

## 2022-10-04 Gabriele Cosmo (global-V11-00-29)
- Fixed compilation warning on Intel-icx compiler for variable set but not
  used, in G4AnalyticalPolSolver::QuarticRoots().

## 2022-09-30 Gabriele Cosmo (global-V11-00-28)
- Updated tag IDs for geant4-11-00-ref-08.

## 2022-09-22 Ben Morgan (global-V11-00-27)
- Apply patch for MinGW from [GitHub PR#51](https://github.com/Geant4/geant4/pull/51)

## 2022-08-29 Gabriele Cosmo (global-V11-00-26)
- Updated tag IDs for geant4-11-00-ref-07.

## 2022-08-04 Ben Morgan (global-V11-00-25)
- Move implementation details of G4Exception to source file.
- Remove obsolete re-declaration of G4Exception in G4Timer.

## 2022-07-03 Ben Morgan (global-V11-00-24)
- Additional clang-tidy fixes for header-only code or missed in global-V11-00-06)

## 2022-06-24 Gabriele Cosmo (global-V11-00-23)
- Updated tag IDs for geant4-11-00-ref-06 and geant4-11-01-beta-01.

## 2022-06-12 Gabriele Cosmo (global-V11-00-22)
- G4FindDataDir: fixed compilation with GNUmake build.

## 2022-06-09 Igor Semeniouk (global-V11-00-21)
- G4FindDataDir: correction for windows runtime, G4MULTITHREADED flag.
  Use the environment variable GEANT4_DATA_DIR as top data dir.

## 2022-06-07 Ben Morgan (global-V11-00-20)
- Remove dependency on TBB which is not a direct dependency of the global
  category.

## 2022-05-31 Gabriele Cosmo (global-V11-00-19)
- Commented out debug printout in G4ThreadLocalSingleton constructor.

## 2022-05-28 Gabriele Cosmo (global-V11-00-18)
- Updated tag IDs for geant4-11-00-ref-05.

## 2022-05-23 Gabriele Cosmo (global-V11-00-17)
- Corrected G4ErrorPropagatorData destructor.

## 2022-05-25 Ben Morgan (global-V11-00-16)
- Support GNUmake builds of G4FindDataDir

## 2022-05-12 Guilherme Amadio (global-V11-00-15)
- Make dataset environment variables optional.

## 2022-04-27 Gabriele Cosmo (global-V11-00-14)
- Updated tag IDs for geant4-11-00-ref-04.

## 2022-04-01 Jonas Hahnfeld (global-V11-00-13)
- Fix two typos in Bremsstrahlung.

## 2022-03-29 Gabriele Cosmo (global-V11-00-12)
- Updated tag IDs for geant4-11-00-ref-03.

## 2022-03-25 Ben Morgan (global-V11-00-11)
- Move core Tasking interfaces that only depend on PTL to global category from
  tasking category

## 2022-03-18 Ben Morgan (global-V11-00-10)
- Replace use of deprecated std::result_of with std::invoke_result_t.

## 2022-03-10 Ben Morgan (global-V11-00-09)
- Remove obsolete management/CMakeLists.txt script
- Declare G4hepgeometry dependencies as INTERFACE as the module is header-only

## 2022-03-01 Ben Morgan (global-V11-00-08)
- Revert clang-tidy pass-by-value
  - Provides no benefit for short strings, which are the case in the global use case

## 2022-02-18 Gabriele Cosmo (global-V11-00-07)
- Updated tag IDs for geant4-11-00-ref-02.

## 2022-02-24 Ben Morgan (global-V11-00-06)
- Apply set of clang-tidy modernize, readability and performance fixes.

## 2022-02-18 Ben Morgan (global-V11-00-05)
- Provide overload `G4String::operator[](int)` to workaround MSVC compiler
  error C2666.
  Addressing [Problem report #2463](https://bugzilla-geant4.kek.jp/show_bug.cgi?id=2463).

## 2022-02-08 Gabriele Cosmo (global-V11-00-04)
- Fixed compilation warnings for shadowing variables in G4String.

## 2022-01-31 Ben Morgan (global-V11-00-03)
- Replace `geant4_global_library_target` with direct file inclusion and
  call to `geant4_add_category` to define library build from source modules.

## 2022-01-31 Gabriele Cosmo (global-V11-00-02)
- Updated tag IDs for geant4-11-00-ref-01.

## 2022-01-24 Daren Sawkey (global-V11-00-01)
- Replace G4lrint with std::lrint; remove G4lint and G4rint.
  Addressing issue #116.

## 2021-12-10 Ben Morgan (global-V11-00-00)
- Change to new Markdown History format.

---

# History entries prior to 11.0

December 3, 2021 Gabriele Cosmo (global-V10-07-36)
- Updated tag IDs for geant4-11-00-ref-00.

October 30, 2021 Vladimir Ivanchenko (global-V10-07-35)
- G4PhysicsModelCatalog : extended number of EM types

October 28, 2021 Gabriele Cosmo (global-V10-07-34)
- Updated tag IDs for geant4-10-07-ref-09.

October 25, 2021 Ben Morgan (global-V10-07-33)
- Deprecate non-std::string member functions, replacing with new free
  functions in G4StrUtil namespace

October 18, 2021 Ben Morgan (global-V10-07-32)
- Remove obsolete/std::string synonym member functions from G4String:
  - hash/stlhash
  - data
  - replace
  - index
  - isNull
  - first/last
  - append/prepend
  - call operators

October 13, 2021 Alberto Ribon (global-V10-07-31)
- G4PhysicsModelCatalog : made the last changes as agreed during
  the Collaboration meeting. This version should be ready for the
  release G4 11.0

October 8, 2021 Vladimir Ivanchenko (global-V10-07-30)
- G4PhysicsOrderedFreeVector is back redirected to G4PhysicsFreeVector;
  CMS request

October 7, 2021 Vladimir Ivanchenko (global-V10-07-29)
- G4PhysicsModelCatalog : extended number of EM types

October 1, 2021 Ben Morgan (global-V10-07-28)
- Simplify G4String interfaces and implementation with C++11/17

September 30, 2021 Gabriele Cosmo (global-V10-07-27)
- Updated tag IDs for geant4-10-07-ref-08.

September 27, 2021 Vladimir Ivanchenko (global-V10-07-26)
- G4PhysicsModelCatalog : EM part is filled according to proposal
    agreed at the annual workshop

September 16, 2021 Vladimir Ivanchenko (global-V10-07-25)
- Fixed G4PhysicsVector::GetMinEnergy() and format icc file

September 10, 2021 Guilherme Amadio (global-V10-07-24)
- Optimize G4PhysicsVector::Interpolation.
     
September 8, 2021 Michel Maire (global-V10-07-23)
- G4BestUnit : modify previous feature: 
               for energy = 0, print "eV" instead of "meV"

August 31, 2021 Gabriele Cosmo (global-V10-07-22)
- Updated tag IDs for geant4-10-07-ref-07.

August 27, 2021 Vladimir Ivanchenko (global-V10-07-21)
- G4PhysicsVectorType: added enumeration of Spline type, use namespace
- G4PhysicsVector, G4PhysicsFreeVector, G4PhysicsLogVector,
  G4PhysicsLinearVector: major update - introduced new public access methods;
  removed obsolete unused methods; introduced possibility to use different
  Spline methods; do not fill second derivative vector if Spline not enabled;
  improved control on input data; reduce number of calls to min/max; attempt
  to optimise run time code G4PhysicsTable, improved use of the vector type.

August 23, 2021 Guilherme Amadio (global-V10-07-20)
- G4BackTrace: move from deprecated sigignore() to signal().

August 22, 2021 Michel Maire (global-V10-07-19)
- G4BestUnit : if value=0, do print unit symbol.

August 4, 2021 Alberto Ribon (global-V10-07-18)
- G4PhysicsModelCatalog : new version of the catalog of physics models.
  Introduced a modelID (a unique integer for each physics model, with
  close values for similar/related physics models), besides an index
  (the position in a vector) and the name (string) of the physics model.
  The main difference with respect to the previous version is that
  the three identifiers of each physics model - modelID, index and
  name - must stay constant and the same for all applications, 
  physics lists and future versions of Geant4, starting with 11.0.

July 18, 2021 Vladimir Ivanchenko (global-V10-07-17)
- G4PhysicsVector, G4PhysicsTable, G4PhysicsFreeVector - removed 
    obsolete methods SetSpline(); T_G4PhysicsFreeVector type set 
    to be default;  improved comments and printouts

June 21, 2021 Gabriele Cosmo (global-V10-07-16)
- Updated G4SIUnits and G4PhysicalConstants to include new symbols
  (minute, hour, day, year and millielectronvolt) and new constants
  (Bohr_magneton and nuclear_magneton), based on CLHEP-2.4.4.2.
- Updated tag IDs for geant4-10-07-ref-06.

June 3, 2021 Gabriele Cosmo (global-V10-07-15)
- Added protection for WIN32 in G4BackTrace.

May 27, 2021 Gabriele Cosmo (global-V10-07-14)
- Updated tag IDs for geant4-10-07-ref-05.

May 24, 2021 Vladimir Ivanchenko (global-V10-07-13)
- Removed deprecated classes: G4LPhysicsFreeVector, G4PhysicsLnVector
  and G4PhysicsOrderedFreeVector.

May 18, 2021 Ben Morgan (global-V10-07-12)
- New G4Filesystem header to support transparent use of C++ filesystem
  whether it is in std:: or std::experimental namespaces.

May 18, 2021 Jonathan Madsen (global-V10-07-11)
- G4ThreadLocalSingleton: added way to explicitly call Clear() for all
  TLS singletons.
- Reworked G4Backtrace to use fewer dynamic memory allocations when
  printing backtrace in order to avoid overflowing the signal stack.

May 7, 2021 Gabriele Cosmo (global-V10-07-10)
- Updated G4SIUnits and G4PhysicalConstants to include new commented symbols.
  (minute, hour, day, year and millielectronvolt) and new constants
  (Bohr_magneton and nuclear_magneton).

April 29, 2021 Gabriele Cosmo (global-V10-07-09)
- Updated tag IDs for geant4-10-07-ref-04.

April 28, 2021 Michel Maire (global-V10-07-08)
- G4UnitsTable: added units for Velocity and Momentum.

March 31, 2021 Gabriele Cosmo (global-V10-07-07)
- Updated tag IDs for geant4-10-07-ref-03.

March 26, 2021 Gabriele Cosmo (global-V10-07-06)
- Zero terminate buffer in G4strstreambuf destructor before flushing.
  Addressing problem report #2350.

March 15, 2021 Gabriele Cosmo (global-V10-07-05)
- G4ConvergenceTester: fixed potential thread contention likely
  responsible for crashes in ThreadSafe-Scorers example, observed in
  system testing. Some code cleanup.

March 12, 2021 Ben Morgan (global-V10-07-04)
- Modernize CMake build.

March 5, 2021 Ben Morgan (global-V10-07-03)
- Add patch from Seth Johnson to allow user query of G4PhysicsVector's
  use or not of spline interpolation.

February 25, 2021 Gabriele Cosmo (global-V10-07-02)
- Updated tag IDs for geant4-10-07-ref-02.

February 4, 2021 Vladimir Ivanchenko (global-V10-07-01)
- G4PhysicsFreeVector, G4LPhysicsFreeVector, G4PhysicsLogVector,
  G4PhysicsLinearFreeVector, G4PhysicsOrderedFreeVector - to
    each constructor added extra boolean variable making spline;
    this is needed for later removal of the SetSpline(..) method
    required forreorganisation of the code using templates
- G4LPhysicsFreeVector, G4PhysicsOrderedFreeVector - moved
    implementation to G4PhysicsFreeVector
- G4PhysicsFreeVector - added control on continues increase
    energy in the energy vector to all constructors
- G4PhysicsVector - extended warning printout

January 28, 2021 Gabriele (global-V10-07-00)
- Updated tag IDs for geant4-10-07-ref-01.

December 2, 2020 Gabriele (global-V10-06-27)
- Removed condition restricting to __x86_64__ architectures for macOS
  configuration in tls.hh.

November 21, 2020 Gabriele Cosmo (global-V10-06-26)
- Fixed compilation warnings in G4Profiler.
- Updated tag IDs for release 10.7.

November 12, 2020 Jonathan Madsen (global-V10-06-25)
- Added new G4Profiler.hh header
- Implemented new profiling routines which allow per-{run,event,track,step}
  configuration w.r.t. when to profiler, what to collect in the profiler,
  and how to label the entries.
  Also, includes user-profiling config and macros.
- Use of TIMEMORY_AUTO_TIMER is now deprecated.

October 29, 2020 Ben Morgan (global-V10-06-25)
- Always use new CMake system.

October 30, 2020 Gabriele Cosmo (global-V10-06-24)
- Updated tag IDs for geant4-10-06-ref-10.

October 20, 2020 Jonathan Madsen (global-V10-06-23)
- Added G4Backtrace.hh for printing backtraces from raised signals
- This is a more generic implementation of G4FPEDetection and can
  catch FPE issues but, by default, does not interfere with it.
- The default backtraced signals are: SIGQUIT, SIGILL, SIGABRT, SIGKILL,
  SIGBUS, SIGSEGV.
- The default signals can be overridden within user-code before and
  after the creation of the run-manager (See "Usage" section in G4Backtrace.hh)
- The default signals can be overridden via environment variable
  G4BACKTRACE.

September 30, 2020 Gabriele Cosmo (global-V10-06-22)
- Updated tag IDs for geant4-10-06-ref-09.

September 25, 2020 Vladimir Ivanchenko (global-V10-06-21)
- G4PhysicsLinearVector, G4PhysicsLogVector - fixed scale of energy; this
  problem does not affect results in general; it fix data table scale
  and may change dEdx and cross sections numerically on small level.

  September 24, 2020 Gabriele Cosmo (global-V10-06-20)
- Re-instate static pointer for 'masterG4coutDestination' in G4coutDestination
  with proper symbol exporting on Windows (necessary for MT builds).
  Restores trapping of G4cout from workers in Qt GUI.

August 31, 2020 Gabriele Cosmo (global-V10-06-19)
- Updated tag IDs for geant4-10-06-ref-08.

August 4, 2020 Daren Sawkey (global-V10-06-18)
- New G4PhysicsOrderedFreeVector(std::vector, std::vector) constructor.

July 23, 2020 Gabriele Cosmo (global-V10-06-17)
- Updated tag IDs for geant4-10-06-ref-07.

July 17, 2020 Gabriele Cosmo (global-V10-06-16)
- Updated e_SI value for electron charge in G4SIunits.h, based
  on May 2019 redefinition of SI units.
  Reference: https://www.britannica.com/science/electron-charge.

June 26, 2020 Gabriele Cosmo (global-V10-06-15)
- Updated tag IDs for geant4-10-06-ref-06.

May 31, 2020 Gabriele Cosmo (global-V10-06-14)
- Updated tag IDs for geant4-10-06-ref-05.

May 28, 2020 Ben Morgan (global-V10-06-13)
- management/sources.cmake: Add location of generated header to
  public include directories of G4globman.

May 20, 2020 Gabriele Cosmo (global-V10-06-12)
- Minor c++11 revision in HepNumerics module.
- Re-applied clang-format after minor rules adaptations.

May 18, 2020 Gabriele Cosmo (global-V10-06-11)
- Removed unnecessary use of deprecated G4USE_STD11 flag.
  Also indicated in GitHub PR#13.

May 10, 2020 Jonathan Madsen (global-V10-06-10)
- Applied clang-format to G4global category

May 5, 2020 Gabriele Cosmo (global-V10-06-09)
- C++11 revision in 'management' module and some code cleanup/formatting.

April 29, 2020 Gabriele Cosmo (global-V10-06-08)
- Updated tag IDs for geant4-10-06-ref-04.

March 31, 2020 Ben Morgan (global-V10-06-07)
- G4UnitsTable: added inheriting constructors for std::vector.

March 31, 2020 Gabriele Cosmo (global-V10-06-06)
- Updated tag IDs for geant4-10-06-ref-03.

February 29, 2020 Gabriele Cosmo (global-V10-06-05)
- Updated tag IDs for geant4-10-06-ref-02.

February 03, 2020 Vladimir Ivanchenko (global-V10-06-04)
- G4PhysicsLinearVector, G4PhysicsLogVector - more accurate
  checks in class constructors - fixed Coverity warning

January 30, 2020 Gabriele Cosmo (global-V10-06-03)
- Fixed symbol exporting problem in G4coutDestination on Windows; define
  'masterG4coutDestination' static pointer as a normal pointer.
  Addressing problem report #2217.

January 16, 2020 Vladimir Ivanchenko (global-V10-06-02)
- G4Physics2DVector - extend number of characters in the table dump
  from 5 to 8; use similar algorithm for bin selection as in 1d vector;
  if any dimension is less than 2 through G4Exception
- G4PhysicsVector - use the same code for interpolation for all types
  of PhysicsVector; removed obsolete unused methods; maximally use
  const variables; preserve precision of printout;
- G4PhysicsLinearVector - added checks on vector
  length: if it is less than 2 through G4Exception
- G4PhysicsLogVector - added checks on vector length: if it is less
  than 3 through G4Exception

January 14, 2020 Gabriele Cosmo (global-V10-06-01)
- Added windefs.hh header, including protections for double definition
  of global symbols from Windows Kits code.
- Updated tag IDs for geant4-10-06-ref-01.

December 09, 2019 Ben Morgan (global-V10-06-00)
- Cleanup CMake build, removing obsolete granular library options and
  explicit include_directories.

December 03, 2019 Gabriele Cosmo (global-V10-05-26)
- Updated tag IDs for release 10.6.

November 22, 2019 Jonathan Madsen (global-V10-05-25)
- Updated G4TiMemory.hh to support new macros
- Updated templates.hh to use move semantics in consume_parameters
  - Eliminates warning about unnecessary copy for some compilers
- Updated sources.cmake to use ${timemory_LIBRARIES} instead of
  difficult to type ${TiMemory_LIBRARIES}

November 19, 2019 Gabriele Cosmo (global-V10-05-24)
- Updated tag IDs for geant4-10-06-cand-01.

November 15, 2019 Gabriele Cosmo (global-V10-05-23)
- Fixed implicit type conversions in G4String internal methods.

November 12, 2019 Gabriele Cosmo (global-V10-05-22)
- Updated tag IDs for geant4-10-06-cand-00.

November 08, 2019 Evgueni Tcherniaev (global-V10-05-21)
- G4SimplexDownhill: fixed minor Coverity defect

October 30, 2019 Gabriele Cosmo (global-V10-05-20)
- Updated date and tag-ID for geant4-10-05-ref-10.

October 25, 2019 Gabriele Cosmo (global-V10-05-19)
- Added 'External' (physical) volume type to geomdefs.hh.

September 30, 2019 Gabriele Cosmo (global-V10-05-18)
- Updated date and tag-ID for geant4-10-05-ref-09.

September 12, 2019 Evgueni Tcherniaev (global-V10-05-17)
- Added HEPRandom/include/G4QuickRand.hh

August 31, 2019 Gabriele Cosmo (global-V10-05-16)
- Updated date and tag-ID for geant4-10-05-ref-08.

August 2, 2019 Makoto Asain (global-V10-05-15)
- G4PhysicsVector::insertAt() : add protection against idx > entries().
  Addressing to Bug report #2182.

July 21, 2019 Mihaly Novak (global-V10-05-14)
- G4PhysicsVector: remove temporary codes used during the optimisation of the
  physics log-vector data access

July 18, 2019 Mihaly Novak (global-V10-05-13)
- G4PhysicsVector: further optimisation of the LogVectorValue data access method
  (all conditional branchings are eliminated by increased robustness of the alg.)

July 17, 2019 Mihaly Novak (global-V10-05-12)
- G4PhysicsVector: add optimised LogVectorValue method(special Value method only
  for log-vectors) to G4PhysicsVector
- G4PhysicsVector, G4PhysicsLogVector, G4PhysicsLinearVector, G4PhysicsVector:
  change dBin member to invdBin(=1/dBin) to get rid of run-time divisions

July 15, 2019 Gabriele Cosmo (global-V10-05-11)
- Updated date and tag-ID for geant4-10-05-ref-07.

June 17, 2019 Gabriele Cosmo (global-V10-05-10)
- Updated date and tag-ID for geant4-10-05-ref-06.

May 28, 2019 Gabriele Cosmo (global-V10-05-09)
- Updated date and tag-ID for geant4-10-05-ref-05.

May 20, 2019 Gabriele Cosmo (global-V10-05-08)
- Defined default move constructor and move assignment operator for G4String
  and G4DataVector.

May 16, 2019 Gabriele Cosmo (global-V10-05-07)
- Defaulted copy constructor for G4StatDouble, to fix compilation warnings
  on gcc-9.1.

April 27, 2019 Gabriele Cosmo (global-V10-05-06)
- Updated date and tag-ID for geant4-10-05-ref-04.

April 25, 2019 Ben Morgan (global-V10-05-05)
- DEV-250: Add G4GlobalConfig.hh generated header to hold global, always
  required, preprocessor symbols instead of relying on -D flags.
  - G4USE_STD11
  - G4MULTITHREADED
  - G4_STORE_TRAJECTORY
  - G4VERBOSE
  - GEANT4_USE_TIMEMORY
- Add inclusion of G4GlobalConfig.hh in G4Types.hh, tls.hh and
  G4TiMemory.hh so that global and other categories pick up
  the definitions transparently. Protect inclusion so that
  only CMake builds use this header
- Update other headers/srcs to include G4Types/G4Threading if
  they use G4MULTITHREADED
- Uses cmake-V10-05-02

March 29, 2019 Gabriele Cosmo (global-V10-05-04)
- Updated date and tag-ID for geant4-10-05-ref-03.

March 17, 2019 Mihaly Novak (global-V10-05-03)
- G4PhysicsVector: adding additional public Value() method option to propagate
  down the known log-energy value (can avoid the log call in case of log-vector)
- templates: new LOG_EKIN_MIN constant as value taken incase of zero kin-energy.

March 13, 2019 Gabriele Cosmo (global-V10-05-02)
- Enable FPE detection on MacOS with clang.
  Addressing problem report #2147.

February 28, 2019 Gabriele Cosmo
- Updated date and tag-ID for geant4-10-05-ref-02.

January 31, 2019 Ivana Hrivnacova (global-V10-05-01)
- Merged GitHub PR #4: all Boolean operators now return G4bool.

January 30, 2019 Gabriele Cosmo (global-V10-05-00)
- Updated date and tag-ID for geant4-10-05-ref-01.

November 26, 2018 Gabriele Cosmo (global-V10-04-31)
- G4Cache, G4CacheDetails: minor code cleanup and formatting.

November 16, 2018 Gabriele Cosmo (global-V10-04-30)
- G4OrderedTable and G4DataVector: fixed store/retrieve of binary
  data format.
- G4AllocatorPool: moved copy-ctr and operator=() to public section.
- Changed ID for release 10.5.
- Fixed unit tests.

November 13, 2018 Jonathan Madsen (global-V10-04-29)
- Fixes to G4ConvergenceTester to ensure there are no divide-by-zeros
  when calculating the stat history

November 9, 2018 Gabriele Cosmo (global-V10-04-28)
- G4ConvergenceTester: fixed printout typos.

November 8, 2018 Gabriele Cosmo (global-V10-04-27)
- G4Threading: replaced 'typedef' statements with C++11 'using' correspondents.

November 1, 2018 Gabriele Cosmo (global-V10-04-26)
- Fixed inclusion recursion in G4EnvironmentUtils header.

October 30, 2018 Gabriele Cosmo (global-V10-04-25)
- Renamed G4Utility.hh to G4EnvironmentUtils.hh and moved one of the
  functions to templates.hh.

October 25, 2018 Jonathan Madsen (global-V10-04-24)
- added operator += (G4double) to G4ConvergenceTester
- added G4StatAnalysis.{hh,icc} class
  - this class is a lightweight statistics class that calculates the
    mean, FOM, relative error, standard deviation, variance, coefficient of
    variation, efficiency, r2eff, r2int (corr-coeff-of-interp/coeff-of-determ)
- G4Utility.hh - convenient environment converters and variadic template
  to consume unused parameters and variables

October 12, 2018 Gabriele Cosmo (global-V10-04-23, 22)
- Moved back main G4Exception functions to source to reduce dependencies.
- Reset singleton pointer in G4StateManager destructor; addressing problem
  report #2094. Minor code cleanup.

September 14, 2018 Vladimir Ivanchenko (global-V10-04-21)
- G4PhysicsVector: similar fix as in previous tag of the problem #2087

September 10, 2018 Mihaly Novak (global-V10-04-20)
- G4Physics2DVector: fixed possible out-of-bound access in the FindBin method.
  problem report #2087

August 14, 2018 Gabriele Cosmo (global-V10-04-19)
- G4Timer: fixed CPU number printout in operator<<(). Use G4 types.
  Code formatting.

June 6, 2018 Jonathan Madsen (global-V10-04-18)
- Added G4TiMemory.hh which defines an dummy initializer and empty macros when
  TiMemory is disabled and includes the TiMemory headers and defines an
  initializer when built with TiMemory support
- Removed "#define times ostimes" from G4Timer.hh and G4SliceTimer.hh
  - conflicts with TiMemory and this is left over from a conflict that
    no longer exists (see global-01-00-03 from 1999)
  - Removed corresponding "#undef times" from G4Timer.cc and G4SliceTimer.cc
- Added TiMemory libraries and includes to sources.cmake

May 18, 2018 Gabriele Cosmo (global-V10-04-17)
- Moved G4Exception functions to inline and extracted banner front/end
  strings for use in Qt parsing.

May 17, 2018 Jonathan Madsen (global-V10-04-16)
- Removed G4GLOB_DLL from G4CacheReference<G4double>

May 17, 2018 Jonathan Madsen (global-V10-04-15)
- Updated "thread-local-static-var" model to
  "function-returning-thread-local-static-reference" model
  which fixes Windows DLL + MT

March 23, 2018 Mihaly Novak (global-V10-04-14)
- Increased accuracy of G4Pow::A13 in the most critical [1/4,4] interval.

March 22, 2018 Gabriele Cosmo (global-V10-04-13)
- Avoid exporting symbols for Windows DLLs in multi-threaded builds.

March 21, 2018 Gabriele Cosmo (global-V10-04-12)
- Moved test80 to unit tests in HEPRandom/test module and renamed testRngMT.

March 9, 2018 Gabriele Cosmo (global-V10-04-11)
- Removed obsolete MT wrappers for random numbers, no longer necessary.
  Simplified definition of G4Random types in Randomize.hh accordingly.
- Full support for thread-local storage on clang (also MacOS clang) now
  enabled; updated tls.hh definitions accordingly; removed use of the
  G4USE_STD11 flag, now always enabled by default.
- Minor code cleanup in G4UniformRandPool.

March 7, 2018 Jonathan Madsen (global-V10-04-10)
- Replaced erroneous "id_type" return type for G4DummyThread::get_id()
  with correct "id" type.

March 6, 2018 Jonathan Madsen (global-V10-04-09)
- updated G4cout_p and G4cerr_p to point to std::cout and std::cerr before
  and after library load. G4cout before G4RunManager creation has been seen to
  fail on Windows
- Improvement to G4AutoLock in non-MT mode + bug fix (void try_lock() ->
  bool try_lock()) plus error handling within G4AutoLock if static mutex
  is attempted to be used at application cleanup (previously handled in
  G4Cache)
- using atomics in G4Cache
- Define G4ThisThread, G4Promise, G4Future, and G4SharedFuture in G4Threading
  the promises and futures are not currently used except for in upcoming
  RNG testing but will be used in future
- G4TypeMutex and G4RecursiveTypeMutex now accept an index, e.g.
  G4AutoLock l(G4TypeMutex<G4SomeClass>(0)) and
  G4AutoLock l(G4TypeMutex<G4SomeClass>(1))
- G4DummyThread typedef std::thread::id as id instead of id_type

March 6, 2018 Gabriele Cosmo (global-V10-04-08)
- Use thread_local keyword on Windows, instead of __declspec(thread) in tls.hh.
- Removed no longer necessary windefs.hh header.

February 21, 2018 Jonathan Madsen (global-V10-04-07)
- Overloaded G4AutoLock member functions in serial mode to not
  execute locking/unlocking
- Fixed std::system_error in G4Cache where destructor tries
  to use a static G4Mutex that has already been deleted by cleanup
  which is a non-critical error related to a singleton memory leak
- Returned some functionality in G4Threading to dummy types such
  as G4MUTEXLOCK and G4MUTEXUNLOCK do not actually lock
  and G4Thread is a dummy thread that executes upon construction

February 19, 2018 Jonathan Madsen (global-V10-04-06)
- Added G4TypeMutex<T> and G4TypeRecursiveMutex<T> function to threading
  for safely obtaining a static mutex that is unique to the template type T
- Replaced static G4Mutex in G4Cache<T> with calls to G4TypeMutex<G4Cache<T>>
  function calls to safely initialize mutexes on Windows

February 14, 2018 Jonathan Madsen (global-V10-04-05)
- G4THREADSLEEP had an extra space before paramter field rendering the
  macro invalid. This was fixed
- Sequential clang builds were emitting -Wunused-private-field warning
  in G4MTBarrier. Modified G4CONDITION macros to fix this

February 13, 2018 Jonathan Madsen (global-V10-04-04)
- Simplified G4Threading by not ifdef'ing out G4Mutex
  It was determined the average time to lock and unlock a mutex in
  single-thread mode is ~5 nanoseconds in release mode. Therefore, it
  was determined the mutex locking is not a concern for performance in
  non-MT mode. This fixes issues with G4Mutex and G4AutoLock in
  global-V10-04-03
- Extended G4TemplateAutoLock to take advantage of the features
  std::unique_lock offers
- migrated G4Timer real (wall) time to use std::chrono::high_precision_clock
  from C++11

February 12, 2018 Jonathan Madsen (global-V10-04-03)
- G4Threading - replaced POSIX threading with C++11 threading
  - std::condition_variable
  - std::mutex + std::recursive_mutex
  - std::thread
  - many of the former macros are now dummy macros (e.g. G4MUTEXINIT,
    G4MUTEX_INITIALIZER, etc.)
  - G4GetPidId() -> uses std::this_thread::get_id()
  - G4GetNumberOfCores() -> uses std::thread::hardware_concurrency()
  - Updated pin affinity
  - Removed G4THREADSELF (not used, no C++11 platform-independent equivalent)
- G4AutoLock is now a thin wrapper around std::unique_lock providing previous
  functionality + more features (e.g. try_lock, try_lock_until, etc.)
- Added G4RecursiveAutoLock for recursive mutexes
- Expanded DEFINED_PPC and DEFINED_INTEL in G4FPEDetection (warning in GCC 7+)
- G4MTBarrier: removed WIN32 specifics, updated G4CONDITIONWAIT to use
  G4AutoLock (std::unique_lock) instead of G4Mutex, removed G4MUTEX_INITIALIZER
  from constructor

February 12, 2018 G.Cosmo (global-V10-04-02)
- G4StateManager: move static method SetVerboseLevel() to be non inline.

February 9, 2018 M.Asai (global-V10-04-01)
- G4MTcoutDestination.cc blocks G4cout from worker threads while spplication
  is in G4State_Init instead of G4State_Idle.
- G4StateManager has a new method to set verbosity and print the state change.

December 19, 2017 G.Cosmo (global-V10-04-00)
- Fixed self-consistency in G4ReferenceCountedHandle header (missing #include).
  Added missing #ifdef guard in G4CacheDetails header; code formatting.
  Thanks to Raphael Isemann for reporting these.

October 20, 2017 E.Tcherniaev (global-V10-03-11)
- Use more performant G.Marsaglia (1972) algorithm for G4RandomDirection.
  Thanks to Kostas Savvidy for the suggestion.
- Updated unit test G4RandomDirectionTest.

July 24, 2017 E.Tcherniaev (global-V10-03-10)
- Added G4RandomPointOnEllipsoid() and G4RandomPointOnEllipse() to functions
  collection in G4RandomTools.hh.

July 20, 2017 E.Tcherniaev (global-V10-03-09)
- Added G4RandomRadiusInRing() and G4RandomPointInEllipse() to functions
  collection in G4RandomTools.hh.

June 21, 2017 G.Cosmo      (global-V10-03-08)
- Corrected TLS setup in tls.hh for gcc compiler.

April 20, 2017 G.Cosmo     (global-V10-03-07)
- Removed obsolete internal definition of abs() in templates.hh.
- Code cleanup/formatting in recent G4cout* classes.

April 18, 2017 A.Dotti     (global-V10-03-06)
- Fixed WIN compilation error.

April 18, 2017 A.Dotti     (global-V10-03-05)
- Fixed compiler error for gcc < 5.
- Fixed compilation warning on Mac OS  10.11 clang-8.

April 18, 2017 A.Dotti     (global-V10-03-04)
- New structure for G4coutDestination functionality with division
  between sink and filter.

April 6, 2017 E.Tcherniaev (global-V10-03-03)
- Added function G4RandomDirection(G4double cosTheta) to G4RandomDirection.hh.
  Addressing enhancement request #1961.

March 14, 2017 G.Cosmo (global-V10-03-02)
- Fix in destructor of G4ThreadLocalSingleton to destroy mutex as last
  action. Fixes contention reported by Valgrind/DRD.

March 13, 2017 G.Cosmo (global-V10-03-01)
- G4TWorkspacePool: implemented CleanUpAndDestroyAllWorkspaces(),
  and Recycle() to be called by worker threads.

December 19, 2016 G.Cosmo (global-V10-03-00)
- Removed obsolete utility class G4SubString used internally in G4String,
  as no longer necessary and also including unnecessary and buggy operators.
  Addressing problem report #1864.

November 16, 2016 G.Cosmo (global-V10-02-33)
- Fixed compilation warning on MacOS Sierra in MT mode in function
  G4Threading::G4GetPidId().

October 21, 2016 A.Dotti (global-V10-02-31, -32)
- To avoid confusion rename method to:
  G4Threading::GetNumberOfRunningWorkerThreads()

October 21, 2016 G.Cosmo (global-V10-02-30)
- Made initialisation of G4TWorkspacePool thread-local data to be inline
  along with generic template type.
  Fixing compilation/linking errors on clang-3.9 and XCode-8 on MacOS.

October 17, 2016 G.Cosmo (global-V10-02-29)
- Moved inclusion of <atomic> within G4MULTITHREADED guard in G4Threading.cc

October 11, 2016 A.Dotti (global-V10-02-28)
- Added G4Threading::GetNumberOfActiveWorkerThreads() function.

September 26, 2016 G.Cosmo (global-V10-02-27)
- Added kilovolt/m and megavolt/m to G4UnitsTable for electric field.
  Addressing enhancement request #1891.

September 7, 2016 M.Asai (global-V10-02-26)
- G4StatDouble: Additional constructor.

September 6, 2016 M.Asai (global-V10-02-25)
- G4StatDouble: Added = and += operators.

August 31, 2016 V.Ivanchenko (global-V10-02-24)
- G4StatDouble: fixed computation of RMS - was completely wrong.

August 18, 2016 G.Cosmo (global-V10-02-23)
- G4UnitsTable: added IsUnitDefined() method, checking existance of a unit
  in the table. Addressing problem report #1880.

August 15, 2016 V.Ivanchenko (global-V10-02-22)
- G4PhysicsVector, G4PhysicsTable and derived classes: general cleanup.
  Updated comments; removed duplicate methods; more correct names for some
  variables; adoption of c++11 keywords.
  Removed .icc files for G4LPhysicsFreeVector and G4PhysicsOrderedFreeVector.

August 12, 2016 G.Cosmo (global-V10-02-21)
- G4UnitsTable: use 'hep_pascal' instead of 'pascal' to avoid potential
  symbol conflicts on Windows.

July 29, 2016 M.Asai (global-V10-02-20)
- Fix G4UnitDefinition to be properly shared by all threads.
  Addressed to Bug report #1869.

July 21 and 22, 2016 M.Asai (global-V10-02-16, -17, -18 and -19)
- Fix G4UnitsTable to be properly shared by all threads.
  Addressed to Bug report #1869.

June 3, 2016 G.Cosmo (global-V10-02-15)
- Enabled new units 'us' and 'ps' in G4SystemOfUnits.hh.
  Now requiring CLHEP-2.3.3.0.
- Updated version ID for 10.3-Beta.

May 2, 2016 G.Cosmo (global-V10-02-14)
- Added 'us' and 'ps' units symbols for microsend and picosecond
  respectively to G4UnitsTable. (M.Maire)
  Commented out in G4SystemOfUnits.hh, pending installation of new
  external CLHEP library.
- Converted all units anc constants from "static const" to "static constexpr".
- Coworks with tag "externals-V10-02-08".

April 25, 2016 G.Cosmo (global-V10-02-13)
- Added check for support of atomics for clang compiler in HEPRandom wrappers.

April 14, 2016 G.Cosmo (global-V10-02-12)
- Define G4GeometryTolerance singleton instance pointer as tread-local
  to get rid of spurious race conflicts at initialisation.

March 30, 2016 G.Cosmo (global-V10-02-11)
- Added MixMax in unit tests for HepRandom.

March 22, 2016 A.Dotti (global-V10-02-10)
- Fixing compilation of unit test for HEPRandom. Only test
  subdirectory touched to port to new G4 interfaces

March 16, 2016 G.Cosmo (global-V10-02-09)
- Improved algorithm for G4RandomDirection (E.Tcherniaev).
- Turn warnings to fatal exceptions in G4UnitsTable for non existing
  units or categories in the table. Addressing problem report #1843.

February 17, 1016 A.Dotti (global-V10-02-08, 07, 06, 05)
- Fixed sequential build and Windows builds for G4MTBarrier class.

February 16, 2016 A.Dotti (global-V10-02-04)
- Fixed typo CONDTIONBROADCAST for sequential mode.
- Removed default move constructor to prevent compilation errors on Windows.

February 16, 2016 A.Dotti (global-V10-02-03)
- Introduced new utility class G4MTBarrier implementing a synchronization
  point between threads.
- Corrected typo for macro CONDITIONBROADCAST.

January 28, 2016 A.Dotti (global-V10-02-02)
- Changed exception code in G4TWorkspacePool from G4TWorkspacePool
  to "WorkspaceNN".

December 17, 2015 G.Cosmo (global-V10-02-01)
- Corrected conditions for proper treatment of gcc-5 in tls.hh and
  G4Threading.hh.

December 10, 2015 G.Cosmo (global-V10-02-00)
- Removed unused and buggy operator=(const G4String&) in G4SubString.

November 5, 2015 G.Cosmo (global-V10-01-25)
- Enabled units liter, L, dL, cL, mL in G4SystemOfUnits.hh and G4UnitsTable.
  Requires new CLHEP version 2.3.1.0.
- Updated dates and tag-ID for release 10.2.

November 4, 2015 A.Dotti (global-V10-01-24)
- Coverity fix in G4UniformRandPool.

October 21, 2015 V.Ivantchenko (global-V10-01-23)
- G4PhysicsVector, G4Physics2DVector, G4PhysicsOrderedFreeVector:
  use std::lower_bound instead of old do/while loops according to
  proposal of K.Genser (FNAL); also minor cleanup of the code.

October 16, 2015 V.Ivantchenko (global-V10-01-22)
- G4Pow: added protections against zero value of argument of methods powN(),
  powA() and A13(). Minor cleanup.

September 18, 2015 J.Allison (global-V10-01-21)
- Added string length check in G4String::operator==.

August 28, 2015 G.Cosmo (global-V10-01-20)
- Tune radial tolerance to same value as for Cartesian in G4GeometryTolerance.

August 21, 2015 J.Allison
- Added 'inline' specification to functions in G4String.icc.

August 21, 2015 G.Cosmo (global-V10-01-19)
- Temporarly commented out changes in G4SystemOfUnits.hh and G4UnitsTable,
  pending new release of CLHEP for the added units.

August 19, 2015 M.Maire (global-V10-01-18)
- G4SystemOfUnits.hh : keep only liter, L, dL, cL, mL
- Updated G4SIunits.hh and G4UnitsTable.

August 10, 2015 M.Maire
- G4SystemOfUnits.hh : add dm, dm2, dm3, liter
- Update G4SIunits.hh

August 12, 2015 G.Cosmo (global-V10-01-17)
- Explicit settings for Intel-icc compiler in tls.hh.
- Added missing inclusion of <assert.h> in G4UniformRandPool header.

August 10, 2015 G.Cosmo (global-V10-01-16)
- Force use of G4MT wrappers for Intel-icc compiler for random numbers.
  Temporary solution, pending full migration to C++11 for CLHEP classes.

June 26, 2015 A.Dotti (global-V10-01-15)
- Coverity fix in G4UniformRandPool and bug fixing

June 12, 2015 A.Dotti (global-V10-01-14)
- Fix bug in G4CacheReference::Destroy method
- Modify behavior of G4Cache to identify internal
  inconsistencies. An exception is thrown

May 27, 2015 J.Allison (global-V10-01-13)
- Define G4THREADSLEEP(tick) macro in G4Threading.hh also for sequential
  builds.

May 26, 2015 G.Cosmo (global-V10-01-12)
- Corrected logic for use of TLS on clang compiler for the Random module.

May 22, 2015 G.Cosmo (global-V10-01-11)
- Added inclusion of <unistd.h> in G4Threading.hh for self-consistency
  with the call to sleep().

May 18, 2015 A.Dotti (global-V10-01-10)
- Adding copy constructor and assignement operator for G4Cache
  Addressing issue #1739

May 13, 2015 G.Cosmo (global-V10-01-09)
- Added guard against potential loop in G4RandomTools::G4LambertianRand().

May 5, 2015 A.Dotti (global-V10-01-08)
- Introduced IsMasterThread() function as suggested by J. Allison.

April 26, 2015 V.Ivantchenko
- G4StatDouble: return RMS 0 instead of -1 in the case the number
  of entries is below 2 (fixes arithmetic exceptions in examples for
  run with 1 event only).

April 9, 2015 A.Dotti (global-V10-01-07)
- Fix testRandPool for sequential builds

April 8, 2015 G.Cosmo (global-V10-01-06)
- Some code cleanup/formatting in G4UniformRandPool.
  Corrected signature of destroy_pool_align() for Windows to fix
  compilation errors.
- Corrected GNUmakefile in HepRandom unit tests.

April 8, 2015 A.Dotti (global-V10-01-05)
- Fixed compilation error on Windows.

April 8, 2015 A.Dotti (global-V10-01-04)
- First implementation of G4UniformRandPool for serial generation of
  uniform random numbers.
  Note: feature not actived yet.

March 27, 2015 G.Cosmo (global-V10-01-03)
- Added "g/mole" Molar mass definition to G4UnitsTable.

February 20, 2015 G.Cosmo (global-V10-01-02)
- Added type-info information to G4Allocator to aid debugging.

January 12, 2015 G.Cosmo (global-V10-01-01)
- Define G4THREADSLEEP(tick) macro in G4Threading.hh.

December 10, 2014 G.Cosmo (global-V10-01-00)
- Define support for c++11 thread_local keyword on Intel-icc compiler
  version 15.

November 18, 2014 G.Cosmo (global-V10-00-44)
- G4FPEDetection.hh: added call to 'sigfillset' to clear any signals
  before any use of sigset_t in InvalidOperationDetection() for both
  MacOS and Linux, as suggested in specifications.

November 17, 2014 M.Kelsey
- G4FPEDetection.hh: restrict FPE trapping to GCC only, excluding CLang.
  Addresses problem with Qt generating an apparent FPE deep inside its
  code with MacOSX CLang builds.

November 7, 2014 G.Cosmo (global-V10-00-43/42)
- Coherent use of 'thread_local' keyword for c++11, when supported.
- Updated dates and tag-ID for release 10.1.

November 6, 2014 V.Ivantchenko
- G4StatDouble: corrected use 'const' interface for Add() method.

November 5, 2014 A.Dotti (global-V10-00-41)
- Added missing G4GLOB_DLL specification for DLL import/export to
  G4CacheDetails specialization of cache reference for double.

October 24, 2014 J.Apostolakis, A.Dotti (global-V10-00-39,-40)
- Adding template class G4TWorkspacePool.

October 24, 2014 A.Dotti (global-V10-00-38)
- Introduced G4Threading enum to hold thread IDs constants.
- G4MTcoutDestination now supports special non-worker threads for
  which the ID makes no sense.

October 16, 2014 A.Dotti (global-V10-00-37)
- Fixed G4ThreadLocalSingleton destructor.

October 16, 2014 A.Dotti (global-V10-00-36)
- Introduced G4MUTEXDESTROY macro.

October 9, 2014 A.Dotti (global-V10-00-35)
- Adding methods G4MTcoutDestination::GetPrefixString() and
  G4MTcoutDestination::GetFullPrefixString() that return the
  thread cout identification prefix respectively without and
  with thread ID. Requested by visualization.

September 23, 2014 G.Cosmo (global-V10-00-34)
- Use G4Exp, G4Log and G4Pow to speedup G4JTPolynomialSolver.
- Updated dates and tag-ID.

August 29, 2014 A.Dotti (global-V10-00-33)
- Coverity fix #58649.

August 19, 2014 M.Asai (global-V10-00-32)
- Recover G4PhysicsModelCatalog::Destroy() that has slipped out
  from previous tag.

August 19, 2014 K.Genser (global-V10-00-31)
- G4PhysicsModelCatalog: made it more const; hide operator= and copy c'tor.
  Co-works with tag "track-V10-00-04"

August 5, 2014 V.Ivanchenko (global-V10-00-30)
- G4PhysicsModelCatalog: make destructor public in order delete the class
  at exit.
- G4Pow: fixed destruction.

August 5, 2014 V.Ivanchenko (global-V10-00-29)
- G4Pow: make destructor public in order delete the class at exit.

July 21, 2014 V.Ivanchenko (global-V10-00-28)
- G4PhysicsVector: removed G4Allocator.
- G4PhysicsModelCatalog: added destruction of catalog.

July 14, 2014 G.Cosmo (global-V10-00-27)
- Added symbol to exclusion list in windefs.h.

July 1, 2014 A.Dotti (global-V10-00-26)
- Added std::flush to receiving of G4MTcoutDestination.
  Addressing problem report #1644.

June 13, 2014 A.Dotti (global-V10-00-25)
- Bug fix in G4Threading::IsMultiThreadedApplication function
  for sequential mode.

June 12, 2014 A.Dotti (global-V10-00-23,global-V10-00-24)
- Added forward of cout and cerr in MT to master G4coutDestination
  if setup in client derived classes. To be used by special
  sessions (e.g. GUI) that want to intercept thread cout/cerr.

May 21, 2014 G.Cosmo (global-V10-00-22)
- Correction in G4Exp::G4Expf() to remove 2nd order term contribution
  repeated twice by mistake. Correction included in VDT 0.3.7 library,
  kindly contributed by D.Piparo (CERN).

May 6, 2014 G.Cosmo (global-V10-00-21)
- Temporarly set G4ThreadLocalStatic to "static __thread" in tls.hh for
  platforms supporting TLS (overcomes limitation in latest GCC compiler).
- Updated version and date for development.

May 5, 2014 V.Ivantchenko (global-V10-00-20)
- Moved G4PhysicsVector::Value(energy,idx) from inline back to source.
- G4Physics2DVector::Retrieve(): added extra protection to fix
  Coverity reports in classes which are using 2-D vector.

April 24, 2014 G.Cosmo (global-V10-00-19, global-V10-00-18)
- Added protection for clang on MT with c++11, as not yet supporting
  'thread_local' keyword on MacOS (!). Added protection in all G4MTRandom*
  classes.
- More rationalisation of definitions in tls.hh.

April 24, 2014 G.Cosmo (global-V10-00-17)
- Rationalised definitions in tls.hh and corrected use of 'thread_local'
  keyword to conform to Standard.

April 11, 2014 A.Dotti (global-V10-00-16)
- New utility function G4Threading::IsMultithreadedApplication()
  and G4Threding::SetMultithreadedApplication(bool) used to
  specify which type of kernel is instantiated indipendently by
  build type (e.g. to distinghuish application migrated to MT or
  still using sequential run manager)

April 11, 2014 G.Cosmo (global-V10-00-15)
- Move G4PhysicsVector::Value(energy,idx) to inline.

April 10, 2014 G.Cosmo (global-V10-00-14)
- Get rid of deprecated 'register' storage class specifier in source files.

April 8, 2014 G.Cosmo (global-V10-00-13)
- Define G4ThreadLocal to be std::thread_local in case C++11 standard is
  used (temporarly enabled only on GNUMake system for testing, through use
  of environment variable G4USE_STD11); directly adopt CLHEP classes in such
  a case instead of G4MT* wrappers.

March 27, 2014 G.Cosmo (global-V10-00-12)
- Fixed signature for call to G4Exception in G4Threading.cc.

March 26, 2014 G.Cosmo (global-V10-00-11)
- Minor refinements to G4Poisson, based on suggestions by K.Genser/FNAL.

March 26, 2014 G.Cosmo (global-V10-00-10)
- Minor code cleanup.

March 25, 2014 A.Dotti (global-V10-00-08,global-V10-00-09)
- Introduce G4SetPinAffinity function (available only for LINUX):
  "locks" a pthread to the given CPU index. This will be used by run
  category as an option to improve performance on high-core counts CPUs.

March 16, 2014 M.Asai (global-V10-00-07)
- G4MTcoutDestination : by default ignores the printout during
  the initialization of each thread, as they are identical to
  each other and thus redundant.

March 13, 2014 G.Cosmo (global-V10-00-06)
- Fix in G4SimplexDownhill header to proper define header guard.

February 7, 2014 V.Ivantchenko (global-V10-00-05)
- G4Physics2DVector::Retrieve(): fixed Coverity report for "taited scalar".
- Updated date and tag-ID for geant4-10-00-ref-02.

February 5, 2014 T.Koi         (global-V10-00-04)
- Added protections to avoid core dumps caused by division by zero
  and other minor updates in G4ConvergenceTester.

January 23, 2014 G.Cosmo       (global-V10-00-03)
- Protected __attribute__ calls in G4ios.cc from use in WIN32.

January 13, 2014 A. Dotti      (global-V10-00-02)
- Call G4iosInitialization/G4iosFinalization with functions marked
  __attribute__((destructor)) and __attribute__((destructor)) to
  guarantee G4cout/G4cerr are initialized correctly before main
  function

January 14, 2014 V.Ivantchenko (global-V10-00-01)
- G4PhysicsVector: small performance optimisation; division by 6 substituted
  by multiplication of 1/6 constant.

December 17, 2013 G.Cosmo      (global-V10-00-00)
- Explicitly check the upper bound of 'numberOfYNodes' in
  G4Physics2DVector::Retrieve() (read from file), to fix defect
  reported by Coverity (L.Pandola).
- Updated date and tag-ID for geant4-10-00-ref-01.

November 20, 2013 A.Dotti      (global-V09-06-82)
- Patched G4HepRandom to create default engine if G4Random::setTheSeed
  is called at beginning of job (allowed in SEQ).

November 20, 2013 G.Cosmo      (global-V09-06-81)
- Patched definition of G4MUTEXINIT() for Windows in G4Threading.hh
  to allow for compilation.

October 30, 2013 G.Cosmo       (global-V09-06-80)
- Moved G4Poisson to inline on suggestion by K.Genser.
- Updated dates and tag-ID for release 10.0.

October 30, 2013 A.Dotti       (global-V09-06-79)
- Corrected compilation warning for non-used parameter in
  G4ThreadLocalSingleton class.
- Fix for WIN32/VC9 compilation errors for G4Cache.

Octover 29, 2013 A.Dotti       (global-V09-06-78)
- Adding G4ThreadPrivateSingleton class for thread-private singleton
  handling and G4AutoDelete namespace with utility function for
  simplified garbage-collection: management/include/G4AutoDelete.hh
  management/include/G4ThreadLocalSingleton.hh. Two unit tests have
  been developed management/test/testAutoDelete.cc and
  management/test/testG4TLSSingleton.cc
- Adding G4MUTEXINIT macro that expands to pthread_mutex_init

October 29, 2013 A.Dotti       (global-V09-06-77)
- Retagging, wrong commit previous tag

October 28, 2013 A.Dotti       (global-V09-06-76)
- Bug fixing in G4Cache::Put method signature

October 23, 2013 A.Dotti       (global-V09-06-75)
- Adding G4Cache classes for a thread-private data members in
  shared classes.

October 18, 2013 V.Ivantchenko (global-V09-06-74)
- G4PhysicsVector - in the FindBinLocation method extra checks
    are added for Log and Lin vectors to avoid rare cases when bin
    is computed incorrectly due to limited numerical precision of
    computations (P.Arce report)

October 02, 2013 V.Ivantchenko (global-V09-06-73)
- G4Pow - fixed typo in previous tag

October 02, 2013 V.Ivantchenko (global-V09-06-72)
- G4Pow - is now static not G4ThreadLocal, added check that it is
    instantiated in the master thread
- G4PhysicsVector - FindBinLocation is now inlined and not virtual,
    using table type different algorithms are invoked to compute bin
    number; use G4Log
- G4PhysicsLogVector,  G4PhysicsLinearVector, G4PhysicsOrderedFreeVector,
  G4LPhysicsFreeVector, G4PhysicsFreeVector, G4PhysicsLnVector - removed
    FindBinLocation methods
- G4PhysicsLogVector - use G4Log and G4Exp instead of log10

October 1, 2013 T.Koi (global-V09-06-71)
- Add data member of name to G4ConvergenceTester
  Tune format of output result

September 26, 2013 M.Asai (global-V09-06-70)
- Fix a typo of class name in sources.cmake.

September 26, 2013 M.Asai (global-V09-06-69)
- Introducing G4PhysicsModelCatalog class to be used my physics models
  and G4Track.

September 16, 2013 V.Ivantchenko (global-V09-06-68)
- G4Pow: optimized logA() and logX() functions.

September 4, 2013 G.Cosmo (global-V09-06-67)
- Added inclusion of <stdin.h> in G4Exp and G4Log headers.
  Make them matching to std::exp and std::log on Windows plaatform.
- Use G4Log and G4Exp within G4Pow and G4Poisson. Expected slight
  performance boost; numerical results to be validated.

September 3, 2013 M.Asai (global-V09-06-66)
- Introducing G4Threading::IsWorkerThread() method. It returns true when
  it is invoked in a worker thread, while it returns true for masther
  thread and for sequential mode.

September 3, 2013 G.Cosmo, V.Ivantchenko (global-V09-06-65, global-V09-06-64)
- Added G4Log and G4Exp headers for fast log and exp; converted from
  the VDT library (http://svnweb.cern.ch/world/wsvn/vdt).

August 31, 2013 M.Asai (global-V09-06-63)
- G4Threading::G4GetThreadId() returns -2 instead of 0 for the case
  of sequential mode.

August 26, 2013 A.Dotti(global-V09-06-62)
- Add namespace G4Threading to functions defined in G4Threading.hh

August 26, 2013 A.Dotti(global-V09-06-61)
- Correct MT defects identified by DRD:
   i. Protect G4MTcoutDestination
  ii. Correct check of already-locked condition for G4AutoLock
 iii. Protect creation of shared resource in G4MTHepRandom
- Add performance test for RNG engines

August 15, 2013 M.Asai (global-V09-06-60)
- G4MTcoutDestination now has a capabilitu of printing out only for
  the selected thread to make the display readable.

August 6, 2013 V.Ivantchenko (global-V09-06-59)
- Fixed compillation
August 6, 2013 V.Ivantchenko (global-V09-06-58)
- G4PhysicsLogVector, G4PhysicsLnVector - more accurate check of
    bin inside FindBinLocation method to avoid non-reproducibility

July 24, 2013 V.Ivantchenko (global-V09-06-57)
- G4StatDouble: new method add(G4StatDouble*) to be used in MT mode

July 16, 2013 G.Cosmo (global-V09-06-56)
- Correction to CMake scripts for granular build.
- Updated date and tag-ID in G4Version.hh.

July 3, 2013 A.Dotti (global-V09-06-55)
- Previous tag was broken.

July 3, 2013 A.Dotti (global-V09-06-54)
- Adding missing implementation of fucntion G4SetThreadId for sequential builds

July 3, 2013 V.Ivantchenko (global-V09-06-53)
- G4PhysicsVector: added pointer to G4Pow in order to speedup
    bin location for logarithmic vectors (result are identical)
- G4PhysicsLogVector - use in FindBinLocation G4Pow::log10A instead
    of std::log
- G4PhysicsLnVector - use in FindBinLocation G4Pow::logX instead
    of std::log

July 1, 2013 V.Ivantchenko (global-V09-06-52)
- G4PhysicsVector: make FindBin method public, added method
    FindLinearEnergy for sampling of energy for vectors
    with cumulative probability function
- G4Physics2DVector: make FindBinLocationX and FindBinLocationY
    methods public, add method FindLinearX for sampling of energy
    for 2D cumulative probability functions, added new inlined
    method Value with different signature

June 26, 2013 G.Cosmo (global-V09-06-51)
- Restore default precision in cout in G4AllocatorList.

June 24, 2013 G.Cosmo (global-V09-06-50)
- Added tag ID specific for MT mode in G4Version.hh.

June 21, 2013 M.Asai (global-V09-06-49)
- G4AllocatorList::Destroy() takes the verbosity. Also, due to the revised
  order of deletion of kernel classes, G4cout is available for this method
  for worker thread as well.

June 21, 2013 G.Cosmo (global-V09-06-48)
- Refined printout of statistics in G4AllocatorList::Destroy().

June 19, 2013 G.Cosmo (global-V09-06-47)
- Protected printout of statistics in G4AllocatorList::Destroy() within
  G4VERBOSE and avoid it in MT-mode.

June 18, 2013 G.Cosmo (global-V09-06-46)
- Made pure virtual utility methods in G4AllocatorBase, so statistics
  are accessible from allocator's base class pointer.
- Corrected logic in G4AllocatorList::Destroy() to effectively delete
  allocated pools and release memory.
  Added statistics on pools and amount of memory released.

June 17, 2013 M.Asai (global-V09-06-45)
- Split destructor and Destroy() method in G4AllocatorList.
  They should be invoked separately. Destroy() now may take
  an integer argument that is the number of static G4Allocator
  objects. Such static G4Allocator objects are not deleted.

June 17, 2013 G.Cosmo
- Move virtual destructor of G4AllocatorBase to source, to avoid
  misalignments on deletion on exit through the base-class pointer.
- Comment out deletion of allocators pointers for testing and reset
  storage.

June 17, 2013 G.Cosmo (global-V09-06-44)
- Temporarly avoid resetting storage in G4AllocatorList::Destroy().

June 16, 2013 M.Asai (global-V09-06-43)
- Introducing G4AllocatorList class which stores pointers of all
  G4Allocator objects for each thread so that they all are cleanly
  deleted at the program termination.
- Adding G4AllocatorBase base class to define virtual destructor
  and virtual method for G4Allocator.

June 15, 2013 V.Ivantchenko (global-V09-06-42)
- G4PhysicsVector: added protection to avoid check energy value
  outside vector when bin location is performed/

June 14, 2013 V.Ivantchenko (global-V09-06-41)
- G4PhysicsVector: make class read-only in run time, access to
  value only via const methods; to enable Spline, SetSpline command
  should be applied after vector is filled, or equivalently
  direct call to fill second derivatives should be done.

June 14, 2013 G.Cosmo (global-V09-06-40)
- Removed split mechanism from G4PhysicsVector; removed G4PhysicsVectorCache
  class; removed G4PVSplitter. Made G4PhysicsVector a read-only class.
- Removed G4Physics2DVectorCache class, no longer used.
- Updated tag-id in G4Version.hh to "1000".

June 12, 2013 G.Cosmo (global-V09-06-39)
- Simplified implementation of new/delete operators for G4PhysicsVector
  and G4PhysicsVectorCache and avoid deletion of allocator global pointers
  in respective destructors.

June 7, 2013 G.Cosmo (global-V09-06-38)
- Added call to clear() in G4PhysicsTable::clearAndDestroy().
- Added 'safe' inclusion of <windows.h> from G4Threading.hh, in new
  header windefs.hh.
- Updated date and tag for 10.0-Beta.

June 5, 2013 G.Folger (global-V09-06-37)
- In management/G4FPEDetection.hh add first version of stack backtrace
   when FPE exception is detected. Linux only.

May 29, 2013 G.Cosmo (global-V09-06-36)
- Fix for allowing compilation on Windows in G4Threading: disable definition
  of min()/max() and 'pascal' from inclusion of <windows.h>.

May 29, 2013 G.Cosmo (global-V09-06-35)
- Removed unnecessary thread-local specifications in G4GeometryTolerance
  singleton, as it is initialised and configured only once by master thread
  before the event loop.
- Consistently use wrappers and typedefs from G4Threading for pthreads
  functions and types in G4MTHepRandom, G4PVSplitter and G4PhysicsVector,
  to allow for porting on Windows.

May 23, 2013 M.Asai (global-V09-06-34)
- Replaced G4coutIdDestination class to G4MTcoutDestination class for cleaner
  handling of thread-local cout/cerr.

May 22, 2013 G.Cosmo (global-V09-06-33)
- Fix in G4Threading for sequential mode in definition of G4GetNumberOfCores().
- Some code cleanup.

May 18, 2013 A.Dotti (global-V09-06-32)
- Fix for sequentual compilation error introduced in latest tag.

May 17, 2013 A.Dotti (global-V09-06-31)
- Adding new cout streaming for MT: on file and with header
  at each line (with optional buffering)
- Adding G4GetNumberOfCores and G4GetThreadId global helper functions

May 16, 2013 V.Ivanchenko (global-V09-06-30)
- G4Physics2DVector - removed cache; changed signature of
    several methods; all run time methods become const;
    the class become read only in run time

May 16, 2013 A.Dotti (global-V09-06-29)
- Adding explicit creation of worker threads as "joinable"

May 14, 2013 G.Cosmo (global-V09-06-28)
- Restored thread-local instance pointer in G4Pow...

May 13, 2013 M.Asai (global-V09-06-27)
- Roll back G4Physics2DVector class to global-V09-06-24 to avoid
  G4Physics2DVectorCache thread-local.
- G4Pow: removed G4ThreadLocal declaration.
  Fixed compilation warning from gcc-4.7 in logA() method.

May 11, 2013 M.Asai (global-V09-06-26)
- Fixed Windows runtime error of the previous tag.

May 10, 2013 M.Asai (global-V09-06-25)
- Make G4Physics2DVectorCache used in G4Physics2DVector class thread-local.

May 8, 2013 G.Cosmo (global-V09-06-24)
- Improved accuracy for log10A() and powA() in G4Pow (V.Ivantchenko).
- Get rid of thread-local specifications for constant variables and data
  in HEPNumerics module.

May 7, 2013 V.Ivanchenko (global-V09-06-23)
- G4Pow: added new methods logX() and expA(); improved accuracy of
  logA() and A13(): now all these methods provide accuracy better than 0.1%
  for any value of argument.
- Added post-const qualifier to all methods in G4Pow (G.Cosmo).

May 2, 2013 V.Ivanchenko (global-V09-06-22)
- Fixed typo introduced in G4Pow in tag "06-20".

May 2, 2013 G.Cosmo (global-V09-06-21)
- Updated tags in G4Version.

April 30, 2013 V.Ivanchenko (global-V09-06-20)
- G4Pow: fixed bug in interpolation inside logA() and A13() methods,
  now interpolation is accurate at better than per mille level; in worse
  cases (x~1.45 or x~0.75) better than 2% level.

April 18, 2013 G.Cosmo (global-V09-06-19)
- Moved 'tpmalloc' and 'memoryprotection' modules to source/externals.

April 9, 2013 A.Dotti (global-V09-06-18, global-V09-06-17)
- Fix for compilation on Windows, bug introduced in latest tag
  for Conditions

April 9, 2013 A.Dotti (global-V09-06-16)
- Adding typedef for new G4Condtion type (pthread_cond_t) and macros
  G4CONDITIONWAIT and G4CONDITIONBROADCAST

April 7, 2013 A.Dotti (global-V09-06-15)
- Bug fixing: do not delete static data mamber theGenerator
  (only affects MT builds)

March 29, 2013 G.Cosmo (global-V09-06-14)
- Code cleanup for HEPRandom module and new introduced MT classes.
  Added G4heprandom sub-library to the build system.i
  Moved G4Poisson to non-inline.

March 18, 2013 A.Dotti (global-V09-06-13)
- Enable MT mode for MacOSX with gcc >= 4.7.
- Corrected getpid() problem in G4Threading.
- Fixed shadowing warning from G4Autolock (G.Cosmo).

March 12, 2013 G.Cosmo (global-V09-06-12, global-V09-06-11)
- Added public accessors for MT data to G4PhysicsVector.

March 11, 2013 G.Cosmo (global-V09-06-10)
- Further optimisation in G4ReferenceCountedHandle for the use of allocators.
- Redefined G4DLL_API to G4GLOB_DLL to avoid cases of macro redefinition.

March 9, 2013 G.Cosmo (global-V09-06-09)
- Take out G4Threading revision picked up from trunk, causing compilation
  errors on Linux and Windows. Restored version as in "global-V09-06-05".

March 8, 2013 G.Cosmo (global-V09-06-08)
- Renamed MT macro to safer ID in G4PhysicsVector.

March 7, 2013 G.Cosmo (global-V09-06-07)
- Renamed internal type name in G4PhysicsVector for MT split.

March 7, 2013 G.Cosmo (global-V09-06-06)
- Renamed G4MTTransitoryPhysicsVector to G4PVSplitter and adopt export/import
  flag for static members to overcome problems on Windows DLLs build.
- Cleanup of code for MT changes in G4PhysicsVector, G4ios and G4strstreambuf.
- Moved G4MTTransitory and G4MTTransitoryParticle headers in geometry and
  particles categories respectively.
- Simplified setup for import/export flags on Windows in G4Types.hh.
  Replacing G4DLLIMPORT/G4DLLEXPORT flags with G4DLL_API.

February 25, 2013 A.Dotti (global-V09-06-05)
- Fixing naming clash with G4MT for G4cout variables.

February 25, 2013 A.Dotti (global-V09-06-04)
- Fixed compilation warning and naming issue in G4AutoLock and G4Threading.

February 22, 2013 G.Cosmo (global-V09-06-03)
- Removed unused private members in G4JTPolynomialSolver.

February 21, 2013 J.Madsen
- Minor changes to G4ConvergenceTester: output can now optionally be
  redirected a different stream (defaults is cout).
  Accessors are made public and check if data has been added.

February 20, 2013 A.Dotti (global-V09-06-02)
- Added new classes implementing platform independent threading
  G4AutoLock and G4Threading. Not yet activated.
- Generalised flags for MacOS multi-threaded mode (G.Cosmo).

February 13, 2013 G.Cosmo (global-V09-06-01)
- Withdrawn changes introduced in previous tag for G4UnitsTable.
- Cleanup of MT code on kernel G4 classes.

February 08, 2013 J.Jacquemier (global-V09-06-00)
- G4UnitsTable: Migrated to STL map, iterator and algorithm

January 14, 2013 A.Dotti, G.Cosmo
- Merged changes for MT development.

November 16, 2012 V.Ivantchenko (global-V09-05-15)
- G4Physics2DVector: fixed comments, more correct references.
- Updated date for release 9.6.

November 5, 2012 M.Maire (global-V09-05-14)
- Reverted change to G4UnitsTable for parsec unit definition, introduced
  in tag "global-V09-05-10". Back to use 'pc' to avoid formatting printout
  issues.

November 1, 2012 G.Cosmo (global-V09-05-13)
- Added missing header in sources.cmake script for management module.

October 24, 2012 G.Cosmo (global-V09-05-12)
- Use 'const G4String&' as arguments in G4coutdestination instead of
  plain string copy to reduce memory churn (K.Murakami).
- Removed unnecessary string data member in G4PhysicsVector to reduce
  memory footprint. Removed related Get/SetComment() methods.
- Co-works with tags: intercoms-V09-05-06 and interfaces-V09-05-29.

October 22, 2012 V.Ivantchenko (global-V09-05-11)
- G4Physics2DVector: added bicubic interpolation option.
  No effect on results if option is not active.
- G4PhysicsVector - fixed typo in comments.

October 18, 2012 G.Cosmo (global-V09-05-10)
- Added header for thread local storage defines.
- Replaced 'pc' with 'parsec' in G4UnitsTable unit definition.

October 9, 2012 G.Cosmo (global-V09-05-09)
- Temporarily comment out inclusion of headers for system of units and
  physical constants in globals.hh.

August 8, 2012 G.Cosmo (global-V09-05-08)
- Fixed more cases for explicitly use inclusion of headers for system of
  units and physical constants.

July 5, 2012 G.Cosmo (global-V09-05-07)
- Implemented workaround to aid for templated symbols of
  G4ReferenceCountedHandle to be properly imported/exported
  for DLL build on Windows systems based on CMake (P.Mato).
  Addressing problem report #1329.

June 11, 2012 G.Cosmo (global-V09-05-06)
- Explicitly use inclusion of headers for system of units and physical
  constants, in plan to remove implicit inclusion from globals.hh.

June 6, 2012 P.Gumplinger
- Make sure that vectors are actually ordered in G4PhysicsOrderedFreeVector.

May 30, 2012 G.Cosmo (global-V09-05-05)
- Fixed case of shadowed variable in G4Tokenizer header.

May 16, 2012 V.Ivantchenko (global-V09-05-04)
- G4PhysicsVector: added GetMaxEnergy() inlined method; indicate inline
  methods in header file by explicitly adding inline keyword; added inline
  method Value() and private method ComputeValue() in order to have inline
  access to the value for the case of multiple calls with the the same
  energy value.

May 15, 2012 G.Cosmo (global-V09-05-03)
- Fixed spurious cases of hidden variable visibility, detected with
  '-Wshadow' compilation option on gcc compiler.

April 23, 2012 G.Cosmo (global-V09-05-02)
- Added call to BuildUnitsTable() from static accessor to guarantee proper
  initialization of units in static calls.
  Modified warnings in cout to be compliant with G4Exception syntax.

February 7, 2012 G.Cosmo (global-V09-05-01)
- Corrected cases of variables never read in G4ConvergenceTester and
  G4DataInterpolation.

January 10, 2012 G.Cosmo (global-V09-05-00)
- Added GetClockTime() function to G4Timer to print the actual clock time.
- Fixed compilation errors in G4StatDouble for constness in signature of
  rms() methods.

November 24, 2011 J.Apostolakis
- Introduced G4StatDouble class in HEPNumerics module, a class providing
  simple "one variable statistics" capability; adapted from the original
  code by G.Santin included in the GRAS tool.

November 19, 2011 V.Ivantchenko (global-V09-04-24)
- G4Pow: reduced vector for factorial from 512 to 170 (result should be
  below DBL_MAX). Fixed computation of log(factorial).

November 17, 2011 G.Folger (global-V09-04-23)
- Added G4lrint(), G4lint(), G4rint() as global utility functions in
  templates.hh for generic use.

November 15, 2011 G.Cosmo (global-V09-04-22)
- Removed call to obsolete G4Exception signature in G4Timer and G4SliceTimer.
- Added new line to G4Exception notification to properly flush buffer.

November 10, 2011 V.Ivantchenko (global-V09-04-21)
- Fixed Coverity defects on G4Physics2DVector.

November 10, 2011 G.Cosmo (global-V09-04-20)
- Updated banner for G4Exception and some cleanup.
- Changed date for release 9.5.

October 20, 2011 M.Asai (global-V09-04-19)
- Removing obsolete G4Exception from globals.hh and G4Exception.cc.

October 7, 2011 V.Ivantchenko (global-V09-04-18)
- G4Physics2DVector, G4Physics2DVectorCache: new classes implementing
  a 2-dimensional vector with linear interpolation.

September 23, 2011 V.Ivantchenko (global-V09-04-17)
- G4PhysicsLogVector, G4PhysicsLnVector, G4PhysicsLinearVector: updated
  to safer implementation of ScaleVector() method.

August 25, 2011 G.Cosmo (global-V09-04-16)
- Added banner for errors and warnings in G4Exception.
  Redirect warnings to cout instead of cerr.

August 19, 2011 G.Cosmo (global-V09-04-15)
- Use G4Allocator for allocation of G4PhysicsVector and G4PhysicsVectorCache
  objects.
- Replaced G4IOS_ALLOC_EXPORT flag with G4GLOB_ALLOC_EXPORT.

August 16, 2011 H.Kurashige (global-V09-04-14)
- Added 'dBin', 'baseBin' and 'verboseLevel' in the base class G4PhysicsVector
  to avoid additional properties data introduced in derived classes.
- Fixed ScaleVector() method in G4PhysicsVector derived classes.

August 09, 2011 M.Asai (global-V09-04-13)
- Fixed a spelling mistake in globals.hh and G4Exception.cc for
  G4ExceptionDesciption typedef.

July 28, 2011 M.Asai (global-V09-04-12)
- Added two now G4Exception syntax.

July 12, 2011 G.Cosmo (global-V09-04-11)
- Added missing post-const qualifier to G4String::compareTo() methods
  (M.Kelsey).
- Updated date and version.

June 20, 2011 V.Ivanchenko (global-V09-04-10)
- Added protection in G4Pow::powN() method for high exponent values.

June 15, 2011 B.Morgan (global-V09-04-09)
- More fixes for CMake setup.

May 19, 2011 B.Morgan (global-v09-04-08)
- CMakeLists.txt : Added G4IOS_ALLOC_EXPORT compiler definition via
  add_definitions so all submodules pick it up.

May 13, 2011  G.Cosmo (global-V09-04-07)
- Fixed compilation warnings from gcc-4.6.0 for variables set but not used
  in G4AnalyticalPolSolver.

May 10, 2011  G.Cosmo (global-V09-04-06)
- Cleared unused CLHEP headers included in Randomize.hh.

May 5, 2011  G.Cosmo (global-V09-04-05)
- Added G4Evaluator typedef in G4Evaluator.hh header.

March 31, 2011  V.Ivantchenko
- Fixed internal copy constructor in G4PhysicsVector.

Mar 25, 2011  G.Cosmo (global-V09-04-04)
- Added more G4 types for random classes in Randomize.hh.
- Use G4UniformRand() in G4Poisson.

Mar 25, 2011  G.Cosmo (global-V09-04-03)
- Added G4Rep3x3 typedef to CLHEP::HepRep3x3 in G4RotationMatrix.hh.

Jan 26, 2011  G.Cosmo (global-V09-04-02)
- Added trailing spaces to version string in G4Version.hh.

Jan 26, 2011  G.Cosmo (global-V09-04-01)
- Manually added corrected tag strings in G4Version.hh, temporary solution
  for the no longer supported feature in SVN...

Jan 08, 2011  V.Ivantchenko (global-V09-04-00)
- Extended length of internal arrays in G4Pow from 256 to 512.
  Allows to fix numerical problems observed in some ion/ion collision tests.

Dec 24, 2010  H.Kurasige
- Use unsigned-int for table size type in G4PhysicsTable.
  Fixes a problem for data persistency.

Nov 24, 2010  G.Cosmo (global-V09-03-24)
- Changed date for release 9.4.

Nov 09, 2010  T.Koi (global-V09-03-23)
- G4ConvergenceTester: fixed error in calculation of SLOPE;
  fixed incorrect initialization of 'noTotal'. Modified some output

Nov 01, 2010  G.Cosmo (global-V09-03-22)
- Fixed dummy initialisation in constructor for G4SimplexDownhill and
  G4ConvergenceTester classes.
- Fixed cases of tainted scalar in G4DataVector, G4OrderedTable,
  G4PhysicsTable and G4PhysicsVector.

Oct 30, 2010  T.Koi (global-V09-03-21)
- Fixed error in calculation of CPU time for each event in G4ConvergenceTester.

Oct 27, 2010  G.Cosmo (global-V09-03-20, global-V09-03-19)
- Replaced G4IOS_EXPORT flag with G4IOS_ALLOC_EXPORT for DLL exported symbols.

Oct 15, 2010  G.Cosmo (global-V09-03-18)
- Fixed compilation error on WIN32-VC for G4ConvergenceTester. Also, added
  explicit initialization of static data to constructor.

Oct 14, 2010  M.Kelsey (global-V09-03-17)
- Modified FPE handler to get correct SIGINFO data for error messages.

Oct 12, 2010  G.Cosmo (global-V09-03-16)
- Added class G4ConvergenceTester, moved from extended example N03Con,
  implementing a facility for estimating the quality of the simulation,
  by providing statistical information to assist in establishing valid
  confidence intervals for Monte Carlo results.

Oct 1, 2010  G.Cosmo (global-V09-03-15)
- Fixed typo in destructor of G4StateManager.
- Fixed type clash with input stream in G4PhysicsVector::Retrieve(),
  G4PhysicsTable::RetrievePhysicsTable(), G4OrderedTable::Store()
  and G4DataVector::Retrieve().
- Fixed potential case of memory leak in G4OrderedTable::Retrieve().
- Added dummy initialization of members in constructors for classes
  G4SliceTimer, G4ErrorPropagatorData,

Sep 18, 2010  V.Ivantchenko (global-V09-03-14)
- Withdrawn latest change made to G4PhysicsVector::PutValue(), due to
  misunderstanding...

Sep 18, 2010  H.Kurashige (global-V09-03-13)
- Fixed bug in G4PhysicsVector::PutValue() to correctly handle last bin
  when Energy=theEmax in getValue().

Aug 23, 2010  V.Ivantchenko (global-V09-03-12)
- Added methods logfactorial() and powN() to G4Pow class.

Aug 19, 2010  G.Cosmo (global-V09-03-11)
- Correction to G4FPEDetection.hh to avoid compilation error on Linux.

Aug 09, 2010  M.Maire
- G4UnitsTable: added new category "Solid angle".

Jul 16, 2010  G.Cosmo (global-V09-03-10)
- Added INT_MAX and INT_MIN portability macros in templates.hh.

Jul 14, 2010  G.Cosmo (global-V09-03-09)
- G4Allocator: implemented customizable pool size.
- G4AllocatorPool: moved dummy copy constructor to private section.
- Fixed cases of invalidated iterator in G4StateManager.
- Fixed restoring of cout/cerr formatting in G4DataVector, G4PhysicsVector.
- Added dummy initialization of members in constructors for classes
  G4JTPolynomialSolver, G4AllocatorPool, G4ErrorPropagatorData.
- Added experimental code for MacOSX in G4FPEDetection.hh.

Jun 09, 2010  G.Cosmo (global-V09-03-08)
- Changed date for release 9.4-beta.

May 29, 2010  V.Ivantchenko (global-V09-03-07)
- More safe numerical computation of A13 and logA methods in G4Pow.

May 28, 2010  H.Kurasige
- Restored G4PVDataVector vectors in G4PhysicsVector owned by value instead
  of pointers, as originally was before tag "global-V09-03-00".

May 05, 2010  G.Cosmo (global-V09-03-06)
- Move interpolation methods to inline in G4PhysicsVector.
- Some cleanup.

May 04, 2010  H.Kurashige (global-V09-03-05)
- Introduced G4PhysicsVectorCache, placeholder for cache R/W data in use
  by G4PhysicsVector and derivates.
  Modified G4PhysicsVector and G4LPhysicsFreeVector accordingly.

Apr 06, 2010  G.Cosmo (global-V09-03-04)
- Changed date for release 9.3.p01.

Mar 30, 2010  G.Cosmo (global-V09-03-03)
- Moved 'mem' pool in G4Allocator to public section, to allow for use of
  allocator in vectors on Windows/C++.

Mar 23, 2010  V.Ivanchenko (global-V09-03-02)
- G4PhysicsLogVector, G4PhysicsLnVector, G4PhysicsLinearVector: preserve
  values of 'edgeMin' and 'edgeMax' in constructors avoiding recomputation,
  to avoid precision problem; fixes problem detected on Windows/VC++.

Feb 01, 2010  G.Cosmo (global-V09-03-01)
- Restored G4PVDataVector as typedef for optimisation; removed class files.

Dec 22, 2009  H.Kurashige (global-V09-03-00)
- Modified G4PhysicsVector to use pointers to G4PVDataVector instead of
  holding it as static data.

Dec 07, 2009  L.Pandola, V.Ivanchenko (global-V09-02-12)
- G4PhysicsVector: fixed initialisation of 'lastEnergy' to -DBL_MAX
  allowing to have negative scale of energy.

Nov 24, 2009  G.Cosmo (global-V09-02-11)
- Changed date for release 9.3.

Nov 17, 2009  V.Ivanchenko (global-V09-02-10)
- G4PhysicsVector: fixed Value() method for the case when energy is
  around 'edgeMax'; adding extra protection.

Nov 04, 2009  V.Ivanchenko (global-V09-02-09)
- G4PhysicsVector: cleaned up initialisation of cached values;
  simplified Value() method, now not looking into previous bin;
  added method ScaleVector() needed for ICRU'73 data.

Oct 29, 2009  G.Cosmo (global-V09-02-08)
- Cleared warning for unused argument in G4Allocator internal method.

Aug 07, 2009  G.Cosmo (global-V09-02-07)
- Some improvements to G4String and G4SubString implementation of operators
  and comparison stub functions, to reduce generation of temporaries.
- Removed obsolete static hash(s) method.

Jul 03, 2009  V.Ivanchenko (global-V09-02-06)
- New class G4Pow, a singleton for fast computation of log() and pow() for
  integer and double arguments in the interval [1-256].
- G4PhysicsVector:
  o Added ComputeSecDerivative() and SplinePossible() methods as a
    computation of Spline coefficients for small number of bins.
  o Removed old obsolete hidden bin approach.
  o Use std::vector for second derivatives instead of C arrays.

May 26, 2009  A.Bagulya (global-V09-02-05)
- G4PhysicsVector: do not change flag "useSpline" during initialisation
  to address bug in N02 reported by valgrind

May 26, 2009  A.Bagulya (global-V09-02-04)
- G4PhysicsVector: set limits of number of bins for spline: 4 for the case
  of first derivatives defined; 5 for the case when "Not-a-Knot" algorithm
  is used.

May 15, 2009  P.Arce (global-V09-02-03)
- Added G4ErrorStage enum to G4ErrorPropagatorData class.

May 13, 2009  A.Bagulya (global-V09-02-02)
- G4PhysicsVector: added method ComputeSecondDerivatives() for the case when
  user provides first derivative at endpoits; use "Not-a-Knot" algorithm for
  the computation of second derivatives in default method
  FillSecondDerivatives().
- Changed date for release 9.3-beta.

Mar 16, 2009  G.Cosmo (global-V09-02-01)
- Changed date for release 9.2.p01.

Jan 27, 2009  G.Cosmo (global-V09-02-00)
- Correction in management/GNUmakefile to CPPFLAGS, adding G4RF_DEBUG in
  case enabled.

Dec 08, 2008  G.Cosmo (global-V09-01-18)
- Added new constructor G4String(const char*, str_size).

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 <cstring> and <climits> 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 <limits> 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 <strstream> 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 <cfloat>.

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 <cstddef> 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 <cmath>. Removed explicit inclusion of CLHEP.h and
  therefore also implicit inclusions of system headers <math.h>,
  <stdlib.h> and <limits.h>.
- 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 occurrences of G4std:: with std::
  o replaced all occurrences of
      #include "g4std/XXX"
    with
      #include <XXX>
  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 <CR>.

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 <deque> 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 <list> wrapper in management/g4std.

August 02, 2000 G.Cosmo (global-V02-00-02)
- Added <queue> 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 <fstream> 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 <string> 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<T> and G4std::vector<T*> 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 <algorithm>.

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 <stdlib.h>
   #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<G4KineticTrack>
  and G4RWTPtrSortedVector<G4CollisionInitialState> 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<G4HitsCollection> 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<G4Run>,<G4HCofThisEvent>,<G4DCofThisEvent> 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<G4DecayProducts> 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 <CLHEP/...>" 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.
