# Category event History

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

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

## 2025-02-13 Gabriele Cosmo (event-V11-02-10)
- Fixed cut&paste error in G4StackManager::TransferStackedTracks(..),
  reported by Coverity.

## 2024-10-26 Makoto Asai (event-V11-02-09)
- Fixing event-V11-02-08 for forgotten deletion of trajectories.

## 2024-09-30 Makoto Asai (event-V11-02-08)
- G4Event : Change the data member keepTheEvent mutable so that KeepTheEvent()
  method can be invoked for const G4Event object.

## 2024-08-01 Alberto Ribon (event-V11-02-07)
- G4PrimaryTransformer : adapt and extend this class after the introduction of
  the new class G4ChargedUnknownParticle.
  ( This is part of ATLAS and LHCb request to assign automatically 
    ionisation and multiple scattering processes to charged primary particles
    with valid PDG code but not known to Geant4. )

## 2024-07-16 Gabriele Cosmo (event-V11-02-06)
- Fixed reported Coverity defects: in G4GeneralParticleSourceMessenger for
  use of 'const auto&' and use of 'const G4String&'; in G4StackManager for
  copy/paste error in printout.

## 2024-06-28 Makoto Asai (event-V11-02-05)
- Improve the use of Mutex lock in G4EventManager for sub-event parallel mode

## 2024-06-01 Makoto Asai (event-V11-02-04)
- Initial implementation of creation/processing of SubEvents
  - Co-working with track-V11-02-03,

## 2024-05-11 Makoto Asai (event-V11-02-03)
- G4PrimaryTransformer : adding sanity check of 4-momentum

## 2024-05-03 Ben Morgan (event-V11-02-02)
- Remove use of no longer supported TiMemory.

## 2024-01-30 Makoto Asai (event-V11-02-01)
- Added UI command to switch on/off the vertex position check (default : on).

## 2024-01-23 Gabriele Cosmo (event-V11-02-00)
- Added protection in G4VPrimaryGenerator::SetParticlePosition() to avoid
  and warn for attempts to place vertex position outside or on surface of
  the world volume.
- Updated "/gun/position" UI command guidance in G4ParticleGunMessenger.
  Removed unnecessary setting of gun position to (0, 0, 0).

## 2023-11-14 Alex Howard (event-V11-01-07)
- The ListSource command for the G4GeneralParticleSource fails to list the
  correct energy of the sources since they need to be accessed as a
  monoenergetic source distribution, rather than the particle energy.

## 2023-11-06 Ben Morgan (event-V11-01-06)
- Fix Coverity 104909: avoid use of subevent pointer after deletion.

## 2023-10-25 Vladimir Ivanchenko (event-V11-01-05)
- G4EventManager - fixed warning seen in the continues build, when G4VERBOSE
  is not defined

## 2023-09-28 Ben Morgan (event-V11-01-04)
- Fix Coverity issues 104905, 104908, requiring return after fatal G4Exception.
- Apply core clang-tidy fixes

## 2023-08-28 Makoto Asai (event-V11-01-02, 03)
- Introducing G4SubEvent and related classes.
- Co-working with run-V11-01-06, -07 and global-V11-02-16.
- Addressing to the new track status fSuspendAndWait in track-V11-01-01.

## 2023-06-07 Makoto Asai (event-V11-01-01)
- Adding SetParticleWeight() method to G4ParticleGun.
- Fix incorrect information of maximum number of tracks.

## 2022-12-12 Ben Morgan (event-V11-01-00)
- Remove obsolete GNUmakefile scripts

## 2022-11-17 Gabriele Cosmo (event-V11-00-07)
- Fixed compilation warnings for implicit type conversions on macOS/XCode 14.1.

## 2022-09-05 Ben Morgan (event-V11-00-06)
- Remove unneeded dependency on G4magneticfield

## 2022-04-04 Ben Morgan (event-V11-00-05)
- Apply basic set of C++ modernization fixes suggested by clang-tidy

## 2022-01-28 Ben Morgan (event-V11-00-04)
- Replace `geant4_global_library_target` with direct file inclusion and
  call to `geant4_add_category` to define library build from source modules.
- Make DLL export symbol a CMake module-level compile definition to aid
  future modularization

## 2022-01-26 Gabriele Cosmo (event-V11-00-03)
- Added dependency on geometry/magneticfield module in GNUmakefile and
  sources.cmake, required for granular builds after modification applied
  in previous tag/commit.

## 2022-01-24 Witek Pokorski (event-V11-00-02)
- Adding the call to the G4GlobalFastSimulationManager::Flush() method in the
  event loop

## 2021-12-15 Ben Morgan (event-V11-00-01)
- Canonicalize implementations of custom `new` and `delete` operators that use `G4Allocator`

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

---

# History entries prior to 11.0

October 31st, 2021 J. Hahnfeld (event-V10-07-08)
- G4EventManager: Make StackTracks public

October 25th, 2021 B.Morgan (event-V10-07-07)
- Use G4StrUtil functions replacing deprecated G4String member functions

October 21st, 2021 J. Hahnfeld (event-V10-07-06)
- G4EventManager: Hand over track to custom tracking manager,
  if registered for the particle

October 18th, 2021 B.Morgan (event-V10-07-05)
- Use std::string member functions from G4String in place of synonyms

August 21th, 2021 V.Ivanchenko (event-V10-07-04)
- G4SPSEneDistribution - use more optimal access to G4PhysicsVector

June 7th, 2021 M. Asai (event-V10-07-03)
- Fix the default value of /gps/ang/maxphi command. Addressing to 
  the bug report 2383.

May 18th, 2021 V.Ivanchenko (event-V10-07-02)
- G4AdjointPrimaryGenerator, G4SPSAngDistribution, G4SPSEneDistribution,
  G4SPSRandomGenerator - use G4PhysicsFreeVector instead of
  G4PhysicsOrderedFreeVector

April 1st, 2021 B. Morgan (event-V10-07-01)
- Migrate build to modular CMake API

March 31st, 2021 G.Cosmo (event-V10-07-00)
- Use existing facility to find physical volume in store, rather than looping
  through in G4SPSPosDistribution::ConfineSourceToVolume().

November 20th, 2020 B.Morgan (event-V10-06-09)
- Bugfix of build to ensure SmartStack preprocessor define is propagated.
  No changes to code.

November 12th, 2020 - Jonathan Madsen (event-V10-06-08)
- Added event profiler

November 16th, 2020 G.Cosmo (event-V10-06-07)
- Fixed typos in printed-out text. Addressing problem report #2285.

September 30th, 2020 M.Asai (event-V10-06-06)
- G4SPSPosDistribution.cc: Fix misleading error message. Addressing to
  Bugzilla report #2275.

April 29th, 2020 M.Asai (event-V10-06-05)
- G4GeneralParticleSourceMessenger: command structure clean-up.

April 28th, 2020 G.Cosmo (event-V10-06-04)
- Code formatting and cleanup.

