Geant4 Cross Reference (Editor's cut)

Cross-Referencing   Geant4
Geant4/g3tog4/History

Version: [ ReleaseNotes ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3 ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ]

  1 # Category g3tog4 History
  2 
  3 See `CONTRIBUTING.rst` for details of **required** info/format for each entry,
  4 which **must** added in reverse chronological order (newest at the top).
  5 It must **not** be used as a substitute for writing good git commit messages!
  6 
  7 -------------------------------------------------------------------------------
  8 
  9 ## 2022-12-12 Ben Morgan (g3tog4-V11-01-00)
 10 - Remove obsolete GNUmakefile scripts
 11 
 12 ## 2022-11-16 Gabriele Cosmo (g3tog4-V11-00-04)
 13 - Fixed compilation warnings for implicit type conversions on macOS/XCode 14.1.
 14 
 15 ## 2022-10-07 Gabriele Cosmo (g3tog4-V11-00-03)
 16 - Fixed compilation warnings on Intel/icc compiler for deprecated conversion
 17   of string literal to char* in G3EleTable.
 18 - Fixed compilation warning on Intel/icx compiler for variable set
 19   but not used in clparse source code.
 20 
 21 ## 2022-10-05 Ben Morgan (g3tog4-V11-00-02)
 22 - Replace sprintf with std::to_string to address macOS 13 deprecation warnings.
 23 
 24 ## 2022-01-28 Ben Morgan (g3tog4-V11-00-01)
 25 - Replace `geant4_global_library_target` with direct file inclusion and
 26   call to `geant4_add_category` to define library build from source modules.
 27 
 28 ## 2021-12-10 Ben Morgan (g3tog4-V11-00-00)
 29 - Change to new Markdown History format
 30 
 31 ---
 32 
 33 # History entries prior to 11.0
 34 
 35 g3tog4-V10-07-04 15-November-2021 I.Hrivnacova
 36 - Fixed Coverity: uninitialized variable in G3EleTable.cc
 37 
 38 g3tog4-V10-07-03 25-October-2021 B.Morgan
 39 - Use G4StrUtil functions replacing deprecated G4String member functions
 40 
 41 g3tog4-V10-07-02 18-October-2021 B.Morgan
 42 - Use std::string member functions from G4String in place of synonyms
 43 
 44 g3tog4-V10-07-01 29-June-2021 G.Cosmo
 45 - Fixed compilation error in G3EleTable when c++20 is enabled.
 46 
 47 g3tog4-V10-07-00 1-April-2021 B.Morgan
 48 - Migrate build to modular CMake API
 49 
 50 g3tog4-V10-06-01 28-May-2020 B.Morgan
 51 - Remove obsolete G4brep module dependency
 52 
 53 g3tog4-V10-06-00 9-December-2019 B.Morgan
 54 - Cleanup CMake build, removing obsolete granular library option and
 55   explicit include_directories.
 56 
 57 g3tog4-V10-05-01 31-January-2019 I.Hrivnacova
 58 - Merged GitHub PR #4: all Boolean operators now return G4bool.
 59 
 60 g3tog4-V10-05-00 19-December-2018 G.Cosmo
 61 - Fixed shadowing compilation warning in G3toG4MakeSolid.
 62 
 63 g3tog4-V10-04-00 9-November-2018 G.Cosmo
 64 - G3Division: fixed printout typo.
 65 
 66 g3tog4-V10-03-00 8-May-2017 G.Cosmo
 67 - Fixed compilation warning on gcc-7.1 in
 68   G4gsdvn::G4CreateCloneVTEWithDivision().
 69 
 70 g3tog4-V10-01-00 2-Feb-2015 G.Cosmo
 71 - Fix to sources.cmake script to include missing dependency on external library.
 72 
 73 g3tog4-V10-00-01 29-Jan-2014 G.Cosmo
 74 - Remove inline specification for G3VolTableEntry::operator==()
 75   in sorce file.
 76 
 77 g3tog4-V10-00-00 29-Jan-2014 G.Folger
 78 - remove BREPS/include from sources.cmake
 79 
 80 g3tog4-V09-06-00 09-Mar-2013 G.Cosmo
 81 - Fixed missing inclusion of assert.h in G3Division.cc.
 82 
 83 g3tog4-V09-05-02 05-Jul-2012 G.Cosmo
 84 - Explicitly use inclusion of headers for system of units and physical
 85   constants, in plan to remove implicit inclusion from globals.hh.
 86 
 87 g3tog4-V09-05-01 06-Jun-2012 G.Cosmo
 88 - Fixed spurious cases of hidden variable visibility, detected with
 89   '-Wshadow' compilation option on gcc compiler.
 90 
 91 g3tog4-V09-05-00 14-Dec-2011 G.Cosmo
 92 - Fixed minor Coverity defects.
 93 
 94 g3tog4-V09-04-07 22-Nov-2011 G.Cosmo
 95 - Fixed compilation warnings in build DLLs on Windows when using
 96   internal CLHEP.
 97 
 98 g3tog4-V09-04-06 16-Nov-2011 B.Morgan
 99 - Added G3toG4Defs.hh to sources.cmake
100 
101 g3tog4-V09-04-05 16-Nov-2011 G.Cosmo
102 - Fixed signature in PG4gsdet() for unresolved symbol in building DLLs
103   on Windows.
104 
105 g3tog4-V09-04-04 15-Nov-2011 G.Cosmo
106 - Added export flag for extern symbols to allow for generation of DLLs
107   on Windows with CMake.
108 
109 g3tog4-V09-04-03 11-Nov-2011 G.Folger
110 - make safe to compile with -j and drop compilation of fortran
111 
112 g3tog4-V09-04-02 06-Jul-2011 G.Cosmo
113 - Fixed Coverity defects.
114 - Use canonic indexed form for G4Exception.
115 
116 g3tog4-V09-04-01 13-May-2011 G.Cosmo
117 - Fixed compilation warnings from gcc-4.6.0 for variables set but not used.
118 
119 g3tog4-V09-04-00 13-Apr-2011 G.Folger
120 - Fixed signature for PG4gsxyzin all G4gsxyz.cc to be G4String *,
121   was G4String[] as used in clparse.cc. Fixes Windows linking problem.
122 
123 g3tog4-V09-01-01 17-Nov-2008 G.Cosmo
124 - Fixed compilation warning for gcc-4.3.X in clparse.cc .
125 
126 g3tog4-V09-01-00 23-Jun-2008 G.Cosmo
127 - GNUmakefile: clean Fortran objects in 'lib' target before building
128   the libraries.
129 
130 g3tog4-V07-01-01 14-Nov-2005 G.Cosmo
131 - Implemented migration to <sstream> from deprecated <strstream>.
132 - GNUmakefile: moved call to 'cernlib' to 'bin' target.
133 
134 g3tog4-V07-01-00 05-Nov-2005 G.Cosmo
135 - G3EleTable.cc: corrected inclusion of <strstrem> in implementation.
136   Temporary solution pending migration to <sstream>.
137   Fixes compilation problem on gcc/AMD64.
138 
139 g3tog4-V07-00-01 26-May-2005 G.Cosmo
140 - Initialise local pointer variable 'mothLV' in method
141   G3toG4BuildTree::G3toG4BuildPVTree().
142 
143 g3tog4-V07-00-00 06-Apr-2005 J.Allison
144 - GNUmakefile: corrected order for graphics_reps and intercoms in the
145   definition of GLOBLIBS.
146 
147 g3tog4-V06-02-00 07-Dec-2004 G.Cosmo
148 - Implemented migration to <cmath>.
149 
150 g3tog4-V06-01-02 17-Jun-2004 G.Cosmo
151 - GNUmakefile: added definition of GLOBLIBS.
152 
153 g3tog4-V06-01-01 03-May-2004 G.Cosmo
154 - G4gsrotm.cc: commented warning about left-handled coordinates for
155   rotation axes (I.Hrivnacova).
156 
157 g3tog4-V06-01-00 26-Mar-2004 G.Cosmo
158 - Removed hardwired gSeparator constant (a character which is used
159   during generation of volume names) to '_'. Now gSeparator is made non
160   constant and so can be changed in case a user wants to use '_' in his
161   code (I.Hrivnacova).
162   Modified files: G3toG4.hh, clparse.cc.
163 
164 g3tog4-V05-02-00 03-Oct-2003 G.Cosmo
165 - GNUmakefile:
166   o replaced "digits+hits" with "digits_hits".
167 - Coworks with "geometry-V05-02-00" and "digits_hits-V05-02-00".
168 
169 g3tog4-V05-01-00 04-Jun-2003 G.Cosmo
170 - Fixes for inclusion of <strstream> in G3EleTable.cc, G3PartTable.cc
171   and G4gsmixt.cc in view of the g4std wrappers migration.
172 
173 g3tog4-V05-00-01 03-Apr-2003 G.Cosmo
174 - Cleared trivial strict pedantic warnings.
175 
176 g3tog4-V05-00-00 27-Jan-2003 G.Cosmo
177 - G4gstmed[.hh.cc] (I.Hrivnacova):
178   o added get functions for the medium table entries:
179     G4int GetSize() const
180     G3MedTableEntry* GetMTE(G4int i) const
181 
182 g3tog4-V04-01-00 23-Oct-2002 G.Cosmo
183 - G4gsdvn.cc, G4gsposp.cc (I.Hrivnacova):
184   o fix to enable larger number of clone volumes
185   o fix for division defined in a mother with not yet defined parameters.
186 
187 g3tog4-V03-02-03 21-Nov-2001 G.Cosmo
188 - Added G3G4_NO_REFLECTION flag to exclude G4ReflectionFactory if needed.
189 - Changed G3Division::CreatePVReplica() to return a G4PhysicalVolumesPair
190   (I.Hrivnacova).
191 
192 g3tog4-V03-02-02 08-Nov-2001 G.Cosmo
193 - Implemented reflection of CSG solids through G4ReflectionFactory class
194   and G4ReflectedSolid (I.Hrivnacova).
195 - Added limited support for MANY volumes through adoption of boolean
196   solids(I.Hrivnacova). New files: G3toG4MANY[.hh.cc], G4gsbool.cc.
197 
198 g3tog4-V03-02-01 11-Oct-2001 G.Cosmo
199 - clparse.cc: removed inclusion of RW wrapper, moved now to G4Tokenizer.hh.
200   This tag co-works with "global-V03-02-03", where STLInterface has been removed.
201 
202 g3tog4-V03-02-00 16-Jul-2001 G.Cosmo
203 - Migration to STL vector, removed references to Rogue-Wave Tools.h++
204   wrappers. Modified files:
205   G3EleTable[.hh.cc], G3MatTable[.hh.cc], G3MedTable[.hh.cc],
206   G3RotTable[.hh.cc], G3VolTableEntry[.hh.cc], G3SensVolVector.hh,
207   G3toG4BuildTree.cc, G4gsatt.cc, clparse.cc.
208 - Replaced usage of "NULL" with "0".
209 - Replaced usage of "int" with "G4int".
210 
211 g3tog4-V03-01-01 30-May-2001 G.Cosmo
212 - Cleared pedantic warnings detected on Linux-g++ with ISO/ANSI setup.
213 
214 g3tog4-V03-01-00 15-May-2001 G.Cosmo
215 - G3toG4BuildTree[.hh.cc]: fix for a case of the placement a volume
216                            in cloned mothers
217   G3toG4BuildTree() has been split in two methods G3toG4BuildLVTree() and
218   G3toG4BuildPVTree(), the first creating logical volumes only, the second
219   performing placements afterwards. Doing so, all mothers are ready (their
220   logical volumes are created) when a volume is put in more than one mother
221   (courtesy of I.Hrivnacova).
222 - GNUmakefile: G4MAKESHLIB replaced with G4LIB_BUILD_SHARED.
223 
224 g3tog4-V03-00-02 14-Mar-2001 G.Cosmo
225 - G3toG4MakeSolid.cc: fixed bug in construction of G4Sphere where theta and
226   phi parameters were reversed according to G4Sphere constructor.
227   Fixes problem report #230.
228 - G3Division.cc: correction for "PARA". Slices are placed with G4PVPlacement
229   instead of G4PVReplica for this particular case (I.Hrivnacova).
230 
231 g3tog4-V03-00-01 14-Feb-2001 G.Cosmo
232 - Added support for replicated "PARA" shapes in G3Division::CreateSolid(...)
233   (I.Hrivnacova).
234 
235 g3tog4-V03-00-00 25-Jan-2001 G.Cosmo
236 - Fixes for report #188:
237   o Fixed bug in G3toG4BuildTree(G3VolTableEntry*, G3VolTableEntry*)
238     when positioning volume copies. Index is now decremented.
239   o Added -DG3G4DEBUG to CPPFLAGS in GNUmakefile.
240 
241 g3tog4-V02-00-05 28-Nov-2000 G.Cosmo
242 - Fixed bug in G3toG4BuildTree::ClearG3PosCopy(G4int). Entry in vector was
243   not properly destroyed.
244 
245 g3tog4-V02-00-04 24-Nov-2000 G.Cosmo
246 - Added protection against multiple positiong of the same physical volume
247   and added methods ClearG3PosCopy(G4int) and ClearDivision()in
248   G3VolTableEntry (I.Hrivnacova).
249 - Removed useless G3toG4Debug global method and file.
250   Replaced verbosity by G3G4DEBUG flag.
251 - Moved global function G3CalcParamsFn(...) from G3CalcParams.cc to
252   G3NegVolPars.cc and removed obsolete class/files G3CalcParams[.hh.cc].
253 - Added class description comments for the Software Reference
254   Manual (I.Hrivnacova).
255 
256 g3tog4-V02-00-03 01-Aug-2000 G.Cosmo
257 - Fixed initialisation of pDPhi for CONS in G3toG4MakeSolid.cc (I.Hrivnacova).
258 - Updated README file and removed src/README.
259 
260 g3tog4-V02-00-02 26-Jul-2000 G.Cosmo
261 - Fixed definition of G4TMPDIR in GNUmakefile.
262   (The GNUmakefile needs to be completely rewritten to conform to the
263   standard format in G4...)
264 
265 g3tog4-V02-00-01 24-Jul-2000 G.Cosmo
266 - Moved tests clGeometry and cltog4 from source/g3tog4/test to
267   examples/extended/g3tog4. Default build mechanism is now used.
268 - Fixed bug to g3tog4/GNUmakefile for allowing building of shared
269   libraries. Removed targets for building tests now moved to different
270   area. Adapted to work with granular libraries mechanism.
271 - Fix in destructor for G3RotTable (I.Hrivnacova).
272 - Added handling of ELTU solid, affected files: G3toG4MakeSolid.cc
273   and G3CalcParams.cc (I.Hrivnacova).
274 
275 g3tog4-V02-00-00 21-Jul-2000 G.Cosmo
276 - Fixed G3toG4PhysicsList::ConstructMesons() for test/clGeometry,
277   by removing obsolete call to G4RhoZero.
278 
279 g3tog4-V01-01-00 05-Apr-2000 G.Cosmo
280 - Added include path to directory geometry/solids/specific.
281   Modified files: g3tog4/GNUmakefile, g3tog4/test/GNUmakefile.
282 
283 g3tog4-V01-00-00a 07-Mar-2000 J.Allison
284 - Changed char* to const char* where ISO compiler warned.
285 
286 g3tog4-V01-00-00 02-Mar-2000 G.Cosmo
287 - included fixes by Ivana:
288   o G3VolTable:
289   - added tests VTD.size()>0
290   - corrected G3VolTable::GetVTE()
291   - added back G3VolTable::Clear()
292   o G3Pos:
293   - added G3Pos::GetOnly()
294   o G3Division:
295   - corrected G3Division::CreateSolid() for
296     the case ( shape == "TUBS") && ( fIAxis == 1 )
297 - fixed warnings for extraneous semicolons on DEC (ISO mode).
298 - syncronized with HEAD (mainly CVS headers changed from the recent
299   ISO-ANSI C++ migration.
300 
301 06-Dec-1999 W.Lockman
302 - removed G3fillParams.cc
303 - G3Eletable.cc: cast double Z to int
304 - added G3toG4Debug() global function (yuch)
305 - removed G4.cc.omit
306 - made sure all header files are protected with #ifndef ... #endif
307 - G3toG4BuildTree.cc: avoid placement of the top-level logical volume
308 
309 g3tog4-V00-01-cand03 05-Dec-1999  G.Cosmo
310 - Merged HEAD of main trunk with tag "wsl-991205" which now includes
311   updates by Ivana&Pedro, as well as RW->G4RW migration, STL map
312   migration and integration work by B.Lockman.
313 
314 g3tog4-br4_0_1fixes-iv2-99nov11    12-Nov-1999  J. Apostolakis
315 - Tag of new fixes from consolidation of changes by Ivana & Pedro,
316   as these fixes were on November 11th, at 15:00
317 
318 g3tog4-br4_0_1fixes-iv1-99nov02    12-Nov-1999  J. Apostolakis
319 - Tag of fixes from consolidation of changes by Ivana & Pedro,
320   as these fixes were on November 2nd.
321 
322 Summary of changes to be added here (to be obtained from Ivana, Pedro)
323 
324 g3tog4-4_0_1-fixes-branch  Branch for fixes
325 - Changes introduced and tested by Ivana Hrivnacova and Pedro Arce
326   based on geant4-00-01
327 
328 g3tog4-V00-01-02 22-Nov-1999 Lockman
329 - g3test.F renamed to g3test.F.save
330 - G3RotTable::get now returns a pointer to a G4RotationMatrix thru an upcast
331 - G4BuildTree : now get G4RotationMatrix* rather than G3toG4Rotationmatrix*
332 
333 g3tog4-V00-01-01 20-Oct-99 Allison
334 - G3MatTable.cc: introduced G4String matid (a(3,lngth)) to help STL Interface.
335 
336 g3tog4-V00-01-00 28-Jul-1999 Lockman
337 - Commented out "Deleted..." in destructors.
338 
339 g3tog4-01-01-00 19-Jul-1999 Lockman
340 - G3matTable, G3MedTable, G3RotTable: convert from lists G4RWTPtrOrderedVector
341   to G4RWTPtrHashDictionary to allow for noncontiguous indices
342 - G3RotTable::Put,Get->put,get.
343 - G3toG4BuildGeom, G4gsrotm: put,get signature change
344 
345 g3tog4-01-00-06 28-May-1999 Lockman
346 - ~G3Mat,MedTable: do not destroy G4Material Objects in list. Do a clear()
347   of the list, not clearAndDestroy, then delete the list.
348 - ~G3Rot,Vol,Part,EleTable: standardize printout, fix deallocation
349 - G3VolTable: changed PutVTE to take a VolTableEntry*; added ListVTE method
350 - G3toG4MakeSolid: added G4bool* OKAxis
351 - VolTableEntry: added _OKAxis[3] to store which axes may be divided;
352   added AddMother(VolTableEntry*), GetMother(), _Mother.
353 - G3toG4MakeSolid: set OKAxis
354 - G3toG4EventAction: BeginOfEventAction, EndOfEventAction signature mods
355 - G3toG4RunAction: BeginOfRunAction, EndOfRunAction signature mods
356 - G3toG4PhysicsList: SetCuts signature mod
357 - G3toG4PrimaryGeneratorAction: randomize paricle direction
358 
359 27-May-1999 Cosmo
360 - Fixed circular dependencies in G3Pos - VolTableEntry - G3VolTable.
361 - Added default empty constructor to G3Vol.
362 - Removed cleantest from "clean" target in GNUmakefile.
363 
364 g3tog4-01-00-05 Lockman
365 - G3G4Interface: G4Strings passed by reference in G4gspos, G4gsposp
366 - G3PartTable: now uses G4RWTPtrHashDictionary instead of RWGDList
367 - G3RotTable: method name "get" changed to "Get". Space for unit rotation
368   matrix at element 0 in G4RWTPtrOrderedVector. This matrix is instantiated
369   in G4BuildGeom prior to call list read.
370 - G3VolTable: many new methods to handle VolTableEntry and G3Pos objects.
371   removed GetPV method.
372 - G3toG4.hh: removed G3NegVolPars method
373 - G3DetTable: commented out some G4cerr's
374 - G3EleTable: some minor internal changes
375 - G3PartTable: convert to use G4RWTPtrHashDictionary
376 - Added G3Pos class
377 - Added G3toG4BuildTree which calls G4LogicalVolume and G4PVPlacement based on
378   G3VolTable
379 - G4BuildGeom: invokes G3toG4BuildTree to build VolTableEntry tree
380 - G4ggclos: invokes G3Vol.SetFirstVTE() to find top-level VolTableEntry
381 - G4makevol: Broke off creation of solids into G3toG4MakeSolid
382 - G4gsatt: currently a stub
383 - G4gsdvn: currently a stub
384 - G4gsdvn2 currently a stub
385 - G4gsdvt: currently a stub
386 - G4gsdvt2 currently a stub
387 - G4gsmixt:added some messages to warn about faulty mixt weights
388 - G4gspos: removed G4PVPlacement calls (now done in G3toG4BuildTree)
389 - G4gsposp:removed some unneeded headers
390 - G4makevol: broke off solids stuff into G3toG4BuildTree
391 - G4gsvolu: G4makevol(...) now returns void
392 - G4VolTableEntry: now is a node tree
393 - clparse: remove some commented out lines
394 - cltog4:  minor changes
395 - G3toG4.hh make SSVT the mother. Its also not the first volume
396 - Added testmodel.dat to test divided/deferred volumes.
397 
398 17-May-1999 Lockman
399 - converted G3PartTable to RWTPtrhaswhDictionary
400 - reinstituted VolTableEntry and G3VolTable G4RWTPtrHashDictionary. Creation of
401   logical volume now done in G3VolTable::PutLV
402 - G4makevol.cc: added interface to G4Hype
403 
404 g3tog4-01-00-04 11-May-1999 Lockman
405 - G3VolTable: greatly simplified. No longer keep a private logical/physical
406   volume store. Use G4LogicalVolumeStore and G4PhysicalVolumeStore instead.
407   Still keep track of the G3toG4 logical/physical mother.
408 - G3toG4RotationMatrix.hh: replace forward declaration of G4RotationMatrix
409   with header file
410 
411 g3tog4-01-00-03  6-May-1999 Lockman
412 - G3MatTable, G3RotTable, G3MedTable: updated to use G4RWTPtrOrderedVector
413   instead of G4RWTPtrHashDictionary
414 
415 g3tog4-01-00-02  5-May-1999 Lockman
416 - temporarily comment out G4gsdv* code
417 - G4gstmed: now just store a link between tracking medium number and assoicated
418   G4Material pointer
419 - replaced rw/gdlist with G4RWTPtrHashDictionary
420 - replaced iostream.h with G4ios.hh everywhere
421 - added G3EleTable to manage elements in G3toG4
422 - tog4.F, g3routines.F: generate gsmixt instructions in call list
423 - clGeometry.cc: cleaned up and added some default commands
424 - added G3toG4EventAction and EventActionMessenger classes to draw tracks
425 - GNUmakefile: clean now cleans g3tog4 and all subdirectories      / 24-Apr-1999 Lockman
426 - GNUmakefile: cleanf: $(RM) now runs quietly
427 - GNUmakefile: re-enabled libF target
428 - README: updated instructions on how to configure environment and make
429 - G4BuildGeom.cc: replace checkLogVol with checkVol which prints out logical
430   volumes and their physical daughters
431 - G4makevol: use G4LogicalVolume(solid, material, name) constructor.
432 - test/GNUmakefile: define INCFLAGS
433 - test/README: modified and shortened
434 - test/src/G3toG4DetectorConstruction.cc: add SimpleConstruct() method
435   for testing; set visibility of daughters, mother.
436 - test/include/G3toG4DetectorMocnstruction.hh: added private _lv, _pv
437 - test/src/G3toG4RunAction.cc: set tracking/verbose 1, run/verbose 1
438 
439 g3tog4-01-00-01 20-Feb-1999 Bill Lockman
440 - G4makevol.cc: use G4Polycone, G4Polyhedra classes instead of BREP equivalents
441 - clGeometry.cc: protect vis code; removed templates stuff
442 - cltog4.cc: removed templates stuff
443 
444 g3tog4-00-03-04 12-Nov-1998 Bill Lockman
445 - G3medtable: dynamically instantiate a G4FieldManager(field*) object and
446   pass it to G4LogicalVolume by pointer.
447 - adapt G3toG3PhysicsList.* from N02
448 
449 g3tog4-00-03-03 02-Nov-1998 Bill Lockman
450 - src: Added G3toG4RotationMatrix class, remove G3toG3SetRotation class;
451 - test: add parity.dat to test parity inversions
452 
453 g3tog4-00-03-02 05-Oct-1998 Bill Lockman
454 - GNUmakefile, test/GNUmakefile mods by John Allison
455 
456 g3tog4-00-03-01 21-Sep-1998 BIll Lockman
457 - svtwaf.dat: shrank size of svt mother volume just enclose the detectors.
458 
459 g3tog4-00-02-02 17-Sep-1998 Bill Lockman
460 - implemented G4 capitalization convention for class names. g3tog4->G3toG4.
461 - clGeometry.cc: introduced G3toG4VisManager class;
462   added RunManager->Initialize
463 - added G3toG4SetRotation class to set rotation matrix elements directly,
464   including improper rotations (parity transforms). Check for orthonormality
465   and left-handedness.
466 
467 g3tog4-00-02-01 21-Aug-1998 Bill Lockman
468 - GNUmakefile: removed 'bin' dependence from 'first' target
469 
470 g3tog4-00-01-02 16-Jul-1998 Bill Lockman
471 - Mods to test/GNUmakefile by B. Lockman to link
472 
473 g3tog4-00-01-01 07-Jul-1998 Gabriele Cosmo
474 - Several updates to test/GNUmakefile by J.Allison
475 - Removed obsolete tag g3tog4-00-07-00.
476 
477 g3tog4-00-07-00 29-Jun-1998 Bill Lockman
478 - GNUmakefile:
479 - added an 'examples' target to build the examples in test/
480 - example/*/cltog4.* moved to test/. Removed all files in example from repo.
481 - test/GNUmakefile: added G4EXLIB=true flag
482 - test/clGeometry.cc, cltog4.cc: replaced #include "*.cc" with "*.hh"
483 
484 g3tog4-00-06-06 26-Jun-1998 Gabriele Cosmo
485 - Again changes to GNUmakefiles according to the new structure in
486   processes/electromagnetic. (by J.Allison)
487 
488 g3tog4-00-06-05 23-Jun-1998 Bill Lockman
489 - GNUmakefile:
490 - uncommented cernlibs function (John, did you comment this ???)
491 o build only the global processes library, not the processes sublibraries
492 o build the global digits+hits library
493 - example and test GNUmakefiles: link against global processes library
494 - removed test/GNUmakefile.G4VIS_USE, superceded by visualization/G4VIS_USE.gmk
495 - modified include paths in example/, test/ to include detector/include,
496   hits/include
497 - src/G4gsmate: if G3 vacuum state encountered (dens<G3_input_density), set
498   dens=0; if Z < 1, set Z=1, A=2.
499 
500 g3tog4-00-06-04 22-Jun-1998 John Allison
501 - Changed GNUmakefiles to use G4VIS_USE.gmk.
502 - Introduced G4BASE in GNUmakefiles.
503 
504 g3tog4-00-06-03 14-Jun-1998 Bill Lockman
505 - temporarily removed VACUUM from call list. This material causes SetCuts to
506   go into an infinite loop
507 - removed proton from macro files
508 - if Z<1, set Z=1, A=2.
509 - renamed test/clGeometry.g4macro to test/clGeometry.x
510 - added example/cltog4.x.
511 - example/cltog4.cc always runs in batch, no graphics.
512 
513 g3tog4-00-06-02 12-Jun-1998 Bill Lockman
514 - simplified xlf include path
515 - treat as vacuum (A=2, Z=1, dens=0) if input density < 1.e-15 g/cm3
516 - G4makevol: assert Rmin>=0 && Rmax>=Rmin
517 
518 g3tog4-00-06-00 07-Jun-1998 Bill Lockman
519 - added G4VisAttributes.hh header file to clGeometry.cc to define
520   stream operator for G4VisAttributes&
521 
522 g3tog4-00-05-05 23-Apr-1998 Bill Lockman
523 - test/svtwaf.dat: took out PCON mother, replaced with TUBS.
524 
525 g3tog4-00-05-04 21-Apr-1998 Bill Lockman
526 - tog4.F: Increased iia array dimension from 1k to 10k.
527 
528 09-Apr-1998 Bill Lockman
529 - G4BuildGeom.cc: set vis attribute of top level volume to invisible
530 - test/src/clGeometry.cc: instantiate MyVisManager
531 - rename g4geom.cc to g4geom.cc.main
532 - in svtwaf.dat, make volume SSVD a G4Tubs instead of a PCON. Otherwise,
533   can't close the geometry.
534 - GNUmakefile: remove EXEC_BUILD = true
535 - example/GNUmakefile: add EXEC_BUILD = true
536 
537 09-Apr-1998 Gabriele Cosmo
538 - Porting on DEC-cxx 6.0:
539   > fixed warnings about meaningless usage of the
540     "const" qualifier. Fixed files:
541     G3VolTable.hh, G3VolTable.cc
542   > fixed problem of partial override of G4VPVParameterisation class.
543     Files: G3CalcParams.hh, G3CalcParams.cc
544 
545 07-Apr-1998 Bill Lockman
546 - GNUmakefile: Fbinobjects was misspelled => rztog4.d was not made.
547 - src/rztog4.F: check for existence of .rz file before continuing.
548 - src/G4makevol.cc: include G4BREPSolidPolyhedra.hh and G4BREPSolidPCone.hh
549   instead of .h
550 
551 HEAD April 2, 98 G.Barrand
552 - G4VIS_USE_OPENINVENTOR -> G4VIS_USE_OIX in makefiles.
553 
554 26-Mar-1998 Bill Lockman
555 - GNUmakefile: do not include rztog4.o in libG3toG4F.a, but explicitly in
556   link command. See README for what the different phony targets (all, lib, bin,
557   libC libF) do. In general, for both the top-level Makefile and the example
558   makefiles, gmake all will build everything, including the external libraries.
559   gmake all from the top-level makefile will additionally build both example
560   executables as well as rztog4. From the example directory, gmake all will
561   build the external libraries, the libG3toG4.a and libG3toG4.a libraries,
562   and the example executable executable.
563 - G4makevol.cc: added commented-out #include "G4BREPSolidPCone.hh" and
564 #include "G4BREPSolidPolyhedra.hh" (will convert in alpha06 release)
565 
566 26th March 1998  John Allison
567 - Changed G4VisManager to MyVisManager in clGeometry.cc for vis-00-05-01
568   and later.
569 
570 25-Mar-1998 Gabriele Cosmo
571 - Cleaned up warnings on DEC
572 
573 g3tog4-00-04-02 06-Mar-1998 Bill Lockman
574 - Modified example and test GNUmakefiles to synch with latest G4 mods (mainly
575   vis and G4PhysicsList)
576 - test/clGeometry.cc use new method for instantiating vis manager
577 - broke off g3tog4DetectorConstruction executable code into .cc
578 - added g3tog4RunAction from test_skeleton
579 - added g3tog4PhysicsList from test_skeleton, dumped Process- and ParticleList
580 - updated example/GNUmakefile and cltog4.cc to synch with latest G4 changes
581 
582 30th January 1998  Gabriele Cosmo (g3tog4-00-03-02)
583 - Modified order of link in test/GNUmakefile (G4intercoms)
584 
585 27th January 1998  John Allison
586 - Simplyfied include GNUmakfile.G4VIS_USE in test/GNUmakefile.
587 - New way of instantiating G4VisManager in test/src/clGeometry.cc.
588 
589 20-Jan-1998  Bill Lockman
590 - GNUmakefile: in 'ext', do only geometry (BREPS) and visualization (global)
591 - example/GNUmakefile: remove include GNUmakefile.common, replace with required
592   rules. Do not use default clean rule - it removes the $G4SYSTEM soft
593   links
594 - test/GNUmakefile: remove include GNUmakefile.common, replace with required
595   rules. Do not use default clean rule - it removes the $G4SYSTEM soft
596   links
597 - test/clGeometry.g4macro: modified
598 - test/include/g3tog4DetectorConstruction.hh: modified a comment
599 - test/src/clGeometry.cc: added an optional 3rd argument, a terminal type
600 - test/src/g3tog4PrimaryGeneratorAction.cc: changed some gun defaults
601 
602 22-Dec-1997  Bill Lockman
603 added example/src, moved cltog4.cc there. Cleaned up g3tog4 makefiles.
604 
605 20-Dec-1997  John Allison:
606 Changed ifdef OPENGL_WIDGET to ifdef G4VIS_USE_OPENGLXM in test/GNUmakefile.
607 Also eliminated LOADLIBS += -lGLw.  (GLw is not used, I think.)
608 (These flags need tidying in all GNUmakefiles -JA)
609 
610 g3tog4-00-02-03 12-Dec-1997 Lockman:
611 test/GNUmakefile: visualization code and library path cloned from run/example2.
612 test/src/clGeometry: added #include "G4VisRegisterGraphicsSystems.icc";
613 protect all visualization code inside #ifdef VISUALIZE_CLGEOMETRY...#endif
614 
615 18 Nov 1997 B. Lockman:
616 src/G4gsmate.cc: changed | to ||
617 src/G3gsdetv.cc: currently disable
618 test/src/, include: updated g3tog4*.cc and *.hh from run/example1
619 g3tog4.F : commented out call to code generator
620 Removed G3G4Init.cc, G3Mother.cc, G3Mother.hh
621 GNUmakefile:  if SLAC env. variable is set, use cernlib -v 95a, otherwise
622     use pro
623 example/GNUmakefile: updated pattern rules to build .d.
624 test/GNUmakefile: remove pattern rules, replace with include GNUmakefile.common
625 include/G3G4Interface.hh: G4BuildGeom now returns G4LogicalVolume*
626 include/G3VolTable.hh: added static G4LogicalVolume* mothLV; getLVx(G4String&)
627     now returns G4LogicalVolume* corresponding to a name, using
628     G4LogicalVolumeStore class; removed getTopVol method
629 src/G3VolTable.cc: removed G3Mother; Mother corresponds to the first volume
630     placed by G3toG4 (set by method setMother in in putLV.
631 src/G4BuildGeom.cc returns G4LogicalVolume* of first volume placed by G3toG4
632 src/G4gsatt.cc,G4gsdetv.cc,G4gsdv*.cc: replaced getLV(name) with getLVx(name)
633 src/G4gspos*.cc: use G4PVPlacement constructor which places volume inside
634     Logical mother volume.
635 src/G4makevol.cc: check that LV is not already placed; if so, do not place it.
636     Removed references to G3MOther; added G3Bound to chek the
637     radial bounds on PCON and PGON volumes
638 src/clparse.cc: removed GlobalMotherVolume and SubsystemMotherVolume logic.
639 src/g3tog4.F: remove ctop(G3G4Init)
640 test/src/g3tog4DetectorConstruction: G4LogicalVolume* G4BuildGeom; place
641 top-level volume.
642 
643 08-Nov 1997 B. Lockman
644 cltog4.cc, clGeometry.cc: update to follow skeleton.cc pattern
645 G4makevol.cc: check parameters of PGON, PCON, adjust if necessary
646 tog4.F: new rz reader from Vladimir Berejnoi.
647 
648 21-Jul 1997 G. Cosmo
649 G3toG4.hh: commented out extern declaration of min(). Porting on HP-UX10.
650 
651 16-Jul 1997 B. Lockman
652 G3Mother.cc: set the vis attributes of the mother to be invisible
653 G4makevol.cc: commented out the forward declaration class G4RWTValVector<double>;
654 
655 17-Jun-1997  T. Wenaus
656 - GNUmakefile mod to exclude g4geom.cc from library
657 - G3VolTable mod to add putLV(name, lvol) method for case when nothing
658   other than lvol pointer is known about the volume
659 - src/clparse.cc mods to use g3tog4 in the context of a Geant4
660   application of which g3tog4 is just a component:
661   - G4LogicalVolume* GlobalMotherVolume if non-null points to the
662     global mother to be used by g3tog4
663   - G4LogicalVolume* SubsystemMotherVolume is loaded with the lvol
664     immediately under the g3tog4 global mother (second gsvolu definition
665     during the parsing)
666 
667 12-Jun-1997  B. Lockman
668 G3Mother.cc: set the vis attributes of the mother to be invisible
669 
670 28-May-1997  B. Lockman
671 g3tog4/GNUmakefile : split lib into 'libf' and 'libc'
672 test,example/GNUmakefile : make libc target in to level makefile instead of lib
673 src/clGeometry.cc : made cltog4.cc a short version of clGeometry.cc
674 
675 20-May-1997  B. Lockman
676 - test/GNUmakefile : added run to include path
677 - test/src/clGeometry.cc : add particle and hit generation
678 
679 05-May-1997  B. Lockman
680 - src/clparse.cc: G3G4Init no longer calls G4Setup (G3Setup instantiates a
681   fixed-shape world volume. This is now handled in G3Mother, based on the
682   information in the call list file.) G3G4Init now just opens clparse.out.
683 
684 - src/G4makevol.cc : SingletonMother->Instance(G4LogicalVolume* lvol)
685 
686 - src/G4BuildGeom returns G3Vol.getPV() (see below)
687 
688 - G3Mother : Singleton class whose data memebers _instance and _LV are
689   initialized from a call in G4Makevol
690 
691 o src/G3Mother::Instance(G4LogicalVolume * LV) stores the pointer to the
692   singleton object (_instance) and the pointer to the logical mother volume
693   (_instance->_LV); places mother volume; store pointer to physcal mother
694   volume in G3VolTable: G3Vol.setMother(motherWorldPhys)
695 
696 - src/G3VolTable.cc :
697 
698 o G4LogicalVolume* G3VolTable::getLV() returns the pointer to the top-level
699   logical mother volume
700 
701 o G4VPhysicalVolume* G3VolTable::getPV() returns the pointer to the top-level
702   physical mother volume
703 
704 - test/src/clGeometry.cc:
705 
706 o geometry is now closed in G4BuildGeom when G3ggclas is called
707 
708 03-May-1997  B. Lockman
709 - summary : got rid of artifical top level volume, replaced with top level
710   logical volume defined in call list file; place it.
711 
712 - src/G3Mother.cc, include/G3Mother.hh : singleton class to hold copy of
713   mother volume name. Can be accessed from anywhere
714 
715 - src/G3VolTable.cc, include/G3VolTable.hh : added getTopVol(), returns a
716   pointer to the top level logical volume
717 
718 - src/G3makevol.cc: fill singleton class
719 
720 - src/G4BuildGeom.cc: invoke getTopVol, create top level physical volume
721   from logical volume, no longer done in G4Setup.
722 
723 02-May-1997  B. Lockman
724 - src/jshape.F: translate HYPE, ELTU and CTUBS shape numbers into names
725 - src/G4gsdv*.cc: call G4gsvolu with zeronpars
726 
727 28-Apr-1997  B. Lockman :
728 - example,test/GNUmakefile :
729 o added 'ext' target which depends on g4ext (phony) and 'all'. The former
730   simply runs the 'ext' target in the top-level GNUmakefile.
731 
732 25-Apr-1997  B. Lockman :
733 - src/G4gsdvn2.cc: fixed array overrun
734 - src/G4gspos, G4gsposp, G4gsvolu: fixed some small memory leaks
735 - src/rztog4.F : added optional second argument to specify the call list file
736 - src/clparse.cc : G4bool _debug (local) controls printing of each read line
737 - test/src/clGeometry.cc :  define world volume for tracking : G4TransportationManager::getTransportationManager()->getNavigatorForTracking()->SetWorldVolume( pGeometries );
738 
739 
740 
741 24-Apr-1997  B. Lockman :
742 -test/src/clGeometry.cc:
743 o instantiated a geometry before G4VisManager
744 
745 23-Apr-1997  B. Lockman :
746 - GNUmakefile:
747 o added 'all' to 'ext' dependencies. gmake ext now builds all the
748   needed libraries and makes the rztog4 executable. cltog4 executable is made
749   by example/GNUmakefile; clGeometry executable is made by test/GNUmakefile.
750 o added lG4run to library list in all three GNUmakefiles
751 
752 - src/G4gsvolu:
753 o changed 'delete param' to 'delete [] param'
754 
755 02-Apr-1997  B. Lockman :
756 - phase out GNUmakefile-ext. Replace with 'ext' target in GNUmakefile; also
757   added a 'geom' target which updates geometry/, including STEP and BREPS,
758   and merges all .o files into geometry/$G4SYSTEM/libG4geometry.a. Thus:
759     using         prototype/GNUmakefile      g3tog4/GNUmakefile
760                   ---------------------------------------------
761   either type:         "gmake"     followed by   "gmake ext"
762       or type:         "gmake vis" followed by   "gmake geom"
763                   ---------------------------------------------
764   where 'ext' updates particle+matter, global, interfaces, visualization and
765   geometry, including BREPS and STEP,
766   and 'geom' updates geometry only, including BREPS and STEP
767 
768 - example/: added cltog4.cc, removed from src/.
769 07-Apr-1997  B. Lockman
770 - GNUmakefiles: particle+matter/GNUmakefile global target now produeces
771   libraries in particles, processes, management and materials. Modify library
772   path accordingly.
773 - src/G4makefile: Updated to construct G4Para.
774 
775 31-Mar-1997  B. Lockman :
776 - src/G4gsrotm.cc:
777 o Incorporated proper coordinate-system rotation calculated from Euler angles.
778   The convention in Geant3 is to specify the roation matrix as a rotation of
779   the coordinate system, not a rotation of the body, as was done in Geant3.
780   The c.s. rotation matrix is the transpose of the body rotation matrix.
781 
782 27-Mar-1997  B. Lockman :
783 - moved cltog4.cc from src to example so that it doesnt get put into g3tog4
784   library. Thus, libG3toG4.a will contain no main routine. This avoids
785   conflicts with mains in other packages (like visualization/test). Added
786   GNUmakefile to example to build cltog4 target. Commented cltog4 target in
787   g3tog4/GNUmakefile.
788 
789 20-Mar-1997  B. Lockman :
790 - src/G4makevol.cc:
791 o G4BREPSolidPCone, Polyhedra require the number of sections = nz -1
792 - GNUmakefile :
793 o removed -include ../global/GNUmakefile.common
794 o added clean_libs, clean (doesnt remove $G4SYSTEM/), clean-all (removes
795   $G4SYSTEM)
796 o put in libG3toG4.a target, depends on ../$(G4SYSTEM)/libG3toG4.a. Rule is to
797   run ../GNUmakefile which now just makes the libraries
798 o typing 'gmake' will make 'all' target
799   typing 'gmake lib' or 'gmake bin' will make the libraries and binaries
800 o remove binaries before rebuilding
801 - src/GLKludge.cc , include/GLKludge.hh : currently G4BREPSolidPCone and
802   G4BREPSolidPolyhedra cant handle cases where z[i] = z[i-1], add 10 microns
803   to z[i] as a temporary kludge if z[i] <= z[i-1]
804 
805 19-Mar-1997  B. Lockman :
806 - GNUmakefile-ext:
807 o currently builds geometry global target using geometry/GNUmakefile.test
808 
809 18-Mar-1997  B. Lockman :
810 - GNUmakefile-ext:
811 o updating of external packages needed by g3tog4 now done in
812   GNUmakefile-ext. Invoke 'global' target in packages supporting this.
813   This target removes the libraries in the lower level
814   package directories and consolidates them in the top-level package
815   directories, simplifying the library path somewhat in GNUmakefile and
816   example/GNUmakefile. This also makes the libraries defined here
817   compatable with those defined in visualization/test/GNUmakefile.
818 o added a clean_libs target to remove all libraries (invoked from the command
819   line; 'all' does not depend on it)
820 
821 Mar 16 '97 TW
822 - GNUmakefile:
823 o minor typo fix CPPFLAGS -> $(CPPFLAGS)
824 o consolidated histories back into this file; please keep this file a
825   single comprehensive history of g3tog4 package modifications.
826 
827 14-Mar-1997 Lockman:
828 - GNUmakefile:
829 o Added vpath %.a to provide library search path
830 o make cltog4 dependent on all the libraries in G4LIBS
831 
832 11-Mar-1997  B. Lockman :
833 - GNUmakefile:
834 o added tracking, intercoms to library path ;
835   now update BREPS, STEP, CSG targets in GNUmakefile-ext
836 
837 04-Mar-1997  B. Lockman :
838 - GNUmakefile:
839 o added LDFLAGS variable to allow user to specify link options from
840   from the cmd line
841 
842 17-Jan-1997  B. Lockman :
843 - GNUmakefile:
844 o updated include path to include BREPS, STEP and graphics_reps.
845 o updated library path to include BREPS, STEP libraries
846 o Added phony BREPS and STEP targets to insure these packages are
847   compiled (really should be done in the top-level GNUmakefile)
848 
849 15-Jan-1997  B. Lockman :
850 - GNUmakefile:
851 o rewrote include path after directory restructuring
852 o rewrote library path after directory restructuring
853 - g3routines.F : run-time formatting of call list file implemented.
854 - mztog4.F, rztog4.F : put tog4 into a separate file
855 - tog4.F : dimensioned orig, fact to 5000
856 
857 
858 29-Oct-1996  B. Lockman :
859 - GNUmakefile:
860 o rewrote include path after directory restructuring
861 o rewrite library path after directory restructuring
862 
863 02-Oct-1996  B. Lockman :
864 - GNUmakefile:
865 o in making/updating libG3toG4F.a, run ranlib on this library, not
866   libG3toG4.a
867 
868 01-Oct-1996  B. Lockman :
869 - GNUmakefile:
870 o modified FCFLAGS to replace -I with  -WF,-I to define cpp include
871   path for xlf compiler
872 o added -d option for xlf compiler to write intermediate .f file
873 o added -g option to produce debug symbols
874 o added $(fsources) (*.f filobals.hhles) to 'all' dependencies
875 o moved 'all' rule to below definition of $(cernlibs) so that
876   $(fsources) is defined
877 o defined pattern rule to move .f files to $(G4SYSTEM)
878 o moved -include ../global/GNUmakefile.common after explicit rules
879   and before pattern rules definition. This file defines the
880   variables $(sources) (src/*.cc) and $(dependencies) (corresponding
881   .d files) as well as some pattern rules (which are redefined
882   locally)
883 
884 Sep 24 '96 TW
885 - completion of handling of all cases of Indexing via individual logical
886   volume objects created for each instantiation, with physical volume list
887   of the instantiations kept in the G3Vol data structure and used to
888   place daughters in the logical volume of each instantiation.
889   (Temporary, pending a proper G4 implementation of Indexed placement.)
890 - turn off geometry optimisation (takes forever for big geometries!!)
891 
892 Sep 15 '96 TW
893 - G4Cons incorporated
894 - Indexed GSVOLUs via negative length parameters finished (G3CalcParamsFn
895   extended)
896 
897 Sep 10 '96 TW
898 - implementation of gspos (-ve params), gsposp via G4PVPlacement;
899   G3Vol structure keeps track of G4LogicalVolumes created and placed
900   for G3 parametrised volume invocations. (no G4PVIndexed, originally
901   foreseen)
902 - G4Trd implemented
903 - G4PVReplica, G4PVParameterised implemented
904 - placeholder solid eliminated; NPAR=0 cases handled as described
905 - cltog4 interface improved
906 - clparse inactive geometry calls instated; all now active
907 - GSDV* routines fully implemented
908 - $$$ pending rot matrix handling question (no access to matrix);
909   GSROTM otherwise updated
910 - GNUmakefile fixes & improvements
911 
912 Sep 3 '96  TW
913 - GNUmakefile fix for $G4SYSTEM directory creation
914 
915 Aug 25 '96  T. Wenaus
916 - begin this mod history
917 - update G3toG4 code for class structure mods since last update (12/95)
918 - update the GNUmakefile to properly compile source in src/, example/
919   and build executables rztocl, cltog4, and (if example code present)
920   g4geom in $G4SYSTEM)/
921 - add .d file generation for Fortran code and code in example/