$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 *
     ----------------------------------------------------------

June 12, 2015 A.Dotti (global-V10-00-47)
- 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-00-46)
- Define G4THREADSLEEP(tick) macro in G4Threading.hh also for sequential
  builds.

May 26, 2015 G.Cosmo
- Corrected logic for use of TLS on clang compiler for the Random module.

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

May 18, 2015 A.Dotti
- Adding copy constructor and assignement operator for G4Cache
  Addressing issue #1739

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

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 8, 2015 G.Cosmo
- Corrected GNUmakefile in HepRandom unit tests.

March 27, 2015 G.Cosmo
- Added "g/mole" Molar mass definition to G4UnitsTable.

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

December 10, 2014 G.Cosmo
- 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 occurences of G4std:: with std::
  o replaced all occurences 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.