April 20th, 2020 M.Asai (event-V10-06-03)
- Introducing a new General Particle Source energy distribution option,
  that generates flat energy distribution with track weights that
  represents energy spectrum provided by /gps/hist/point commands.
  This option can enhance, for example, higher energy tracks that are
  rare but contribute to the scores.

February 28th, 2020 G.Cosmo (event-V10-06-02)
- Fixed Coverity defect in G4GeneralParticleSourceMessenger.

February 26th, 2020 G.Cosmo (event-V10-06-01)
- Some code cleanup, formatting and C++11 revision.
- Removed obsolete and unused headers.
- Corrected logic in G4VPrimaryGenerator::CheckVertexInsideWorld() method.

December 9th, 2019 B.Morgan (event-V10-06-00)
- Cleanup CMake build, removing obsolete granular library option and
  explicit include_directories.

November 19th, 2019 G.Cosmo (event-V10-05-08)
- Fixed more implicit type conversions.

November 15th, 2019 G.Cosmo (event-V10-05-07)
- Fixed implicit type conversions from size_t to G4int in G4TrackStack
  and G4TrajectoryContainer. Fixed typos and ome code cleanup.

October 25th, 2019 B.Morgan (event-V10-05-06)
- Make -DG4_USESMARTSTACK a public compile definition of G4event
  to propagate it directly to CMake clients.

October 1st, 2019 M. Asai (event-V10-05-05)
- G4SPSEneDistribution.cc: Protect infinite loop caused by while loop.
  Addressing to Bugzilla report #2177.

June 3rd, 2019 M.Asai (event-V10-05-04)
- G4SPSPosDistribution::GetConfineVolume() now returns
  const G4String&.

May 29th, 2019 M.Asai (event-V10-05-03)
- G4SPSPosDistribution.hh: Add get methods for volume confinement
  based on the Geant4 GitHub user request.

March 11th, 2019 G.Cosmo (event-V10-05-02)
- Fixed typos in printouts in G4GeneralParticleSourceMessenger.

January 31st, 2019 I.Hrivnacova
- Merged GitHub PR #4: all Boolean operators now return G4bool.

January 28th, 2019 M.Asai (event-V10-05-01)
- G4HEPEvtInterface.cc : Clean up G4Exception seviorities when
  end-of-file is detected.

December 14th, 2018 M.Asai (event-V10-05-00)
- G4PrimaryTransformer.cc : Allowing absolute zero proper decay time.
  Co-working with particles-V10-05-00 and decay-V10-05-00.

November 9th, 2018 G.Cosmo (event-V10-04-08)
- Fixed printout typos.

May 17th, 2018 J.Madsen (event-V10-04-07)
- updated "thread-local-static-var" model to
  "function-returning-thread-local-static-reference" model
  which fixes Windows DLL + MT

April 30, 2018  M.Asai (event-V10-04-06)
- Re-tagging event-V10-04-04 : Change the default stack to
  G4TrackStak. Addressing to bug report #2040.

April 2, 2018  M.Asai (event-V10-04-05)
- Tag event-V10-04-04 is removed for the time being.
- G4StackManager.cc : code clean up.

March 16, 2018  M.Asai (event-V10-04-04)
- Change the default stack to G4TrackStak. Addressing to bug
  report #2040.

February 8, 2018  Dennis Wright  (event-V10-04-03)
- add deprecation warning for /gun/ionL in
  G4ParticleGunMessenger::SetNewValue()

January 9, 2018, M.Asai (event-V10-04-02)
- G4GeneralParticleSourceMessenger :
  UI command returns an error message if a command is refused due
  to incorrect parameter(s).
- This tag requires intercoms-V10-04-01 tag.

December 26, 2017, M.Asai (event-V10-04-01)
- G4ParticleGunMessenger :
  UI command returns an error message if a command is refused due
  to incorrect parameter(s).
- This tag requires intercoms-V10-04-01 tag.

