$Id:$
-------------------------------------------------------------------

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

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

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

09 November 2015 - G.Cosmo
- Updated to CLHEP-2.3.1.1.
- Added MixMaxRng to Randomize.h.

30 October 2015 - G.Cosmo
- Fixed default seeding in MixMaxRng::setSeeds().

28 September 2015 - G.Cosmo
- Fixed compilation warning on gcc in mixmax.h for signed/unsigned comparison.
- Added reference to MixMaxRng.h.

25 September 2015 - G.Cosmo
- Added MixMaxRng to EngineFactory.
- Added copy-constructor and assignment operator to MixMaxRng.
- Replaced "#define N 256" with "static const unsigned int N = 256;"
  in mixmax[.h.cc] and adapted code accordingly; commented out unused
  cases for different values of N.
  Fixes symbols clashes within CLHEP namespace.

18 September 2015 - G.Cosmo
- Disable thread_local and atomic c++11 features specific for Intel-icc
  compiler in Utility module: thread_local.h, atomic_int.h.
  Use settings related to gcc.

15 September 2015 - G.Cosmo
- Fixes by K.Savvidy to allow for porting on Intel-icc compiler and
  Windows Visual Studio. Updated files: minmax[h.cc].

14 September 2015 - G.Cosmo
- Included changes by K.Savvidy to make MixMax support 32-bits platforms.
  Updated files: minmax[h.cc], mixmax_skip_N256.icc.

25 August 2015 - G.Cosmo
- Added MixMax random engine classes implementing the "Matrix Generator of
  Pseudorandom Numbers", as described in J. Compt. Phy. 97, 573 (1991).
  Added files:
  o MixMaxRng[h.cc]: CLHEP interface class to MixMax generator.
  o minmax[h.cc]: C++ translation/adaptation of the MixMax generator.
  o mixmax_skip_N256.icc: table of skipping coefficients for MixMax (N=256).

19 August 2015 - M.Maire
- Added liter and its sub units to SystemOfUnits.h: liter, L, dL, cL, mL.

12 August 2015 - G.Cosmo
- Use std::shared_ptr in random classes instead of internal Boost-derived
  implementation.
- Corrected RandExpZiggurat to use shared_ptr as for all other distributions.
- Utility module: removed Boost derived implementation of shared_ptr and
  weak_ptr, now typedefs to c++0x standard std::shared_ptr and std::weak_ptr
  respectively. Removed no longer used type_traits.h header.

7 August 2015 - G.Cosmo
- Temporarly commented out assertion in memory.h, in view of full transition
  to C++11 for use of shared_ptr et al..

6 August 2015 - G.Cosmo
- Enable thread_local and atomic c++11 features for Intel-icc compiler
  in Utility module: thread_local.h, atomic_int.h.

15 June 2015 - G.Cosmo
- Updated to CLHEP-2.2.0.8. 
- Switch off gcc-5 warning for unused variable in Randomize.h header.

11 June 2015 - G.Cosmo
- Moved static methods handling static data in G4RandGauss from inline
  to source. Addressing problem report #1754.
- Switch off gcc-5 warnings for deprecated calls to auto_ptr in Utility headers.

9 April 2015 - G.Cosmo
- Fixed usage of std::abs() in RandGaussZiggurat source...

12 December 2014 - G.Cosmo
- Fixed usage of std::abs() in RandGaussZiggurat header.

24 November 2014 - G.Cosmo
- Updated to CLHEP-2.2.0.4:
  * Utility (L.Garren <garren@fnal.gov>)
    o memory.h: fixed a type mismatch (compilation warning on Windows/VC9).
  * Random (L.Garren <garren@fnal.gov>)
    o RanshiEngine.cc: use a pragma to ignore aggressive 32bit compiler
      warnings.
  * Vector (L.Garren <garren@fnal.gov>)
    o ThreeVector.icc: inline Hep3Vector::operator () (int i), following
      patch included in Geant4 on November 12th below.

14 November 2014 - G.Cosmo
- Updated to CLHEP-2.2.0.3:
  * Units (L.Garren <garren@fnal.gov>)
    o Moved definition of pi into SystemOfUnits.h so that its hard-coded
      value is not defined twice.

12 November 2014 - G.Cosmo
- Moved operators 'operator()(int)' in Hep3Vector to be inline and
  removed printout to improve CPU performance.
  Patch provided by S.Wenzel/CERN.

17 June 2014 - G.Cosmo
- Updated to CLHEP-2.2.0.0:
  * Random (L.Garren <garren@fnal.gov>)
    o RanshiEngine.cc: use explicit 32bit mask to avoid compiler warnings
    o MTwistEngine.cc: make sure we don't go past the end of the 
      array in MTwistEngine::showStatus().

24 April 2014 - G.Cosmo
- Corrected definition of 'thread_local' keyword in Utility/thread_local.h.
- Removed 'inline' specification in Random.cc for theDefaults().

