# Example field04 History

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

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

## 2024-09-30 Gabriele Cosmo (fieldex04-V11-02-01)
- Use GeometryHasBeenModified() in place of ReinitializeGeometry() in
  DetectorCostruction UI commands implementation, for thread safety.

## 2024-09-18 Gabriele Cosmo (fieldex04-V11-02-00)
- Migrated to use G4RunManagerFactory.
- Use default MixMax random generator.
- Avoid use of G4AutoDelete for G4StepMax, as clashing with thread-local
  singletons deletion operated by G4TaskingRunManager.

## 2023-09-05 Gabriele Cosmo (fieldex04-V11-01-01)
- Replaced use of deprecated G4TouchableHistoryHandle with G4TouchableHandle.

## 2023-07-05 Ivana Hrivnacova (fieldex04-V11-01-00)
- Clang-tidy, new coding guidelines
- Removed dummy F04SteppingActionMessenger
- Clean-up trailing white-spaces

## 2022-11-16 John Apostolakis (fieldex04-V11-00-03)
- Corrected assignement of epsMax=0.001 .  Also epsMin is dimensionless!

## 2022-10-04 Ben Morgan (fieldex04-V11-00-02)
- Replace sprintf with std::to_string to fix deprecation warnings on macOS 13

## 2022-08-26 Gabriele Cosmo (fieldex04-V11-00-01)
- Fixed compilation warning on gcc-12.1 in F04TrajectoryPoint constructor.

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

---

# History entries prior to 11.0

October 25, 2021 B.Morgan - fieldex04-V10-07-00
- Use G4StrUtil functions replacing deprecated G4String member functions

November 19, 2019 G.Cosmo - fieldex04-V10-05-00
- Removed useless double-definition of copy-ctr for F04StepMax and deleted.

July 27, 2018 I.Hrivnacova - fieldex04-V10-04-02
- Macro review and code clean-up:
  - Modify handling program according to basic examples
  - Separated other than visualization settings from vis.mac in a
    new init_vis.mac and added 'startPhase' program argument
  - Added test for commands defined in the example at the end
    of field04.in macro
  - Removed SetCut functions and commands from the physics list and
    physics list messenger (available in G4 kernel)
  - Fixed warnings when geometry parameters are set in PreInit phase
  - Improved visualization of geometry
  - Added "beamOn 10" button in gui.mac
  - Updated README files

May 15, 2018 J.Allison - fieldex04-V10-04-01
- Remove G4UI_USE and G4VIS_USE.
- Move instantiation of G4UIExecutive to start of main.
- vis.mac, gui.mac: Clean up.

May 09, 2018 B.Morgan - fieldex04-V10-04-00
- Include G4Types before use of G4MULTITHREADED. For forward
  compatibility with move to #defines over -D for G4 preprocessor
  symbols.

Nov 02, 2016 L.Garnier (fieldex04-V10-02-03)
- remove icons.mac. Automatically include since interfaces-V10-02-07

Oct 14, 2016 P.Gumplinger - (fieldex04-V10-02-02)
- remove direct use of theParticleIterator, use GetParticleTableIterator().
    fix required by clang39 on Linux and MAC

Jul 07, 2016 P.Gumplinger - (fieldex04-V10-02-01)
- replace F04ExtraPhysics with G4StepLimiterPhysics and
  replace F04OpticalPhysics with G4OpticalPhysics

May 19, 2016 G.Cosmo - (fieldex04-V10-02-00)
- Fixed compilation warning on gcc-6.1 in F04GlobalField.

May 14, 2015 P.Gumplinger - (fieldex04-V10-01-01, 00)
- Removed obsolete /event/drawTrack and /event/printModulo.

November 5, 2014 A.Dotti -  (fieldex04-V10-00-11)
- Bug fixing for shared process.

October 28, 2014 A. Dotti - (fieldex04-V10-00-10)
- Proting to new optical phsyics processes API
  (no statics), requires: xrays-V10-00-06, op-V10-00-09,
  phys-ctor-em-V10-00-18.

February 28, 2014 G. Cosmo - (fieldex04-V10-00-09)
- Corrected mismatch for delete/new of fFp pointer array in Clear()...

February 27, 2014 G. Cosmo - (fieldex04-V10-00-08)
- Set pointer to NULL and fields size to zero in Clear().

February 25, 2014 G. Cosmo - (fieldex04-V10-00-07)
- F04GlobalField.cc : Fix in destructor to also -avoid- deletion of
  fFieldManager!

February 25, 2014 G. Cosmo - (fieldex04-V10-00-06)
- F04GlobalField.cc : Fix in destructor to -not- delete fFieldPropagator
  and set flag in Clear() for avoiding invalid memory access in GetField().

February 18, 2014 P. Gumplinger - (fieldex04-V10-00-05)
- F04GlobalField.cc : try to fix double delete.

December 27, 2013 M. Asai - (fieldex04-V10-00-04)
- F04GlobalField.cc : Fix uninitialized variables.

December 23, 2013 M. Asai - (fieldex04-V10-00-03)
- Limit static method invokation only for master/sequential.

December 22, 2013 M. Asai - (fieldex04-V10-00-02)
- Avoid static method being invoked by a pointer.

December 19, 2013 A. Dotti - (fieldex09-V10-00-01)
- Retagging: previous tag was rejected due to MT issues, but
  problem is not reproducible. Retagging for debugging