December 19, 2017, G.Cosmo (event-V10-04-00)
- Fixed self-consistency in G4SPSRandomGenerator header (missing #include).
  Thanks to Raphael Isemann for reporting this.

October 23, 2017, K.L.Genser (event-V10-03-04)
- G4StackManager added #ifdef for the case when a particle IsMuonicAtom

September 12, 2017, K.L.Genser (event-V10-03-03)
- G4StackManager added a case when a particle IsMuonicAtom

June 1, 2017 A.Dotti (event-V10-03-02)
- Fixing gcc-7.1 warnings for fallthroughs in case statements
  G4EventManager and G4StackingManager

May 3, 2017 J.Allison (event-V10-03-01)
- Added more access functions for use by G4GPSModel for visualisation.

April 30, 2017 J.Allison (event-V10-03-00)
- G4SPSPosDistribution.hh: Added GetRotx,y,z access functions.

December 7, 2016 M.Asai (event-V10-02-09)
- Set polarization to pre-assigned decay products. Addressing to
  bug report #1914.

September 2, 2016 M.Asai (event-V10-02-08)
- Changed the way of deleting G4PrimaryVertex objects to avoid
  stack overflow for very large number of primary vertices.

July 27, 2016 M.Asai (event-V10-02-06, -07)
- Particle gun now can shoot ions with floating level base.

July 22, 2016 L.Desorgher  (event-V10-02-05)
- Modification of G4AdjointStackingAction to remove compilation error on Windows.

July 21, 2016 L.Desorgher  (event-V10-02-04)
- Modification of G4AdjointStackingAction
for the implementation of the splitting of the reverse MC tracking.

May 16th, 2016 A.Dotti (event-V10-02-03)
- Fix typos and bug from bugzilla #1860

April 20th, 2016  G.Cosmo (event-V10-02-02)
- Fixed shadowing compilation warnings in G4GeneralParticleSourceMessenger
  for 'ps'.

January 19th, 2016  A.Dotti (event-V10-02-01)
- Introducing G4MultiEventAction to allow multiple
  user actions in the same job

December 28th, 2015 M.Asai (event-V10-02-00)
- Code clean-up.

June 8th, 2015 A.Dotti (event-V10-01-08)
- Fixing valgring report

June 6th, 2015 A.Dotti (event-V10-01-07)
- Protecting the command /gps/source/set in case
  of out-of-bound index.

June 5th, 2015 A.Dotti (event-V10-01-06)
- Further refinement for bug #1744: address case in which
  /gps/source/clear is used
- Increase verbosity of error message for GPS in case
  no sources are defined

May 28th, 2015 A.Dotti (event-V10-01-05)
- Addressing bug #1744
- Increased level of verbosity of /gps/verbose
- /gps/verbose now acts globally on all sources in case of multiple ones
  (no need to activate verbosity for each source)

April 6th, 2015 A.Dotti (event-V10-01-04)
- Coverity fixes

February 20th, 2015 A.Dotti (event-V10-01-03)
- Clean code and remove not needed thread-local data that
  need to be shared for UI commands to work properly
  (bug introduced in previous tag)

February 20th, 2015 A.Dotti (event-V10-01-02)
- Bug fixing: bringing back of sharing of random generator for SPSPosDistribution class, wrongly made thread-local

February 19th, 2015 A.Dotti (event-V10-01-01)
- Bug fixing for unused variable

February 16th, 2015 A.Dotti (event-V10-01-00)
- Attempting fixing bug #1706

November 20th, 2014 A.Dotti (event-V10-00-19 and -20)
- Coverity fixes for G4Adjoint* classes

November 20th, 2014 A.Dotti (event-V10-00-18)
- Coverity fixes for G4SPSEneDistribution

November 6th, 2014 A.Dotti (event-V10-00-17)
- Coverity fixes for G4SPSEneDistribution

October 22nd, 2014 M.Asai (event-V10-00-16)
- G4Event.hh: Added const-qualifiers forgot with V10-00-10 tag.

October 16th, 2014 A.Dotti (event-V10-00-15)
- Adding G4MUTEXDESTROY for GPS classes

October 10th, 2014 A.Dotti (event-V10-00-14)
- New strategy for GPS messenger: it is instantiated w/ singleton
  pattern. UI commands are created in a worker thread, but commands
  are executed by master. Requires intercoms-V10-00-13

October 10th, 2014 A.Dotti (event-V10-00-13)
- Fix for unitialized array in G4SPSEneDistribution

October 8th, 2014  A.Dotti (event-V10-00-11 and -12)
- Correction in logic of normalization of sources for
  GPS.
- Initialize mutex for G4SPSEneDistribution class

October 1st, 2014  M.Asai (event-V10-00-09 and -10)
- Introduing the mechanism of G4Event not to be deleted until it is
  visualized by the other thread.

September 25th, 2014  M.Asai (event-V10-00-08)
- G4GeneralParticleSourceMessenger.cc : Change G4ParticleTable::GetIon()
  to G4IonTable::GetIon().

Aug 29th, 2014  A.Dotti (event-V10-00-07)
- Coverity fix #56594

July 21st, 2014 A.Dotti (event-V10-00-06)
- Fix for bug #1656: G4SPSPosDistribution::GenerateOne() not
  working correctly for GeneratePointsOnSurface() and
  GeneratePointsInVolume()

June 10th, 2014 A.Dotti (event-V10-00-05)
- Removing data-race conditions in G4SPSEneDistribution class

June 4th, 2014 A.Dotti (event-V10-00-04)
- Correcting compilation warnings and errors.
- Small changes to G4SPSEneDistribution: further memory reduction

June 4th, 2013  L.Desorgher (event-V10-00-03)
- G4AdjointPrimaryGenerator: Add splitting of fwd gamma primaries to improve
  convergence of G4RMC.

June 3rd, 2014 A.Dotti (event-V10-00-02)
- First implementation of memory reduction mechanism in MT
  courtesy of Andrew Green (Manchester U).

February 21st, 2014  M.Asai (event-V10-00-01)
- G4SPSPosDistribution::IsSourceConfined() : Add protection against
  null pointer. Addressing to Bug report #1255.

January 23rd, 2014  M.Asai (event-V10-00-00)
- Change the default value of Q (charge) for /gun/ion and /gun/ionL commands.
  Now electrons are fully stripped (i.e. Q = Z) if Q is not specified.

November 7th, 2013  L.Desorgher (event-V09-06-21)
- Modification of adjoint classes to migrate to the new RMC schema where reverse
 and forward trackings of  equivalent adjoint and forward primaries are processed
 in the same events. This in preparation for the migration to the G4MT mode.

September 9th, 2013  M.Asai (event-V09-06-20)
- Change the warning message in G4StackManager on missing process
  manager to be issued only when the verbose level is greater than 0.

September 6th, 2013  M.Asai (event-V09-06-19)
- Fix incorrect initialization in G4ParticleGunMessenger class for
  /gun/ionL command.

September 6th, 2013  M.Asai (event-V09-06-18)
- Remove G4ParticleTable::GetIon() and use G4IonTable::GetIon()
  instead.

August 31st, 2013  M.Asai (event-V09-06-17)
- Fix the way of detecting improper process namager.

August 29th, 2013  M.Asai (event-V09-06-16)
- Retagged with more optional verbosity.

August 28th, 2013  M.Asai (event-V09-06-15)
- Split class mechanism of G4ParticleDefinition has been changed.
  Now all general ions share the object ID with GenericIon so that
  TLS pointers to G4ProcessManager are not created for such ions.

August 23rd, 2013  M.Asai (event-V09-06-14)
- G4StackManager now checks a track having proper process manager.

August 14th, 2013  M.Asai (event-V09-06-13)
- G4ParticleGunMessenger: /gun/particle commands now consults to the particle
  table for all the available particles except general ions.

August 9th, 2013 Dennis Wright (event-V09-06-12)
- include G4GeneralParticleSourceMessenger.cc which was omitted in previous tag
  IonLvlCommand and relevant data members added to
  G4GeneralParticleSourceMessenger.hh

July 31st, 2013  Dennis Wright (event-V09-06-11)
- G4ParticleGunMessenger.hh, .cc: add G4UIcommand ionLvlCmd so that particle
  gun can shoot ions with integer isomer level
- G4GeneralParticleSourceMessenger.hh: add ionL command (see above comment)

July 11th, 2013, M.Asai (evet-V09-06-10)
- Remove unnecessary static G4ThreadLocal variables in G4PrimaryTransformer.

June 21, 2013, M.Asai (event-V09-06-09)
- Clean up G4cout messages for beta release.

June 7th, 2013, M.Asai (event-V09-06-08)
- Move the access method of G4StateManager::GetStateManager() to the
  constructor of G4EventManager to reduce the use of TLS pointer.

June 7th, 2013, L.Desorgher (event-V09-06-07)
- Remove the call of aSolid->SurfaceNormal() in  G4AdjointPosOnPhysVolGenerator::GenerateAPositionOnASolidBoundary that was
  generating warnings. Suggested by G. Cosmo

May 26th, 2013, M.Asai (event-V09-06-06)
- Adding additional checks on file I/O and verbosity to G4HEPEvtInterface.

May 22nd, 2013, B.Morgan (event-V09-06-05)
- Ensure deletion of "angsigmayCmd1" G4UIcommand instance in destructor of
  G4GeneralParticleSourceMessenger, fixing minor memory leak.

May 15th, 2013, M.Asai (event-V09-06-04)
- Change the type of the argument of the constructor of G4HEPEvtInterface
  from char* to const char*.

Apr. 10th, 2013, G.Cosmo (event-V09-06-03)
- Cleanup of automatic changes for MT in classes: G4Event, G4HEPEvtParticle,
  G4TrajectoryContainer, G4AdjointPosOnPhysVolGenerator and G4EventManager.

Feb. 26th, 2013, L.Desorgher (event-V09-06-02)
- Remove unused variables in G4AdjointPosOnPhysVolGenerator,
  G4AdjointPosOnPhysVolGenerator, G4GeneralParticleSource,
  G4SPSEneDistribution, and G4SPSRandomGenerator.

December 4th, 2012, M.Asai (event-V09-06-01)
- Delete undeleted UI command in the destructor of G4StackMessenger.
  Addressing problem report #1380.

December 3rd, 2012, M.Asai (event-V09-06-00)
- Remove obsolete classes G4CellScorer and G4CellScorerStore.

November 27th, 2012, Hisaya Kurashige (event-V09-05-17)
- Add clearAndDestory() method to G4TrackStack and G4SmartTrackStack
  and use this method in G4StackManager::clear()
  This fixes problem with memory leak

November 9th, 2012, P. Mato (event-V09-05-16)
- G4StackManager, G4SmartTrackStack: set stack at well defined state at new event
  This fixes problem with reproducibility

November 8th, 2012, M.Asai (event-V09-05-15)
- Fixed uninitialized valiables in G4SmartTrackStack.

November 5th, 2012, P. Mato (event-V09-05-14)
- G4StackManager: moved a bunch of inlined methods from header to the implementation file
  because the pointer "urgentStack" was visible from client code with a different type.
  This fixes the crashes observed (only visible on Windows VC10) in the following tests:
    example-ext-radioactivedecay-rdecay01, example-nov-n04

November 2nd, 2012, M.Asai (event-V09-05-13)
- Removed inline keyword from G4EventManager::AbortEvent() to prevent incorrect
  inlining for VC++ if SmartStack is used.

October 15th, 2012, M.Asai (event-V09-05-12)
- Added warning messages to G4CennScorer and G4CellScorerStore classes which will
be dropped fromversion 10.0.

October 11th, 2012, P.Mato (event-V09-05-11)
- Fixed warning of a possible use of uninitialized variable

October 10th, 2012, P.Mato (event-V09-05-10)
- Fixed problem with new implementation of G4StackManager::TransferOneStackedTrack

October 5th, 2012, P.Mato (event-V09-05-09)
- Fixed problem with G4SmartTrackStack not to use particle defitions
  pointers and use PDG code instead

October 5th, 2012, S. Kamperis, P.Mato (event-V09-05-08)
- G4StackTrack, G4StackedTrack: Changed the implementation of G4StackTrack to use a
  std::vector<G4StackedTrack> (by value!) instead of double linked list. Performance
  has been measured to be 35% better with a simple test program in test/testStackManager.cc

- G4SmartTrackStack: Introduced the changes provided by Stathis Kamperis (GSOC) with the
  best tunning for the parameters (4-5% persistent reduction in total execution time in FullCMS)
  See his presentation at: https://indico.cern.ch/getFile.py/access?contribId=35&sessionId=4&resId=0&materialId=slides&confId=199138

- Enabled by default the use of G4SmartTrackStack (-DG4_USESMARTSTACK)

July 5th, 2012, G.Cosmo (event-V09-05-07)
- Explicitly use inclusion of headers for system of units and physical
  constants, in plan to remove implicit inclusion from globals.hh.

July 4th, 2012, J.Allison (event-V09-05-06)
- G4TrajectoryContainer: added private copy constructor and assignment
  operator in attempt to keep Coverity quiet.

May 24th, 2012, G.Cosmo (event-V09-05-05)
- Fixed trivial cases of variable shadowing.

April 2nd, 2012, L.Desorgher (event-V09-05-04)
- Correction for orthogonalization of rotation matrix in
  G4SPSPosDistribution::GenerateRotationMatrices() as suggested by
  Joaquin Phoenix (bug report #1299)

March 8th, 2012, M.Asai (event-V09-05-03)
- Correct the location of G4Exception to the constructor of
  G4UserEventAction.

March 6th, 2012, M.Asai (event-V09-05-02)
- Add dummy copy constructor and = operator to G4Event. (bug report 1277)

January 12th, 2012, L.Desorgher (event-V09-05-01)
- Correction for settings of sigmaX and sigmaY in
  G4SPSPosDistribution::SetBeamSigmaInR () as suggested by
  Guan, Fada (bug report #1278).

November 10th, 2011, M.Asai (event-V09-04-09)
- Fixing Coverity warnings.

October 28th, 2011, M.Asai (event-V09-04-08)
- Cleaning up
 -- G4ParticleGun.hh : added "const" to get methods and removed unnecessary inline keyword
 -- G4SPSPosDistribution.cc : remove warning messages from Xcode on Mac

October 20th, 2011, M.Asai (event-V09-04-07)
- Removing obsolete G4Exception.

July 7th, 2011, G.Cosmo (event-V09-04-06)
- Fixed Coverity defects for uninitialised static data.

June 21st, 2011, G.Cosmo (event-V09-04-05)
- Fixed compilation warnings on gcc-4.6.0 for unused variables in
  G4SPSPosDistribution and G4AdjointPosOnPhysVolGenerator sources.

June 18th, 2011, H.Kurashige (event-V09-04-04)
- Modify G4ParticleGun (and related) to use momentum direction

June 16th, 2011, H.Kurashige (event-V09-04-03)
- Fix bugs in G4HEPEvtInterface.
  In creation of G4PrimaryParticle, only PDG code is given to the constructor. Then mass and momentum is set .
- Modify G4RayShooter and G4SingleParticleSource to use kinetic energy and momentum direction
  instead of momentum.

June 14th, 2011, H.Kurashige (event-V09-04-02)
- Modify G4ParticleGun and G4PrimaryTransformer to use kinetic energy and momentum direction
  instead of momentum.
  (It requires particles-V09-04-06)

May 20th, 2011, B.Morgan (event-V09-04-01)
- CMakeLists.txt : Added G4EVENT_ALLOC_EXPORT compiler definition via
  add_definitions so it's applied to all sources in this module.

February 10th, 2011, M.Asai (event-V09-04-00)
- Adding one more reset of abortRequested flag at the top of G4EventManager::DoProcessing().
- Addressing to Bug report #1169.

December 15th, 2010, M.Asai (event-V09-03-10)
- Fixing incorrect destination stack for the case more than three track stacks are used.

November 24th, 2010, M.Asai (event-V09-03-09)
- Added protection against null pointer : G4TrackStack.cc, G4SmartTrackStack.cc

Novemver 10th, 2010, F.Lei (event-V09-03-08)
- User can now specify arbitrary energy distribution by supplying the data points
  in a 2-column (energy<in MeV> and flux) ASCII file, via the UI command
   /gps/hist/file your_file_name
- Further update of the auto energy biasing implementation
- Bug fix (new implementation) in the Spline interpolation implementation
- Bug fix in the Logarithm interpolation implementation (alpha = -1 case).

November 8th, 2010, M.Asai (event-V09-03-07)
- Setting touchable history of the origin to G4Track.

November 2nd, 2010, F.Lei
- Implemented concrete destructor for G4SPSEneDistribution (bug #1149)
- Added automatic energy biasing scheme. Users now can bias the energy distribution
  sampling to a given power-law distribution (index alpha) via the UI command
    /gps/ene/biasAlpha alpha
  Files affected are
	G4SingleParticleSource.hh .cc
	G4SPSEneDistribution.hh .cc
	G4SPSRandomGenerator.hh .cc
	G4GeneralParticleSourceMessenger.hh .cc

October 27th, 2010, G.Cosmo (event-V09-03-06)
- Restored DLL setup as originally. Withdrawn changes in last tag.

October 19th, 2010, G.Cosmo (event-V09-03-05)
- Replaced G4EVENT_ALLOC_EXPORT flag with G4ALLOC_EXPORT for DLL exported
  symbols.

August 9th, 2010, M.Asai (event-V09-03-04)
- Fixing electron mass correction for ions in G4PrimaryTransformer.

June 11th, 2010, M.Asai (event-V09-03-03)
- Remove obsolete CLHEP_HepMC option from G4EventManager class.

May 20th, 2010, F.Lei (event-V09-03-02)
- Added a number of Get methods to G4SPSEneDistribution.hh

April 19th, 2010, M.Asai (event-V09-03-01)
- Improving a logic in G4PrimaryTransformer. Addressing the problem report #1101.

April 19th, 2010, M.Asai (event-V09-03-00)
- Fix warning message in G4SmartTrackStack found with gcc 4.5.0.

Movember 18th, 2009, G.Cosmo (event-V09-02-05)
- Fixes to "Adjoint" classes to allow build of DLLs on Windows: renamed all
  methods and data holding "External" as keyword to "Ext".
  Cleanup of the code: use "const G4String&" instead of "G4String" wherever
  possible; use G4 types in consistent way; avoid usage of "isNan"; code
  formatting cleanup; added Geant4 disclaimer.

November 6, 2009, L.Desorgher (event-V09-02-04)
- First commit of G4Adjoint calsses for event category
  New classes are G4AdjointPosOnPhysVolGenerator,G4AdjointPrimaryGenerator, G4AdjointStackingAction

September 16, 2009, M.Asai (event-V09-02-03)
- Improved the logic in G4SmartTrackStack.
- Added /event/stack/verbose to have a short report of peak number of tracks in
  the urgent stack.

August 17, 2009, M.Asai (event-V09-02-02)
- Introducing G4SmartTrackStack class. By using this new stack as the urgent stack of
  G4StackManager, the next track poped up from the stack is not necessarily the last
  track stored in the stack, but the track of same particle type as the previous one,
  as long as such a track exists in the urgent stack. This mechanism is expected to
  improve the performance for ultra-large scale simulation such as LHC, by increasing
  the cashe hit rate of the physics tables.
- The use of G4SmartTrackStack is optional. To use it, uncomment the "#define" line
  in include/evmandefs.hh.

June 29, 2009, M.Asai (event-V09-02-01)
- Fix warning message in G4SPSEneDistribution.cc.

February 17, 2009, F. Lei (event-V09-02-00)
- Minor chnages to G4GeneralParticleSourceMessenger.cc. It now uses the full ranges of units pre-defined in G4 for length, energy and angle.

September 02, 2008, G.Cosmo (event-V09-01-01)
- Removed some redundant semicolons in G4SPSAngDistribution header...

June 02, 2008, F. Lei (event-V09-01-00)
- Cleared gcc 4.3 compilation warning (src/G4SPSEneDistribution.cc:1155)
- Added a few Get methods to G4SPSAngDistribution (bug #1013)

December 4, 2007, F. Lei (event-V09-00-03)
- Fixed the problem in bug report #988

November 7, 2007, M.Asai (event-V09-00-02)
- Added private copy constructor and =, ==, += operators to G4ParticleGun. Addressing to Bug Report 984.

October 1, 2007, P.Gumplinger and M.Asai (event-V09-00-01)
- Add UI commands /gun/momentum and /gun/momentumAmp
  for example: /gun/momentumAmp 1.0 GeV (not GeV/c)!

September 28, 2007, P.Gumplinger (event-V09-00-00)
- Add class member particle_momentum and
  method SetParticleMomentum(G4double)

June 11, 2007, G.Santin (event-V08-03-02)
- Fix to normalisation of source intensities with multiple sources:
  G4GeneralParticleSource::IntensityNormalization

June 4, 2007, A.Howard (event-V08-03-01)
- Put back some classes required for scoring of biasing cells:
  G4CellScorerStore and G4CellScorer

May 31, 2007, A.Howard (event-V08-03-00)
- Removal of classes from old biasing/scoring scheme:
  G4CellScorer, G4CellScorerStore, G4ScoreTable, G4Scorer
- Files remain on the HEAD for testing purposes

March 8, 2007, M.Asai (event-V08-02-01)
- Consolidation of previous tag with a new flag in G4EventManager.

March 5, 2007, M.Asai (event-V08-02-00)
- Prevent from unnecessary creation of G4String objects in G4Event, which were
default for random number status.

November 17, 2006, F.Lei (event-V08-01-03)
- Improved implementation of flat_sampling (biasing) for multiple sources in GPS.

November 17, 2006, F.Lei (event-V08-01-02)
- First implementation of flat_sampling (biasing) for multiple sources.

November 10, 2006, F.Lei (event-V08-01-01)
- Added line 468 to for initialization to G4PSEneDistribution.cc

November 02, 2006, M.Asai (event-V08-01-00)
- Add a flag in G4Event to keep the particular event object until the end of current run.
- Add a set method to G4EventManager to control the above flag and add a UI command in G4EvManMessenger.

June 15, 2006, M.Asai (event-V08-00-04)
- Add zero vector check for polarization of optical photon in G4PrimaryTransformer.

May 10, 2006, M.Asai (event-V08-00-03)
- Import G4RayShooter from visualization/RayTracer.

May 06, 2006, M.Asai (event-V08-00-02)
- Store random number status to G4Event.

May 05, 2006, M.Asai (event-V08-00-01)
- G4EventManager : Set G4Event pointer before the G4State is changed.

March 03, 2006, M.Asai (event-V08-00-00)
- Bug fix in rarely used G4ParticleGun constructor.

November 30, 2005, G.Cosmo (event-V07-01-05)
- Trivial fixes to G4SPSAngDistribution and G4SPSPosDistribution for
  support of CLHEP-2.0.X series.

November 22, 2005, M.Asai (event-V07-01-04)
- Put G4Exception to the constructors of G4UserEventAction and
  G4UserStackingAction to protect against their instantiation before
  G4VUserPhysicsList is instantiated and set to G4RunManager.
- Put protection against null pointer to
  G4ParticleGun::SetParticleDefinition().

November 21, 2005, M.Asai (event-V07-01-03)
- Fix a bug in the previous tag.

November 18, 2005, M.Asai (event-V07-01-02)
- Migration to sstream.
- Move G4HepMC classes to examples/extended/eventgenerator/HepMC.

October 20, 2005, Joseph Perl (event-V07-01-01)
- Tag to co-work with vis-V07-01-05.

Oct 17, 2005 Jane Tinslay
- Modify GNUmakefile to follow intercoms->graphics_reps migration for
  G4VGraphicsScene and G4VVisManager

Sep 05, 2005, F.Lei (event-V07-01-00)
- Corrected typo in printout in G4GeneralParticleMessenger.cc (bug #786)

Jun 13, 2005, G.Cosmo (event-V07-00-05)
- Corrected typo in printout in G4GeneralParticleMessenger.cc.

May 30, 2005, M.Asai (event-V07-00-04)
- Modify G4PrimaryTransformer to accept exotic particles.

May 10, 2005, F.Lei  (event-V07-00-03)
- commentingt out line 157 in G4SinglePariclesource.cc. Fixing a bug in
   particle weight

Apr 26, 2005, M.Asai (event-V07-00-02)
- Modify G4PrimaryTransformer
 - to accept shortlived primary particle with proper decay table,
 - to issue a warning message if a shortlived primary does not have decay table nor
   pre-assigned decay mode,
 - and to add a new virtual method to alter the conversion of such shortlived into
   a track (default implementation converts it).
- Modify G4ParticleGun and G4ParticleGunMessenger to accept shortlived primary particle
  with proper decay table.

Mar 24, 2005, M.Asai (event-V07-00-01)
- Move G4PrimaryParticle, G4PrimaryVertex, G4VUserPrimaryParticleInformation and
  G4VUserPrimaryVertexInformation to particles/management.
- Modify G4PrimaryTransformer to take care of a mass defined in G4PrimaryParticle
  if it is defined.

Jan 26, 2005, F.Lei  (event-V07-00-00)
- bug (typo) fix in G4SPSRandomGenerator.cc (lines 608,709)
- restored the inheritance to G4VPrimaryGenerator for G4GeneralParticleSource
- bug fix in G4SPSEneDistribution.cc (lines 1168,1169)

Dec 02, 2004, M.Asai (event-V06-02-04)
- Migration to <cmath>.

Oct 28, 2004, F.Lei  (event-V06-02-03)
- Added new features, focused beam and multiple vertexes, to GeneralParticleSource.

Aug 10, 2004, M.Asai (event-V06-02-02)
- G4PrimaryTransformer becomes a base class.

Jul 7, 2004, M.Asai (event-V06-02-01)
- Treatment of G4UnknownParticle is added to G4PrimaryTransformer.

Jul 1, 2004, G.Cosmo (event-V06-02-00)
- Trivial fix for porting on gcc-3.4.0 compiler: removed extra semicolons
  in G4CellScorerStore.cc.

Jun 11, 2004, G.Cosmo (event-V06-01-07)
- Use global flag G4EVENT_ALLOC_EXPORT to export extern symbols for DLLs.
  Modified GNUmakefile and rearranged usage of extern symbols in classes.

Jun 9, 2004, G.Cosmo (event-V06-01-06)
- Adopt G4DLLIMPORT/G4DLLEXPORT technique to handle extern simbols for
  allowing support of DLLs on Windows.
- Coworks with "global-V06-01-02b".

Jun 7, 2004, G.Cosmo (event-V06-01-05)
- Export extern symbols for allowing support of DLLs on Windows. Modified files:
  G4Event.hh, G4HEPEvtParticle.hh, G4PrimaryParticle.hh, G4PrimaryVertex.hh,
  G4StackedTrack.hh, G4TrajectoryContainer.hh.
- GNUmakefile: added definition of GLOBLIBS for DLLs support on Windows.
- Coworks with "global-V06-01-02a".

May 26, 2004, M.Asai (event-V06-01-04)
- Fix incorrect behaviour of event abortion requested by BeginOfEventAction.

May 04, 2004, M.Asai (event-V06-01-03)
- Access methods to G4TrackingManager and G4StackManager are added
  to G4EventManager.

Apr, 26, 2004, F. Lei (event-V06-01-02)
- Restored a few methods to G4GeneralParticleSource.hh to maintain backward
  compatibility.

Apr, 5, 2004, F. Lei (event-V06-01-01)
- Added "UserWRTSurace = true", "UserAngRef= flase" to constructor of
  G4SPSAngDistribution.
- Apply the Max/Min angle limits to the User defined angular distribution case.
- New formula for conevrting integral spectrum to differential one.

Apr, 1, 2004, F. Lei (event-V06-01-00)
- Major design iteration of the G4GeneralParticleSource class. The following
  new classes have been added:
	- G4SingleParticleSource
	- G4SPSEneDistribution
	- G4SPSAngDistribution
	- G4SPSPosDistribution
	- G4SPSRandomGenerator
  See http://reat.space.qinetiq.com/gps for more details of the changes.

Mar. 15, 2004, M.Asai (event-V06-00-01)
- LocateGlobalPointAndSetup() method of G4Navigator is now invoked at the
  beginning of each event to reset the navigator.

Feb. 22  2004, H.Kurashige (event-V06-00-00)
- Bug Fix in the destructor of G4ParticleGunMessenger

Nov 19 2003, M.Asai (event-V05-02-09)
- G4ParticleGun.cc, G4ParticleGunMessenger.cc:
 - Added protection against shooting shortlived particle.

Oct 13 2003, F.Lei (event-V05-02-08)
- increased the array size from 256 to 1024 for user defined histograms.
- Bug fix in G4GeneralParticleSource.cc: make sure the SideRefVec(1/2/3) are unit
  vectors.

Oct 03 2003, G.Cosmo (event-V05-02-07)
- GNUmakefile:
  o added dependency to new module "geometry/navigation".
  o replaced "digits+hits" with "digits_hits".
- Coworks with "geometry-V05-02-00" and "digits_hits-V05-02-00".

Oct 01 2003, M.Asai (event-V05-02-06)
- Set G4DynamicParicle the pointer to the corresponding primary particle.

Sep 12 2003, M.Asai (event-V05-02-05)
- Introducing G4VUserPrimaryVertexInformation and G4VUserPrimaryParticleInformation
  classes, which can be associated with G4PrimaryVertex and G4PrimaryParticle,
  respectively.
- Adding a treatment of "proper decay time" for preassigned decay products.
- Introducing G4StackChecker class, a utility class which can be used by a user.

Sep 09 2003, M.Asai (event-V05-02-04)
- Introducing G4VUserEventInformation class, which can be associated with G4Event.

Aug 13 2003, M.Asai (event-V05-02-03)
- Introducing another entry method G4EventManager::ProcessOneEvent which takes
  G4TrackVector class object.
- Adding a mechanism of merging more than one kinds of primaries (HepHC and
  G4PrimaryVertex or G4TrackVector and G4PrimaryVertex).
- Change the trackID numbering scheme for "PostposedToNextEvent" tracks.
  Now they have negative trackID.

Aug 11 2003, M.Asai (event-V05-02-02)
- Maintain links between pre-assigned decay products and corresponding primary
  particle. Becuse of this, G4PrimaryParticle objects of pre-assigned decay
  have proper track ID.

Aug 01 2003, M.Asai (event-V05-02-01)
- Introducing a new entry method G4EventManager::ProcessOneEvent which takes
  HepMC event class object instead of G4Event object.
- G4HepMCInterface::HepMC2G4 becomes a static service method.
- G4HepMCInterface::CheckVertexInsideWorld is moved to G4VPrimaryGenerator and
  also becomes a static servic method.

Aug 01 2003, M.Asai (event-V05-02-00)
- With introducing G4RunManagerKernel class in Run category, G4EventManager now
  toggles the application states between G4State_GeomClosed and G4State_EventProc.

Jun 04 2003, G.Cosmo (event-V05-01-02)
- Fixes for inclusion of <strstream> in G4HEPEvtInterface.cc in view
  of the g4std wrappers migration.

Jun 03 2003, G.Cosmo (event-V05-01-01)
- Fixed trivial warning in G4GeneralParticleSourceMessenger.cc.

May 21 2003, M.Asai (event-V05-01-00)
- Clean up unused variables.

Dec 06 2002, G.Cosmo (event-V04-01-11)
- Corrected tag to include also "event-V04-01-09" !!

Dec 04 2002, M.Asai (event-V04-01-10)
- Migration to new G4ApplicationState

Dec 03 2002, M.Asai (event-V04-01-09)
- Fix memory leak caused by deleting stacked tracks.

Dec 03 2002, G.Cosmo (event-V04-01-08)
- Protect code defining interface to HepMC from compilation on Windows systems.
  Temporarly solution until CLHEP will support the HepMC module on Windows.

Nov 25 2002, M.Asai (event-V04-01-07)
- Fix a bug in G4CellScorer.cc

Nov 18 2002, M.Asai (event-v04-01-06)
- Introducing HepMC interfaces
- Tag for Geant4 5.0 release

Nov 4th 2002 M.Dressel (event-V04-01-05)
     - remove G4std:: where it does not belong to

Oct 28 2002, M.Dressel (event-V04-01-04)
- Added G4CellScorer[.hh.cc], G4CellScorerStore[.hh.cc], G4ScoreTable[.hh.cc], G4Scorer[.hh.cc]

Oct 06 2002, M.Asai (event-V04-01-03)
- Protect user's mis-use of destructor of G4TrajectoryContainer.
  By design it was expected that G4TrajectoryContainer would be
  deleted by G4Event destructor, after "clearAndDestroy" is
  separately invoked.

Aug 19 2002, M.Asai (event-V04-01-02)
- Change the default value of charge for G4PrimaryParticle.

Aug 13 2002, M.Asai (event-V04-01-01)
- G4Event: Introducing an EventAborted flag.

Jun 29 2002, V.Ivantchenko (event-V04-01-00)
- G4PrimaryParticle: fixed initialisation of 'charge' in constructors.

Jun 8 2002, M.Asai (event-V04-00-04)
- Fix G4TrajectoryContainer to be compliant to gcc-3.1.

May 29 2002, M.Asai (event-V04-00-03)
- Added TransferOneStackedTrack() method to G4StackManager.

May 15 2002, M.Asai (event-V04-00-02)
- Introducing new G4TrajectoryContainer class which aggregates STL vector,
  instead of deriving from STL vector.

Feb 26 2002, G.Cosmo (event-V04-00-01)
- Optimised implementation of SetNewValue() in G4ParticleGunMessenger and
  G4GeneralParticleSourceMessenger to allow porting on WIN32-VC for optimised
  compilation.

Jan 22 2002, M.Asai (event-V04-00-00)
- Remove the check G4PrimaryTransformer whether the primary vertex is inside
  the world volume. The check has been moved to G4SteppingManager.

Nov 21 2001, M.Asai (event-V03-02-09)
- G4PrimaryTransformer.cc: now considering case where a primary is placed on the
  boundary of the world volume. Added units.

Nov 20 2001, M.Asai (event-V03-02-08)
- Add check whether the primary vertex is inside of thw world volume.
- Move set method of position and time from G4ParticleGun to G4VPrimaryGenerator
  so that G4HEPEvtInterface can accept the primary vertex position

Nov 10 2001, M.Asai (event-V03-02-07)
- Tagged.

Oct 19 2001, F. Lei
- Code changes to remove compilation warnings un gcc-2.95.2
- Added Beam option for generating accerlator beams

Oct 11 2001, G.Cosmo (event-V03-02-06)
- Replaced inclusions of ctoken.h with G4Tokenizer.hh in
  G4GeneralParticleSourceMessenger.cc and G4ParticleGunMessenger.cc.
  Removed comment on RW wrappers.
- Co-works with tag "globals-V03-02-03" where the STLInterface
  module has been removed.

Aug 27 2001, M.Asai (event-V03-02-05)
- Convert NULL to 0 in G4EventManager.cc

Aug 17 2001, M.Asai (event-V03-02-04)
- G4EventManager.cc is debugged according to bug report 289.

July 19 2001, M.Asai (event-V03-02-03)
- Tagged

July 19 2001, F.Lei
- Most commands under G4ParticleGun class are now available under GPS

    e.g..
    /gun/position => /gps/position
    /gun/direction => /gps/direction
    /gun/energy  => /gps/energy
   ...

- Implemented co-ordinates rotation for angular distribution. User defined
co-ordinates was an option available to user in the messenger but not
implemented internally in the older version gps.
Source angular distribution coupled with positional distribution can lead to
rather strange combinations. To avoid this I used a simple scheme in this
implementation:

- For cos-law angular distribution the default maxtheta is set to pi/2.
    instead of pi. The user can of course re-set this to any number between
        0 - pi.

- Added user defined histogram re-set method. After re-set user can
      redefine all the histograms. To use
        /gps/resethist  'histname'
-  Bug fixed in generating theta, and in calculating the weight.

- Added further guidance in the messenger for the definition of pre-defined
    energy distributions

Jul 18 2001, M.Asai (event-V03-02-02)
- Added a new feature for the user to increase the number of waiting stacks.

Jul 17 2001, M.Asai (event-V03-02-01)
- G4PrimaryParticle now stores the proper trackID.

Jul 13 2001, G.Cosmo (event-V03-02-00)
- Cleanup of pedantic warnings in Linux-g++ ANSI setup.
- Corrected "int" to "G4int".
- Corrected "NULL" to "0".
- Synchronised with HEAD revision after inclusion of disclaimer
  liability.

Jun 28 2001, G.Cosmo (event-V03-01-01)
- Added CVS headers to G4GeneralParticleSource[.hh.cc] and
  G4GeneralParticleSourceMessenger[.hh.cc].
  Removed <CR> characters and corrected format for comments to
  appear in the Software Reference Manual.

Apr 20 2001, G.Cosmo (event-V03-01-00)
- Modified G4GeneralParticleSource.cc according to recent migration to
  STL vector for the geometry domain (tag "geometry-V03-01-00").

Feb 8 2001, M.Asai (event-V03-00-03)
- Migration to STL vector classes
  affected files :
./event/include/G4HEPEvtInterface.hh
./event/include/G4PrimaryParticle.hh
./event/include/G4TrajectoryContainer.hh
./event/src/G4EventManager.cc
./event/src/G4GeneralParticleSource.cc
./event/src/G4HEPEvtInterface.cc
./event/src/G4PrimaryParticle.cc
./event/src/G4PrimaryTransformer.cc

Feb 7 2001, M.Asai (event-V03-00-02)
- Add proper time to G4PrimaryParticle

Feb 7 2001, M.Asai (event-V03-00-01)
- Fix syntax errors in G4GeneralSourceParticle.cc

Feb 5 2001, M.Asai (event-V03-00-00)

Jan 26 2001, F. Lei
- bug fixing in G4GeneralSourceParticle.cc
 replace:
          posphi = acos(tx/sin(posthe));

 with:
          if (posthe != 0. && posthe != pi)
             posphi = acos(tx/sin(posthe));
          else
             posphi = 0.0;
	  endif

Nov 20 2000, G.Cosmo (event-V02-00-04)
- Removed data-logs from test directory.

Nov 13 2000, M.Asai (event-V02-00-03)

Nov 10 2000, F.Lei
- Adding src and include sub-directory and files to test/GeneralParticleSource
- Improving the speed in  G4GeneralParticleSource::GenerateIsotropicFlux() and
   G4GeneralParticleSource::GenerateCoslawFlux()
-    some bug fixing:
          i) dclared ' G4int count' in all ****Interpolation functions
          ii) added ' return (0.) ' to GenerateUserDefTheta and GenerateUserDefPhi
              as default.
	  iii) changed
	       #include <iostream.h>
		 to #include "g4std/fstream"
	      in G4GeneralParicleSourceMessenger.cc

Nov 9 2000, M.Asai (tag event-V02-00-02)
- Adding /source/event/test and GeneralParticleSource sub-directory.

Oct 31 2000, F.Lei
  G4GeneralParticleSource:
  G4GeneralParticleSourceMessenger:
 	G4GeneralParticleSource is an alternative primary source
	generator to G4ParticleGun. It has all the functions of
	G4ParticleGun plus many options for specifing the primary
	event particle and vertex.

 - added  -I$(G4BASE)/global/HEPNumerics/include \
      to GNUMakefile


Oct 19 2000, M.Asai (tag event-V02-00-01)
  G4ParticleGun :  Add Set/GetParticleCharge methods for ions.
  G4ParticleGunMessenger : Add new command of /gun/ion
                         : Modify command of /gun/particle
  G4PrimaryParticle : Add Set/GetCharge methods
                    : Add weight
  G4PrimaryVertex : Add weight
  G4PrimaryTransformer : Use G4PrimaryParticle::GetCharge to give dynamic charge
                         in G4DynamicParticle
                       : Set weight of G4Track

July 22 2000, M.Asai (tag event-V02-00-00)
- Adding some new Set methods to G4PrimaryVertex and G4PrimaryParticle
  classes.

Jan 26, 00, M.Asai (tag event-V01-00-01)
- Corrections for trajectories of suspended tracks
- This tag requires tracking-V01-00-01

Jan 12, 00, M.Asai (tag event-V01-00-00)
- G4EventManager becomes a singleton.
- G4EventManager keeps the pointers of all user action classes except
 run action.
- Null pointer protections are added for SetUserAction methods in
 G4EventManager and G4StackManager.

Nov 4, 99, M.Asai (tag event-V00-01-01)
- Comments are enriched for the software reference manual

Oct 4, 99, J.Allison (tag event-V00-01-00)
- Removed -I$(G4BASE)/graphics_reps/include from GNUmakefile (no
  longer necessary after G4VVisManager moved to intercoms).

Jun 7, 99, J.Allison (tag event-01-00-03)
- Trapped "G4HEPEvtInterface:: cannot open file."

Apr 15, 99 M.Asai (tag event-01-00-02)
- Catch up the changes of trajectory classes in tracking category.

Apr 09, 99 M.Asai (tag event-01-00-01)
- Change the pointer arguments in user action classes to const.

Nov 11, 98 M.Asai (tag event-00-03-04)
- Optimize G4PrimaryVertex for events such as having huge number
  of primaries.

Oct 10, 98 M.Asai (tag event-00-03-03)
- Bug fix in G4PrimaryVertex.
- Add verbosity to G4PrimaryXXX.

Oct 01, 98 M.Asai (tag event-00-03-02)
- Introducing a new inlined method in G4ParticleGun.hh.

Sep. 21, 98 M.Asai (tag event-00-03-01)
- Inclusion of "G4HCofThisEvent.hh" and "G4DCofThisEvent.hh" moved
  from "G4Event.cc" to "G4Event.hh", to avoid the link problem on
  HP-CC (not aCC).

July 19, 98 M.Asai (tag event-00-01-03)
- More tight check against EoF in G4HEPEvtInterface

July 15, 98 M.Asai (tag event-00-01-02)

July 4, 98 M.Asai (tag event-00-01-01)
- ready for the beta release

June 30, 98 M.Asai (tag event-00-07-01)
- Introduce shortlived particles

June 22, 98 P. Urban
- Preliminary results of tracking optimisation merged into the HEAD.
- tagged as event-00-06-03

June 10, 98 M.Asai
- G4ParticleGunMessenger.cc is modified to catch up the new G4UIcommand
- tagged as event-00-06-02

June 8, 98 M.Asai
- tagged as event-00-06-01

June 6, 98 M.Asai
- G4Event and G4EventManager is updated for the new "digita+hits" scheme
- GNUmakefile is updated

May 6, 98 M.Asai
- G4ParticleGun is cleaned up.

April 29, 98 G.Cosmo (event-00-05-02)
- Removed print-out of track's pointers from verbose level in
  G4EventManager.cc (P.Urban)

April 22, 98 M.Asai
- Tagged as event-00-05-01

April 9, 98 G.Cosmo
- Porting on DEC-cxx 6.0.
  Removed meaningless usage of "const" qualifier from functions
  return type for basic types by value. Modified files:
  G4StackManager.hh, G4TrackStack.hh

April 6, 97 M.Nagamatu
- modified G4ParticleGunMessenger.cc to fix the "Unit length" of
 /gun/position command.

December 19, 97 G. Cosmo - (alpha03)

- Created.