9 April 2014 - G.Cosmo
- Updated to CLHEP-2.2.0.0.b01:
  * Random (D.Dagenhart <wdd@fnal.gov>)
    o Converted statics and globals to const, thread-local or atomic
      to improve thread safety.
    o Introduced CLHEP_THREAD_LOCAL and CLHEP_ATOMIC_INT_TYPE macros
      thread_local and atomic<int> keywords.

24 February 2014 - G.Cosmo
- Removed deprecated 'register' qualifier in implementation.

14 November 2013 - G.Cosmo
- Updated to CLHEP-2.1.4.1:
  * Random (L.Garren <garren@fnal.gov>):
    o Added RandGaussZiggurat and RandExpZiggurat distributions
      contributed by ATLAS.
  * Units (L.Garren <garren@fnal.gov>):
    o Added new units for Radioactivity:
      kilo/mega/gigabecquerel, milli/microcurie.

20 August 2013 - G.Cosmo
- Corrected CMakeLists.txt script to have missing .icc and .cdat files
  explicitly listed.

15 November 2012 - G.Cosmo
- Updated to CLHEP-2.1.3.1:
  * Vector (L.Garren <garren@fnal.gov>):
    o Fixed typo in operator*() for HepRotation.
    o Clean up remaining naming overlap between Units and internal variables.

14 November 2012 - G.Cosmo
- Updated to CLHEP-2.1.3.0:
  * Vector (L.Garren <garren@fnal.gov>):
    o Make the HepLorentzVector(double t) constructor explicit.

5 June 2012 - G.Cosmo
- Updated to CLHEP-2.1.2.3:
  * Random, Vector (L.Garren <garren@fnal.gov>):
    o More fixes for shadowing when global units used.
  * Vector, Evaluator, Random, Geometry (L.Garren <garren@fnal.gov>):
    o Use explicit std:: with math functions.

10 May 2012 - G.Cosmo
- Updated to CLHEP-2.1.2.2:
  * Random (L.Garren <garren@fnal.gov>):
    o Use a template to get rid of the warnings in Ranlux64Engine.
  * Vector, Geometry, Random (L.Garren <garren@fnal.gov>):
    o Changed names of internal variables so -Wshadow does not complain.
  * Evaluator (M.Fischler <mf@fnal.gov>):
    o Fixed a problem with unary +/- and exponentials in Evaluator class.

7 November 2011 - G.Cosmo
- Updated to CLHEP-2.1.1.0:
  * Utility (W.E.Brown  <wb@fnal.gov>):
    o removing C++0X-like keywords constexpr, noexcept, and nullptr
      to avoid collision with similar symbols in other packages.

20 September 2011 - G.Cosmo
- Added missing export statements for static symbols required for DLL build.

22 June 2011 - B.Morgan
- CMakeLists.txt : Added the CLHEP include directory to
  GEANT4_BUILDTREE_INCLUDE_DIRS so that its visible from the build tree if
  we use the internal CLHEP.

20 June 2011 - B.Morgan
- CMakeLists.txt : Install CLHEP headers to
  CMAKE_INSTALL_INCLUDEDIR/PROJECT_NAME in line with new standard install
  directory structure.

14 June 2011 - B.Morgan
- CMakeLists.txt : Build G4clhep through standard GEANT4_LIBRARY_TARGET
  macro. Keep installation of headers as is.

13 June 2011 - B.Morgan
- CMakeLists.txt : Added use of new CMAKE_INSTALL_XXX variables to control
  installation of libraries and headers, and add exported libraries to a
  global property as per other Geant4 targets. Header paths are not added to
  a global property though because these can be internal or external, so
  we handle them higher up when generating the configuration files.

2 June 2011 - B.Morgan
- CMakeLists.txt : NEW file adding CMake build of 'G4clhep'
  Implemented as a single CMakeLists.txt because special handling of
  the nested header structure of CLHEP is needed at install time.

1 June 2011 - G.Cosmo
- Fixed trivial compilation warnings on gcc-4.6.0 in NonRandomEngine.h
  and Ranlux64Engine.cc for parameters defined but not used.

24 May 2011 - G.Cosmo
- Added missing files in CLHEP built-in module.
  Allow for generation of DLL library on Windows for it.

11 May 2011 - G.Cosmo
- Including a subset of CLHEP classes imported from version CLHEP-2.1.0.1.
- Modifications applied vs. original CLHEP classes:
  * Removed dependency on internal CLHEP "defs.h" configuration header;
    the Geant4 built-in module for CLHEP follows the Geant4 build scheme.
  * Adopt "std" namespace for standard mathematical functions, where needed.
  * Removed dependency on ZM exceptions and replaced with "cerr" printouts
    where necessary.
  * Renamed following files for coherency and standard:
    o Inlined code *.src to *.icc and moved to includes set;
    o DualConv.hh to DualConv.h.
  * Use coherent inclusion scheme also for internal headers/data/inline-code,
    where applicable.
  * Use of standard WIN32 compiler flag where applicable.
  * Cleared source code of de-activated debug blocks and minor cleanup,
    where applicable.
  * Rename of final CLHEP library produced, from 'CLHEP' to 'g4clhep'.