December 04, 2013 P.Gumplinger - (fieldex04-V10-00-00)
- replace Update method and commands with ReinitializeGeometry
- put back cleaning volumes and solid stores in Construct()
- More Fixes in gui.mac:
  Let execute vis.mac first to make the command in added menus available;
  Corrected wireframe parameter;

November 30, 2013 M.Asai - (fieldex04-V09-06-08)
- fix additional thread-safety issues.
- Fixed gui.mac (commented out command specific to B2 example)

November 28, 2013 M.Asai - (fieldex04-V09-06-07)
- fix thread-safety issues.

November 15, 2013 P.Gumplinger - (fieldex04-V09-06-06)
- fix compile warning of Windows code in field04.cc

November 13, 2013 P.Gumplinger - (fieldex04-V09-06-05)
- migration to MT

August 26, 2013 P.Gumplinger - (fieldex04-V09-06-04)
- do not execute vis.mac in main

July 29, 2013 P.Gumplinger - (fieldex04-V09-06-03)
- fix MAC/clang32 compilation warnings

Apr 13, 2013 A.Dotti - (fieldex04-V09-06-02)
- Changes in API physics list for MT

Dec 12, 2012 A.Ribon  - not tagged
- I have rejected my previous tag (fieldex04-V09-06-01) and
  switched back to QGSP_BERT_EMV, because it is used via the
  physics list factory, so it is fine!

Dec 12, 2012 A.Ribon - fieldex04-V09-06-01
- Replaced QGSP_BERT_EMV with QGSP_BERT.

Dec 02, 2012 J.Allison - fieldex04-V09-06-00
  Migration to DrawTrajectory() (i_mode argument is no longer available):
  o F04Trajectory.cc: Removed DrawTrajectory(G4int i_mode).
  o F04EventAction.cc: Removed argument from DrawTrajectory().

Nov 28th, 2012 Gabriele Cosmo - fieldex04-V09-05-04
- Fixed cases of variable shadowing.

Nov 14th, 2012 Ivana Hrivnacova - fieldex04-V09-05-03
- In vis.mac: replaced OGLIX with OGL

Nov 6th, 2012 Peter Gumplinger - fieldex04-V09-05-02
- reverse the order of checking thePostLV and thePreLV in the if-statement

Jun 20th, 2012 Peter Gumplinger    - fieldex04-V09-05-01
- remove SetModel from F04OpticalPhysics.cc co-work with op-V09-05-04

Jun 18th, 2012 Gabriele Cosmo      - fieldex04-V09-05-00
- Renamed global allocator for F04Trajectory to not clash with one defined
  in the kernel.

Oct 24th, 2010 Peter Gumplinger    - fieldex04-V09-03-02
- Include Mie scattering process and update usage of G4PhysListFactory

Jun 3rd, 2010, Peter Gumplinger    - fieldex04-V09-03-01
- Modify F04Trajectory class to compile without warnings against
  tracking-V09-03-03 by implementing a DrawTrajectory() method.

March 23rd, 2010, Gunter Folger     - fieldex04-V09-03-00
- Add <ctime> header in src/F04RunAction.cc to fix a compile
  error on windows.

November 6th, 2009 Peter Gumplinger - fieldex04-V09-02-03
- Rewrite F04PhysicsList and F04PhysicsListMessenger and
  use the newly available G4PhysListFactory

October 30th, 2009 John Allison - fieldex04-V09-02-02
- Introduced G4UIExecutive.

June 1st, 2009 Peter Gumplinger - fieldex04-V09-02-01
- Introduce '/rndm/autoSeed' command and changed the seeding of the
  RanecuEngine from time(NULL). Default is autoSeed(false).

May 27th, 2009 Gabriele Cosmo - fieldex04-V09-02-00
-----------------------------
- Commented out timing for initial seed to allow for reproducibility
  or results ...

December 11th, 2008 Peter Gumplinger - fieldex04-V09-01-06
-----------------------------------
- bug: now the density must be given with units before the call to
  ConstructNewMaterial

November 25st, 2008 Peter Gumplinger - fieldex04-V09-01-05
------------------------------------
- change to AddPhysicsList("emstandard")

November 21st, 2008 Peter Gumplinger - fieldex04-V09-01-04
------------------------------------
- changed F04PhysicsList.cc according to
  examples/extended/hadronic/Hadr01

July 3rd, 2008 Peter Gumplinger - fieldex04-V09-01-03
-------------------------------
- fix: setTheEngine BEFORE setTheSeed in field04.cc

June 2th, 2008 Vladimir Ivanchenko - fieldex04-V09-01-02
----------------------------------
- removed obsolete G4HadronProcessStore from PhysicsList

Mar 26th, 2008 Gunter Folger - fieldex04-V09-01-01
----------------------------
- final fix to avoid error log - Invalid rotation specification
  in F04DetectorConstruction::stringToRotationMatrix

Mar 5th, 2008  Peter Gumplinger - fieldex04-V09-01-00
-------------------------------
- fix to avoid error log - Invalid rotation specification
  in F04DetectorConstruction::stringToRotationMatrix

Nov 2nd, 2007  Gabriele Cosmo - fieldex04-V09-00-01
-----------------------------
- Minor fixes for porting on Windows platform.

Oct 29th, 2007  Peter Gumplinger - fieldex04-V09-00-00
--------------------------------
- First implementation.
