Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/geometry/management/History

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 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 ] [ 11.3.0 ]

  1 # Category geommng 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 ## 2024-08-26 Gabriele Cosmo (geommng-V11-02-06)
 10 - G4GeometryManager: temporarily disable default parallel optimisation.
 11   Fixed spelling for method OptimiseInParallel(..).
 12 
 13 ## 2024-08-07 Gabriele Cosmo (geommng-V11-02-05)
 14 - Fixed broken condition for enabling voxels statistics report in
 15   G4GeometryManager::UndertakeOptimisation().
 16 - Further cleanup in G4GeometryManager for usage of static data.
 17   Fixed spelling on data members.
 18 - Access G4GeometryManager singleton through its GetInstance() in stores.
 19 
 20 ## 2024-08-06 Gabriele Cosmo (geommng-V11-02-04)
 21 - In G4GeometryManager, removed unnecessary static qualifier for some methods
 22   and ordered methods declarations in header.
 23 
 24 ## 2024-06-17 Gabriele Cosmo (geommng-V11-02-03)
 25 - Removed G4SmartVoxelProxy source file, as now empty.
 26 - Minor code cleanup/indentation.
 27 
 28 ## 2024-06-02 John Apostolakis (geommng-V11-02-02)
 29 - New capability to run voxel optimisation in threads (off by default).
 30   First version, parallelises only over volumes. The user can call
 31   RequestParallelOptimisation(optimise, verbose) from G4GeometryManager
 32   to turn it on/off. Set verbose=true to obtain the volumes with biggest
 33   contribution to memory size and CPU time for voxelisation.
 34   Added new method BuildOptimisationsParallel() to be called by
 35   G4WorkerRunManager to initialize. Added method ReportVoxelInfo() to write out
 36   for verification. Checked with simple and complex/large geometries.
 37 
 38 ## 2024-05-29 Evgueni Tcherniaev (geommng-V11-02-01)
 39 - Added new methods GetNumOfConstituents() and IsFaceted().
 40 
 41 ## 2024-04-02 Gabriele Cosmo (geommng-V11-02-00)
 42 - Applied trivial clang-tidy fixes to G4ErrorTarget, i.e. use of default
 43   constructor.
 44 
 45 ## 2023-10-06 Gabriele Cosmo (geommng-V11-01-05)
 46 - Restore virtual methods in G4TouchableHistory to allow for backwards
 47   compatibility with visualization modeling code.
 48 
 49 ## 2023-09-04 Gabriele Cosmo (geommng-V11-01-04)
 50 - Made G4TouchableHistoryHandle a typedef of G4TouchableHandle.
 51 
 52 ## 2023-08-31 Gabriele Cosmo (geommng-V11-01-03)
 53 - Removed inheritance level for G4TouchableHistory and making G4VTouchable a
 54   simple typdef of G4TouchableHistory, therefore no longer acting as base class.
 55 - Imported G4NavigationHistory, G4NavigationHistoryPool, G4NavigationLevel and
 56   G4NavigationLevelRep classes and translation units from "volumes" module.
 57 
 58 ## 2023-05-08 Gabriele Cosmo (geommng-V11-01-02)
 59 - Applied clang-tidy fixes (readability, modernization, performance, ...).
 60 
 61 ## 2023-03-22 Gabriele Cosmo (geommng-V11-01-01)
 62 - G4Region: issue fatal exception if attempting to add a root logical volume
 63   which is already set as root for another region.
 64 
 65 ## 2023-01-09 Gabriele Cosmo (geommng-V11-01-00)
 66 - G4LogicalVolume: use std::shared_ptr for handling visualization attributes.
 67   Ignore calls to SetVisAttributes() from worker threads.
 68 
 69 ## 2022-11-16 Gabriele Cosmo (geommng-V11-00-09)
 70 - Fixed more compilation warnings for implicit type conversions on
 71   macOS/XCode 14.1 in G4SmartVoxelNode source.
 72 
 73 ## 2022-11-10 Gabriele Cosmo (geommng-V11-00-08)
 74 - Fixed compilation warnings for implicit type conversions on macOS/XCode 14.1.
 75 
 76 ## 2022-10-04 Gabriele Cosmo (geommng-V11-00-07)
 77 - Fixed compilation warnings on Intel/icx compiler for variables set but not
 78   used.
 79 
 80 ### 2022-08-16 Gabriele Cosmo (geommng-V11-00-06)
 81 - Added protection in G4GeometryManager for Open/CloseGeometry() to
 82   be executed only by master thread.
 83   Addressing problem report #2502.
 84 
 85 ## 2022-07-03 Ben Morgan (geommng-V11-00-05)
 86 - Add headers for directly used classes from global/HEPGeometry
 87 
 88 ## 2022-04-13 Ben Morgan (geommng-V11-00-04)
 89 - Add missing dependency on G4heprandom
 90 
 91 ## 2021-03-05 Makoto Asai (geommng-V11-00-03)
 92 - G4SolidStore, G4LogicalVolumeStore, G4PhysicalVolumeStore:
 93   extend getter methods to optionally return the last-found object.
 94 
 95 ## 2021-02-05 Evgueni Tcherniaev (geommng-V11-00-02)
 96 - G4BoundingEnvelope: get rid of "new" operators
 97 
 98 ## 2021-01-19 Evgueni Tcherniaev (geommng-V11-00-01)
 99 - G4ReflectedSolid: added GetCubicVolume(), GetSurfaceArea()
100 
101 ## 2021-12-10 Ben Morgan (geommng-V11-00-00)
102 - Change to new Markdown History format
103 
104 ---
105 
106 # History entries prior to 11.0
107 
108 September 28, 2021 G.Cosmo (geommng-V10-07-07)
109 - Use G4Allocator to dynamically allocate nodes and proxies for the
110   voxels optimisation structure. Should help reducing memory fragmentation.
111 
112 September 24, 2021 G.Cosmo (geommng-V10-07-06)
113 - Basic clang-tidy review of code.
114 
115 August 31, 2021 B.Morgan (geommng-V10-07-05)
116 - Provide operator<< as a free function for G4UAdapter to support Geant4Py
117 - Make operator<< for G4VSolid a free function
118 
119 June 15, 2021  J.Apostolakis (geommng-V10-07-04)
120 - G4UAdapter: added std::ostream& operator << to avoid compilation clash
121   between similar methods for G4VSolid and VecGeom UnplacedVolume.
122 
123 April 12, 2021 G.Cosmo (geommng-V10-07-03)
124 - Fixed potential thread contention in stores when clearing/updating maps
125   at initialisation.
126 
127 April 9, 2021 G.Cosmo (geommng-V10-07-02)
128 - Added missing implementation of inline method GetMap() in stores.
129 
130 March 30, 2021 B.Morgan (geommng-V10-07-01)
131 - Migrate sources.cmake to modular build API
132 
133 March 23, 2021 G.Cosmo (geommng-V10-07-00)
134 - Added map for fast search based on name in G4SolidStore, G4RegionStore,
135   G4logicalVolumeStore and G4PhysicalVolumeStore. Pointers to elements are
136   stored in the map as buckets, grouping elements with same name.
137 
138 November 8, 2020 E.Tcherniaev (geommng-V10-06-06)
139 - Bug fix in calculation of normal in G4UAdapter::DistanceToOut()
140 
141 October 28, 2020 Ben Morgan (geommng-V10-06-05)
142 - Remove include of obsolete CMake module
143 
144 May 28, 2020 B.Morgan (geommng-V10-06-04)
145 - When using new CMake build, add location of generated G4GeomConfig.hh
146   header to public include directories of G4geometrymng module.
147 
148 April 30, 2020 Gabriele Cosmo (geommng-V10-06-03)
149 - Adopt new convention for location of headers in VecGeom for wrappers.
150 
151 April 17, 2020 Gabriele Cosmo (geommng-V10-06-02)
152 - Added deleted declarations for copy constructor and assignment operators
153   on store singletons. Based on GitHub PR#12 suggestion.
154 
155 April 2, 2020 Guilherme Amadio (geommng-V10-06-01)
156 - Reduce size of LogicalVolumes by reordering class members
157 
158 December 10, 2019 Ben Morgan (geommng-V10-06-00)
159 - Cleanup CMake build, removing obsolete granular library options and
160   explicit include_directories.
161 
162 November 15, 2019 Gabriele Cosmo (geommng-V10-05-15)
163 - Fixed cases of implicit type conversions from size_t to G4int.
164 
165 November 11, 2019 J.Apostolakis (geommng-V10-05-14)
166 - G4LogicalVolume: Added method 'ChangeDaughtersType' to change the
167   volume type for CharacterisedDaughters.  It enables the user to turn
168   over responsibility for navigation in that volume to an external navigator.
169   ( This is for use when one or more daughter volumes are created as an
170     existing physical volume types (typically G4PVPlacement). )
171   It can also be used enable to create a (logical) volume which containts a
172   mixture of existing G4-toolkit physical volume types, and user-created
173   'external' physical volume (with type code 'kExternal').
174   G4 types must be created first, and then ChangeDaughtersType must be called
175   to change the mother's attribute to 'kExternal'.
176   Note: only one type of sub-navigator will be called to find a track's
177   intersection (or the location of a point) in all daughters of one mother
178   volume. The sub-navigator chosen will correspond to the volume type assigned.
179 
180 October 29, 2019 J.Apostolakis (geommng-V10-05-13)
181 - Use stored volume type for G4LogicalVolume::CharacterisedDaughters,
182   after fix to correctly store type of G4PVParameterised volume.
183   Requires geomvol-V10-05-07.
184 
185 October 23, 2019 J.Apostolakis, G.Cosmo (geommng-V10-05-12)
186 - Revised G4LogicalVolume to cope with 'external' type of physical volumes.
187   Note: these revisions are independent and backward compatible.
188 - Co-works with geomnav-V10-05-11 (external navigation).
189 
190 October 23, 2019 J.Apostolakis (geommng-V10-05-11)
191 - Changed G4VPhysicalVolume::VolumeType() to be virtual.
192   Preparing for addition of External Navigation, which adds an 'external'
193   physical volume type (for use with an External sub-Navigator).
194   Note: This is used by G4Navigator's CharacteriseDaughters() method.
195   The old method derived this value from response of IsReplicated()
196   virtual method and, in the case of replica/division/parameterised volumes,
197   information from a call to the 2nd virtual method ReplicationData.
198 - G4VPhysicalVolume copy constructor and assignment operator are now 'deleted'.
199 - Requires and co-works with geomvol-V10-05-05, geomdiv-V10-05-02.
200 
201 September 14, 2019 E.Tcherniaev (geommng-V10-05-10)
202 - Use G4QuickRand() in G4VSolid::EstimateCubicVolume() and
203   G4VSolid::EstimateSurfaceArea()
204 
205 August 22, 2019 G.Cosmo (geommng-V10-05-09)
206 - Use pre-increment wherever possible.
207 
208 July 11, 2019 G.Cosmo (geommng-V10-05-08)
209 - Implemented c++11 revision: nullptr, auto, inline data initialisation,
210   const iterators, alias using statements.
211 - Code cleanup and formatting.
212 
213 May 29, 2019 G.Cosmo (geommng-V10-05-07)
214 - Fixed minor Coverity defects.
215 
216 May 20, 2019 G.Cosmo (geommng-V10-05-06)
217 - Defined move constructor and move assignment operator for G4AffineTransform.
218 
219 May 14, 2019 B.Morgan (geommng-V10-05-05)
220 - Use header-based #define/undef symbols to configure VecGeom replacements
221 - G4GeomConfig.hh: Generated header configuring #defines using CMake settings
222 - G4GeomTypes.hh: "Interface" header to support old GNUmake system. All Geant4
223   code should #include this rather than the generated header, which is only
224   present in CMake mode.
225 - G4UAdapter.hh: Add inclusion of G4GeomTypes.hh
226 - See also cmake-V10-05-03
227 
228 May 13, 2019 G.Cosmo (geommng-V10-05-04)
229 - Replaced deprecated std::binary_function calls with lambdas in
230   G4SmartVoxelStat and G4GeometryManager.
231   Courtesy of S.Losilla, from GitHub PR#8.
232 
233 April 29, 2019 G.Cosmo (geommng-V10-05-03)
234 - Properly initialise to zero splitted data in G4VPhysicalVolume.
235 
236 April 23, 2019 G.Cosmo (geommng-V10-05-02)
237 - G4GeomSplitter: re-enabled use or realloc()/free() and memcpy(), after
238   adapting G4VPhysicalVolume MT splitted data to adopt only trivial types
239   for allocation.
240 
241 March 8, 2019 G.Cosmo (geommng-V10-05-01)
242 - G4LogicalVolume: in AddDaughter() avoid propagating pointer to field-manager
243   if this is null. Addressing problem report #2145.
244 
245 January 30, 2019 A.Dotti, G.Cosmo (geommng-V10-05-00)
246 - Use reverse_iterator in G4SolidStore::DeRegister() in order to speedup
247   partial deregistration on setups with many solids instances.
248 - G4Region: added possibility to disable search in the tree in
249   AddRootLogicalVolume() for speeding up process in complex flat geometries.
250 
251 October 18, 2018 E.Tcherniaev (geommng-V10-04-08)
252 - G4VSolid: improved setting of surface thickness in EstimateSurfaceArea().
253 
254 October 12, 2018 E.Tcherniaev (geommng-V10-04-07)
255 - G4VSolid: more precise calculation of distance for inside points in
256   EstimateSurfaceArea().
257 
258 October 10, 2018 E.Tcherniaev (geommng-V10-04-06)
259 - G4VSolid: reimplemented EstimateSurfaceArea() for approximate calculation
260   of the surface area of a solid, by estimating volume of a thin shell
261   surrounding the surface using Monte-Carlo method; algorithm providing more
262   accurate estimation without performance penalty.
263 
264 May 16, 2018 G.Cosmo (geommng-V10-04-05)
265 - G4GeomSplitter: replaced use or realloc()/free() and memcpy() with
266   normal allocation/deallocation through G4Allocator. Also addressing
267   compilation warnings on gcc-8.1.
268 
269 May 11, 2018 E.Tcherniaev (geommng-V10-04-04)
270 - G4AffineTransform: further optimised InverseProduct(), for the case where
271   tf2 is a pure translation.
272 
273 May 7, 2018 E.Tcherniaev (geommng-V10-04-03)
274 - G4AffineTransform: added explicit copy constructor, assignment and destructor;
275   InverseProduct() has been optimised, now it does 36 multiplications instead
276   of 45; added methods for inverse transformation: InverseTransformPoint(),
277   InverseTransformAxis(), InverseNetRotation() and InverseNetTranslation().
278 
279 April 24, 2018 E.Tcherniaev (geommng-V10-04-02)
280 - G4AffineTransform: minor optimisation to multiplication of matrix by vector,
281   to make use of temporaries in accessing vector components.
282 
283 April 11, 2018 G.Cosmo (geommng-V10-04-01)
284 - Replaced USOLIDS_LIBRARIES with VECGEOM_LIBRARIES in sources.cmake.
285 
286 December 19, 2017 G.Cosmo (geommng-V10-04-00)
287 - Fixed self-consistency in G4VVolumeMaterialScanner header (missing #include).
288   Thanks to Raphael Isemann for reporting this.
289 
290 November 10, 2017 P.Arce (geommng-V10-03-22)
291 - Bug report 2011: precision correction in G4ErrorPlaneSurfaceTarget.cc
292 
293 October 16, 2017 G.Cosmo                   geommng-V10-03-21
294 - Removed G4USolid base wrapper for USolids. Only native VecGeom
295   implementation through G4UAdapter is now supported.
296   Requires corresponding tag "geom-specific-V10-03-20".
297 - Enable proper implementation of operator=() in G4UAdapter.
298 
299 October 11, 2017 E.Tcherniaev              geommng-V10-03-20, 19
300 - G4GeomTools: added PointInPolygon() function, to dtermine the position of a
301   point relative to a polygon in 2D.
302 
303 June 9, 2017 G.Cosmo                       geommng-V10-03-18
304 - Corrections and improvements to G4UAdapter.
305 
306 June 1, 2017 G.Cosmo                       geommng-V10-03-17
307 - Made G4UAdapter compliant with latest modifications in VecGeom for
308   renaming of GetPointOnSurface() method to SamplePointOnSurface().
309 
310 May 24, 2017 G.Cosmo                       geommng-V10-03-16
311 - Renamed ambiguous name Extent() in G4VSolid to BoundingLimits().
312   Modified G4ReflectedSolid accordingly.
313   Change required in order to avoid signature conflict with VecGeom
314   in G4U* wrappers.
315 
316 May 24, 2017 G.Cosmo                       geommng-V10-03-15
317 - Added adapter class G4UAdapter for interfacing G4U* wrappers with VecGeom.
318   Will replace G4USolid bridge class, deprecating USolids API in favour of
319   direct use of VecGeom signatures and removal of one extra-level of
320   indirection/inheritance.
321 
322 May 9, 2017 G.Cosmo                        geommng-V10-03-14
323 - Moved few key methods to be inline in G4USolid.
324 
325 March 28, 2017 G.Cosmo                     geommng-V10-03-13
326 - Enabled deletion of solids in G4SolidsStore destructor also for MT mode.
327 
328 March 22, 2017 G.Cosmo                     geommng-V10-03-12
329 - Define IsGeometryClosed() in G4GeometryManager as a static method, to
330   avoid call to GetInstance(). Made related Boolean flag thread-local.
331 
332 March 21, 2017 G.Cosmo                     geommng-V10-03-11, 10
333 - Restore singleton pointer to thread-local and provide simple accessor to it.
334 
335 March 17, 2017 G.Cosmo                     geommng-V10-03-09
336 - Define G4GeometryManager as normal singleton.
337 
338 March 15, 2017 G.Cosmo                     geommng-V10-03-08
339 - Refined deletion of subinstance offsets in stores.
340 
341 March 14, 2017 G.Cosmo                     geommng-V10-03-07
342 - Removed additional wrong lock in G4GeomSplitter for function
343   SlaveReCopySubInstanceArray().
344 - Disable cleaning of subinstance offsets on Windows.
345 
346 March 10, 2017 G.Cosmo                     geommng-V10-03-06,5,4,3
347 - Fixed static memory leak from G4LogicalVolume, G4VPhysicalVolume and
348   G4Region, for offsets allocated in sequential mode.
349 
350 February 27, 2017 E.Tcherniaev             geommng-V10-03-02
351 - Added functions EllipsePerimeter(), EllipticConeLateralArea() and
352   comp_ellint_2() to G4GeomTools.
353 
354 December 16, 2016 G.Cosmo                  geommng-V10-03-01
355 - Fixed compilation warning on gcc-6.2 for last changes in G4GeomTools.
356 
357 December 14, 2016 E.Tcherniaev             geommng-V10-03-00
358 - Added methods TriangelAreaNormal(), QuadAreaNormal(), PolygonAreaNormal(),
359   ClosestPointOnSegment() and ClosestPointOnTriangle() to G4GeomTools.
360 
361 November 8, 2016 G.Cosmo                   geommng-V10-02-32
362 - Fixed header inclusions in G4LogicalCrystalVolume and make use of
363   dynamic_cast instead of C-style cast.
364 
365 November 8, 2016 G.Cosmo                   geommng-V10-02-31
366 - Again code formatting to G4LogicalCrystalVolume files.
367 
368 November 7, 2016 E. Bagli                  geommng-V10-02-30
369 - Modified G4LogicalCrystalVolume for the G4CrystalExtension
370 
371 November 3, 2016 G.Cosmo                   geommng-V10-02-29
372 - Added Extent() virtual method to G4VSolid and G4ReflectedSolid (E.Tcherniaev).
373 - Fixed Coverity defect in G4LogicalVolume::ClearDaughters().
374 
375 November 1, 2016 E.Tcherniaev              geommng-V10-02-28
376 - Added function DistancePointSegment() to G4GeomTools class.
377 - Code formatting in G4LogicalCrystalVolume.
378 
379 October 26, 2016 E.Tcherniaev              geommng-V10-02-27
380 - Added new functions SphereExtent(), TriangulatePolygon(), IsConvex() and
381   RemoveRedundantVertices() to G4GeomTools class.
382 
383 October 24, 2016 E.Bagli                   geommng-V10-02-26
384 - Added class G4LogicalCrystalVolume, representing an extended logical
385   volume for crystal description.
386 
387 October 21, 2016 G.Cosmo                   geommng-V10-02-25
388 - Moved initialisation of G4GeomSplitter thread-local data to be inline
389   along with generic template type.
390   Fixing compilation/linking errors on clang-3.9 and XCode-8 on MacOS.
391 - Added IsConvex() method to G4GeomTools.
392 
393 October 19, 2016 M.Asai                    geommng-V10-02-24, 23
394 - G4LogicalVolume: added virtual keyword is to destructor for extended
395   yypes in the kernel. Added IsExtended() method.
396 
397 October 16, 2016 E.Tcherniaev
398 - New utility class G4GeomTools providing static utility methods for
399   geometry related calculations.
400 
401 October 2, 2016 E.Tcherniaev               geommng-V10-02-22
402 - G4BoundingEnvelope: take into account four points instead of three in
403   CreateListOfPlanes().
404 
405 September 26, 2016 E.Tcherniaev            geommng-V10-02-21
406 - G4USolid: make direct use extent from shapes for computing bounding-box
407   in CalculateExtent().
408 
409 September 22, 2016 E.Tcherniaev            geommng-V10-02-20
410 - Added checks for bounding-box extents in G4USolid.
411 - Converted fatal exception to warning for CheckBoundingBox() in
412   G4BoundingEnvelope. Corrected use of 'const' data to resolve Coverity
413   defects.
414 
415 September 20, 2016 G.Cosmo                 geommng-V10-02-19
416 - Moved accessors/modifiers for splitter data to non-inline in G4Region,
417   G4LogicalVolume, G4VPhysicalVolume.
418   Fixing compilation/linking errors on clang-3.9 and XCode-8 on MacOS.
419 
420 September 9, 2016 E.Tcherniaev
421 - G4BoundingEnvelope: added QuickCheck() function.
422 
423 September 2, 2016 E.Tcherniaev             geommng-V10-02-18
424 - G4BoundingEnvelope: fixed bug in construction of voxel edges.
425 
426 August 8, 2016 E.Tcherniaev                geommng-V10-02-17
427 - G4BoundingEnvelope: some improvement of internal consistency in the code.
428 
429 July 7, 2016 G.Cosmo                       geommng-V10-02-16
430 - Removed redundant check in G4GeomSplitter::UseWorkArea().
431   Addressing problem report #1876.
432 
433 July 6, 2016 G.Cosmo                       geommng-V10-02-15
434 - Correction in G4USolid::CalculateExtent() for correct return-type.
435 
436 June 29, 2016 E.Tcherniaev                 geommng-V10-02-14
437 - Optimised version of G4BoundingEnvelope.
438 
439 June 28, 2016 E.Tcherniaev
440 - Re-implemented CalculateExtent() in G4USolid to use G4BoundingEnvelope;
441   removed method CreateRotatedVertices().
442 
443 June 27, 2016 E.Tcherniaev
444 - G4AffineTransform: added conversion operator to G4Transform3D and
445   simplified implementation of NetRotation() in terms of G4Rep3x3.
446 
447 June 13, 2016 E.Tcherniaev
448 - G4ReflectedSolid: new revision of CalculateExtent(), to make use of
449   CalculateExtent() from the constituent solid, applying proper transformation.
450   Removed use of G4BoundingEnvelope.
451 
452 June 7, 2016 G.Cosmo                       geommng-V10-02-13
453 - Initialise 'emin' and 'emax' in G4BoundingEnvelope::CalculateExtent().
454 
455 June 6, 2016 E.Tcherniaev                  geommng-V10-02-12
456 - Introduced G4BoundingEnvelope helper class to be used for the calculation
457   of the extent of a solid within the limits defined by the G4VoxelLimits
458   object.
459 - Re-implemented CalculateExtent() in G4ReflectedSolid to use new class
460   G4BoundingEnvelope.
461 
462 June 6, 2016 E.Tcherniaev                  geommng-V10-02-11
463 - G4G4ScaleTransform: simplified signatures in TransformDistance() and
464   in InverseTransformDistance(); make use of accessors.
465 
466 June 1, 2016 G.Cosmo                       geommng-V10-02-10
467 - Corrected treatment of polyhedron for G4ReflectedSolid to avoid thread
468   contention.
469 
470 May 18, 2016 G.Cosmo                       geommng-V10-02-09, 08
471 - More simplified code for G4ReflectedSolid; also removed not used cached
472   inverse transformation.
473 
474 May 17, 2016 E.Tcherniaev                  geommng-V10-02-07
475 - Use G4Normal3D with proper inverse transformation for calculation of
476   normals in G4ReflectedSolid.
477 
478 May 13, 2016 G.Cosmo                       geommng-V10-02-06, 05
479 - Properly use 3D transformations in G4ReflectedSolid. Removed unused
480   affine-transformation data and related methods.
481   Corrected GetPolyhedron() for multi-threading.
482 - Updated unit test visualization macros and UI setup.
483 
484 May 12, 2016 E.Tcherniaev                  geommng-V10-02-04
485 - Added transformations for normal vectors in G4ScaleTransform.
486 
487 April 14, 2016 G.Cosmo                     geommng-V10-02-03
488 - Added flag for partial use of USolids/VecGeom types.
489 
490 April 12, 2016 G.Cosmo                     geommng-V10-02-02
491 - Minor cosmetics to G4USolid.
492 
493 March 31, 2016 G.Cosmo                     geommng-V10-02-01
494 - Throw exception in call to CreatePolyhedron() for base class G4USolid.
495   Method is now implemented in the concrete wrappers.
496 
497 March 16, 2016 G.Cosmo                     geommng-V10-02-00
498 - Added G4ScaleTransform class for Cartesian scaling transformations.
499 - G4AffineTransform: added inline keywords and fixed formatting.
500 - In G4USolid, directly call GetEntityType() from wrapper classes for
501   CreatePolyhedron().
502 
503 October 15, 2015 W.Pokorski                geommng-V10-01-07
504 - Added shadow pointers to shared data structures in G4LogicalVolume
505   and G4VPhysicalVolume for exclusive use by object persistency.
506 
507 October 7, 2015 G.Cosmo                    geommng-V10-01-06
508 - Protected compilation of G4USolid class with G4GEOM_USE_USOLIDS flag.
509 - Replaced use of sprintf with C++ streams in G4AffineTransform.
510 
511 September 14, 2015 G.Cosmo                 geommng-V10-01-05
512 - Moved EstimateCubiVolume() and EstimateSurfaceArea() to public section
513   for specific use-cases and customisation of precision.
514 
515 August 6, 2015 G.Cosmo                     geommng-V10-01-04
516 - Checked for potential never-ending loops. No issues found.
517 
518 June 15, 2015 G.Cosmo        geommng-V10-01-03
519 - Return const reference in G4LogicalVolume::GetName().
520   Addressing report #1757.
521 
522 May 5, 2015 A.Dotti        geommng-V10-01-02
523 - Use G4Threading::IsMasterThread function as suggested by J.Allison
524 
525 April 30, 2015 G.Cosmo                     geommng-V10-01-01
526 - Removed unused data-member in G4LogicalVolume, and fixed minor
527   Coverity defect for unitialised member 'fBiasWeight' in constructor.
528 - Use scoped enum for EnumSide in G4USolid.cc if c++11 enabled.
529 
530 April 29, 2015 J.Apostolakis
531 - Added streaming operator <<() to G4AffineTransform.
532 - Cosmetics to G4RegionStore header.
533 
534 March 3, 2015 G.Cosmo                      geommng-V10-01-00
535 - Use accessors x(), y() and z() from UVector3, instead of directly accessing
536   its data-members. Co-work with tag "geom-usolids-V10-01-09".
537 
538 November 27, 2014 G.Cosmo                  geommng-V10-00-06
539 - Fixed implementation of StreamInfo() for G4USolid.
540 
541 October 29, 2014 G.Cosmo                   geommng-V10-00-05
542 - Moved G4USolid bridge class from internal USolids module.
543 
544 October 3, 2014 G.Cosmo                    geommng-V10-00-04
545 - Moved constructor for partial voxels refinements from protected to public.
546 
547 September 25, 2014 W. Pokorski             geommng-V10-00-03
548 - Some fixes in the default constructor for Root-I/O persistency.
549 
550 July 11, 2014 A. Dotti         geommng-V10-00-02
551 - Solves possible data-race condition in G4GeaomSplitter.
552 
553 April 10, 2014 G.Cosmo                     geommng-V10-00-01
554 - Get rid of deprecated 'register' storage class specifier in source files.
555 
556 March 31, 2014 G.Cosmo                     geommng-V10-00-00
557 - Fixed operator=() signature in G4LogicalSurface.
558 
559 December 2, 2013 A.Dotti                   geommng-V09-06-17
560 - Correctly initialize shadow pointers in G4PhysicalVolume.
561 
562 December 2, 2013 M.Asai                    geommng-V09-06-16
563 - Correctly initialize shadow pointers in G4LogicalVolume.
564 
565 November 30, 2013 M.Asai                   geommng-V09-06-15
566 - Explicitely initialize data members of G4LVData.
567 
568 November 27, 2013 J.Apostolakis            geommng-V09-06-14
569 - Fix in G4GeomSplitter::FreeSlave(): use free() to delete memory
570    which was allocated with malloc().
571 
572 October 18, 2013, A. Dotti                 geommng-V09-06-13
573 - Bug fixing in G4GeomSplitter::UseWorkspace method
574   check if offset pointer is assigned AND different from new value
575 
576 October 3, 2013 J.Apostolakis              geommng-V09-06-12
577 - Cleanup of G4LogicalVolume, G4VPhysicalVolume
578      Moved long description of helper classes to end of headers.
579      Moved macros to icc file.
580      Revised source code to use Get/Set methods in place of 'macros'
581       introduced with G4MT,  ie G4MT_rot etc
582 - LogicalVolume: Added new methods, data member
583      * new methods AssignFieldManager,
584      * Get/Set Solid( G4LVData, .) for potential performance improvement
585      * bool fChangedState.
586 
587 August 27, 2013 G.Cosmo                    geommng-V09-06-11
588 - Added G4Ellipsoid among solids enabled for parameterisation.
589 
590 August 22, 2013 G.Cosmo                    geommng-V09-06-10
591 - Added parameter to specify maximum number of overlap errors to report
592   in G4VPhysicalVolume::CheckOverlaps().
593 
594 August 21, 2013 G.Cosmo                    geommng-V09-06-09
595 - Added methods G4VPhysicalVolume::VolumeType() and
596   G4LogicalVolume::CharacteriseDaughters() to be used by G4Navigator.
597 
598 July 29, 2013 T.Nikitina                   geommng-V09-06-08
599 - Fix to G4VSolid::EstimateCubicVolume() to make proper use of specified
600   accuracy. Addressing problem report #1493.
601 
602 June 20, 2013 A.Dotti        geommng-V09-06-07
603 - Bug fix for MT: set static TLS pointer G4GeomSplitter::offset to 0 after
604   delete in split-class mechanism G4GeomSplitter::FreeSlave
605 
606 March 12, 2013 G.Cosmo                     geommng-V09-06-06
607 - Removed thread-locality in obsolete G4VPhysicalVolume::GetObjectRotation()
608   implementation.
609 
610 March 12, 2013 G.Cosmo                     geommng-V09-06-05
611 - Added public accessors for MT data to G4LogicalVolume, G4VPhysicalVolume
612   and G4Region.
613 
614 March 11, 2013 G.Cosmo                     geommng-V09-06-04
615 - Redefined G4DLL_API to G4GEOM_DLL to avoid cases of macro redefinition.
616 
617 March 08, 2013  G.Cosmo                    geommng-V09-06-03, geommng-V09-06-02
618 - Renamed G4MT macros to safer ID.
619 - Moved MT data to protected in G4VPhysicalVolume.
620 
621 March 07, 2013  G.Cosmo                    geommng-V09-06-01
622 - Added splitter class G4GeomSplitter from original MT transitory class
623   introduced in "global" module.
624 - Added geomwdef.hh header including definition of G4DLL_API flag for
625   import/export of symbols for Windows DLL build.
626 - Cleanup of code from MT automatic changes.
627 
628 December 02, 2012  J.Allison               geommng-V09-06-00
629 - Removed NURBS.
630 
631 November 28, 2012  G.Cosmo                 geommng-V09-05-04
632 - Get rid of explicit inclusion of costants header from meshdefs.hh.
633 
634 August 15, 2012  V.Ivantchenko             geommng-V09-05-03
635 - Add base materials in G4Region::ScanVolumeTree() to the list of region
636   materials, when applicable.
637 
638 June 11, 2012  G.Cosmo                     geommng-V09-05-02
639 - Explicitly use inclusion of headers for system of units and physical
640   constants, in plan to remove implicit inclusion from globals.hh.
641 
642 April 4, 2012  G.Cosmo                     geommng-V09-05-01
643 - Fixed spurious cases of hidden variable visibility (-Wshadow
644   compilation option on gcc compiler).
645 
646 April 4, 2012  G.Cosmo                     geommng-V09-05-00
647 - Extended one comment to G4VSolid header.
648 
649 August 24, 2011  G.Cosmo                   geommng-V09-04-04
650 - Migrated to new G4Exception scheme for warnings and errors.
651 - Defined scheme for warnings/errors coding:
652   + 1xxx for warnings, 0xxx for errors.
653   Code numbering:
654   + 0001: not supported or implemented features;
655   + 0002: invalid setup/construct;
656   + 0003: invalid run condition;
657   + 1001: incorrect setup; automatically adapted.
658   + 1002: notification.
659 - Made default argument for G4RegionStore::UpdateMaterialList().
660 
661 August 10, 2011  M.Asai                    geommng-V09-04-03
662 - Introducing parallel layered mass geometry. Material is now scanned for
663   all the regions in all defined worlds. Modified G4Region and G4RegionStore.
664 
665 May 12, 2011  G.Cosmo                      geommng-V09-04-02
666 - Fixed trivial compilation warnings detected with gcc-4.6.0.
667 
668 March 31, 2011  G.Cosmo                    geommng-V09-04-01
669 - Fix in G4LogicalVolume::AddDaughter() for proper propagation settings
670   of local field manager. Avoid forcing propagation to all daughters when
671   a local field manager is set already for the new daughter.
672   Addressing problem report #1183.
673 
674 March 21, 2011  G.Cosmo                    geommng-V09-04-00
675 - Use internal G4 header for physical constants in meshdefs.h.
676 
677 October 19, 2010  G.Cosmo                  geommng-V09-03-05
678 - Added Clone() virtual method to G4VSolid, to return a pointer to a
679   dynamically allocated copy of the solid. To be used by Geant4-MT.
680 - Added copy-ctr and assignment operator to G4ReflectedSolid, now also
681   implementing the Clone() method.
682 
683 September 6, 2010  G.Cosmo                 geommng-V09-03-04
684 - Fixed false-positive null forward case in G4SmartVoxelHeader.
685 
686 July 16, 2010  G.Cosmo                     geommng-V09-03-03
687 - Fixed compilation errors for code within G4GEOMETRY_VOXELDEBUG flag
688   in G4GeometryManager and G4SmartVoxelHeader.
689 - Added printout of voxel limits in G4SmartVoxelHeader::Buildnodes() and
690   removed protection on node width previously introduced.
691 
692 July 13, 2010  G.Cosmo                     geommng-V09-03-02
693 - G4SmartVoxelHeader: added protection against rare cases of zero computed
694   node width in BuildNodes().
695 
696 July 2, 2010  G.Cosmo                      geommng-V09-03-01
697 - G4LogicalSurface: added missing initialisation for 'theTransRadSurface'
698   data member. Made virtual destructor and constructors not inline.
699 - G4ErrorTarget: added missing default initialisation of a data member.
700 - G4SmartVoxelHeader: added return statement after exceptions in methods
701   BuildVoxelsWithinLimits() and BuildNodes(); fixed case of invalid iterator
702   in deletion of test slices in BuildVoxelsWithinLimits(); added protection
703   for cases of invalide number of nodes in RefineNodes(), and added return
704   statement after exceptions.
705 - G4GeometryManager: restore cout precision after printing voxel statistics.
706 - G4LogicalVolume: added return statement after exception in GetMass().
707 - G4ReflectedSolid: moved reserve() statement for 'vertices' within null-check
708   condition in CalculateExtent() ...
709 
710 February 9, 2010  G.Cosmo                  geommng-V09-03-00
711 - Fixed initialisation of min/max extent for mother and target volumes in
712   method BuildNodes() of G4SmartVoxelHeader.
713 
714 November 27, 2009  G.Cosmo                 geommng-V09-02-05
715 - G4Region: added pointer to field-manager and associated accessor/modifier.
716 
717 November 6, 2009  G.Cosmo                  geommng-V09-02-04
718 - G4VTouchable: moved inline vitual methods, constructor and destructor to
719   source, to avoid problem of memory alignment in allocation of derived objects.
720 
721 October 30, 2009  G.Cosmo                  geommng-V09-02-03
722 - Clear possible excess capacity in node vectors in G4SmartVoxelHeader
723   BuildNodes() method. May reduce excess memory allocated in optimisation
724   in large detector setups, with slight time increase in initialisation for
725   geometry voxelisation.
726 
727 September 24, 2009  G.Cosmo                geommng-V09-02-02
728 - Fixed implementation of G4LogicalVolume::TotalVolumeEntities() to become
729   invariant to call sequence.
730 
731 May 25, 2009  G.Cosmo                      geommng-V09-02-01
732 - Fixed initialisation of min/max extent in method BuildReplicaVoxels() in
733   G4SmartVoxelHeader.
734 
735 April 16, 2009  G.Cosmo                    geommng-V09-02-00
736 - Adopt 'const' references for strings as arguments/return-values in
737   G4LogicalSurface. Some minor cleanup...
738 
739 September 23, 2008  G. Cosmo               geommng-V09-01-08
740 - G4VSolid: explicitely reserve memory for polygon vectors in clipping
741   algorithm to help reducing memory footprint. Courtesy of P.Elmer, CMS.
742 
743 September 10, 2008  G. Cosmo               geommng-V09-01-07
744 - G4VSolid: promote copy-constructor and assignment operator to public
745   to cope with specific use-case in ATLAS (see problem report #1023).
746 
747 July 15, 2008  G.Cosmo                     geommng-V09-01-06
748 - G4Region: re-introduced protection for setting of root-region flag to the
749   world volume in method RemoveRootLogicalVolume(), to cover case of explicit
750   deletion of stores in the user application for dynamic geometries setups.
751 
752 July 10, 2008  G.Cosmo                     geommng-V09-01-05
753 - G4LogicalVolume, G4LogicalVolumeStore: modified logic for the deletion
754   of the root-region volumes, adding locking mechanism and automatically
755   de-registering the world default root-region.
756   Simplified Clean() method in the store, by removing unused and unnecessary
757   flag for logical-volumes notification.
758 - Reinstated update of materials in G4Region::RemoveRootLogicalVolume()
759   to correct handling individual removal of root-region volumes and restore
760   proper setup state.
761 
762 May 16, 2008  G.Cosmo                      geommng-V09-01-04
763 - G4Region: changed condition inside ScanVolumeTree() to check for the
764   existence of a valid material-scanner pointer to apply the material scan
765   instead of using the flag for nested structures.
766 - G4GeometryManager: do not apply optimisation on the current volume if it
767   has been defined as a regular structure.
768 - Addresses problem report #990 on suggestions by M.Mendenhall.
769 
770 March 13, 2008  G.Cosmo                    geommng-V09-01-03
771 - Cleared compilation warnings in G4GeometryManager on gcc-4.3.0 for
772   ambiguous use of parentheses in condition statements.
773 
774 February 20, 2008  I.Hrivnacova            geommng-V09-01-02
775 - Implemented missing protected copy-contructor and assignment operator
776   for G4VSolid.
777 
778 January 24, 2008  G.Cosmo                  geommng-V09-01-01
779 - Added Shrink() method to G4SmartVoxelNode to shrink memory allocated
780   for the buffer of slices; to be used for studying ways of reducing memory
781   waste when building nodes in G4SmartVoxelHeader for large geometry setups.
782 
783 January 14, 2008  G.Cosmo                  geommng-V09-01-00
784 - Added Reserve() method to G4SmartVoxelNode to reserve memory allocated
785   for the buffer of slices; to be used for studying ways of reducing memory
786   waste when building nodes in G4SmartVoxelHeader for large geometry setups.
787 
788 October 24, 2007  G.Cosmo                  geommng-V09-00-01
789 - Fixed typo in forcing minimum number of points in method
790   G4VSolid::EstimateSurfaceArea(). Addresses problem report #981.
791 
792 July 16, 2007  G.Cosmo                     geommng-V09-00-00
793 - Added dummy constructor and destructor to G4VPVParameterisation.
794 
795 June 19, 2007  G.Cosmo                     geommng-V08-03-03
796 - Apply migration to <cmath> and std:: for G4ErrorCylSurfaceTarget and
797   G4ErrorPlaneSurfaceTarget implementations. Fixes compilation problems
798   detected on Windows VC++8.
799 
800 May 16, 2007  G.Cosmo                      geommng-V08-03-02
801 - Introduced new classes for handling error propagation: G4ErrorTarget,
802   G4ErrorSurfaceTarget, G4ErrorTanPlaneTarget, G4ErrorPlaneSurfaceTarget,
803   G4ErrorCylSurfaceTarget (by P.Arce).
804 - Coworks with tag "global-V08-03-02".
805 
806 May 11, 2007  G.Cosmo                      geommng-V08-03-01
807 - Use call to G4GeometryTolerance instead of kCarTolerance where needed.
808 - Requires tag "global-V08-03-00" and related tag set.
809 
810 April 26, 2007  M.Asai                     geommng-V08-03-00
811 - Added forward declaration and pointer (with set/get methods) to
812   G4VUserSteppingAction, to allow for stepping actions defined at region.
813 
814 April 11, 2007  G.Cosmo                    geommng-V08-02-02
815 - Added 'get' methods to stores for retrivial of volumes/solid by name.
816 - Modified signature of G4VPhysicalVolume::CheckOverlaps() to introduce
817   ability of handling tolerances for overlaps.
818 - Coworks with tag "geomvol-V08-02-02".
819 
820 March 20, 2007  G.Cosmo                    geommng-V08-02-01
821 - Do not reset RegionRootFlag in RemoveRootLogicalVolume() if volume is the
822   world, since the volume itself may be already removed from the store if
823   G4LogicalVolumeStore::Clean() is called.
824 
825 January 31, 2007  G.Cosmo                  geommng-V08-02-00
826 - Added flag for controlling verbosity to CheckOverlaps() method.
827   By default, verbosity is ON.
828 
829 November 30, 2006  G.Cosmo                 geommng-V08-01-08
830 - Corrected deregistration and deletion of world default region, now
831   happening through G4RunManagerKernel. Affected codes: G4LogicalVolume
832   destructor and G4RegionStore::Clean() method.
833 - Minor cleanup in the implementation of the other stores.
834 
835 November 8, 2006  G.Cosmo                  geommng-V08-01-07
836 - Fixed compilation problems on SUN-CC for changes in the last tag.
837   Added inclusion of <sstream> header in G4ReflectedSolid.cc.
838 
839 November 6, 2006  J.Allison                geommng-V08-01-06
840 - Fix in G4ReflectedSolid::CreatePolyhedron() for case of component that
841   does not have a G4Polyhedron representation.
842 
843 October 23, 2006  G.Cosmo                  geommng-V08-01-05
844 - Replaced algorithm for EstimateSurfaceArea() in G4VSolid with more precise
845   method by M.Kosov based on skin surface estimation.
846 
847 October 19, 2006  G.Cosmo                  geommng-V08-01-04
848 - Modified interface for GetSurfaceArea() to be similar to the one for
849   the computation of the geometrical volume, and allow the caching
850   mechanism.
851 
852 October 18, 2006  G.Cosmo                  geommng-V08-01-03
853 - Added GetSurfaceArea() method to G4VSolid for approximated computation
854   of the surfare area of a shape.
855 
856 October 2, 2006  G.Cosmo                   geommng-V08-01-02
857 - Removed debug printout in G4IdentityTrajectoryFilter implementation.
858 
859 September 18, 2006  G.Cosmo                geommng-V08-01-01
860 - Added empty virtual method CheckOverlaps() to G4VPhysicalVolume to allow
861   for proper overloading from subclasses. Implementation returns always
862   'false', which the case for replicas.
863 
864 July 17, 2006  M.Asai                      geommng-V08-01-00
865 - Fix a bug in G4Region.cc for nested parameterization.
866 
867 May 3, 2006  G.Cosmo                       geommng-V08-00-05
868 - Modified G4VStoreNotifier class to be now a typedef of G4VNotifier which
869   is moved in the 'global' module. Adapted stores to the new configuration.
870 - Requires tag "global-V08-00-02".
871 
872 May 2, 2006  G.Cosmo                       geommng-V08-00-04
873 - Moved G4AssemblyTriplet class to 'volumes' module.
874 - Requires tag "geomvol-V08-00-03".
875 
876 May 1, 2006  G.Cosmo                       geommng-V08-00-03
877 - G4Region:
878   o Added inclusion of <algorithm> to resolve compilation error on WIN32-VC.
879   o Fixed compilation warning for unused variable.
880 
881 April 28, 2006  G.Cosmo                    geommng-V08-00-02
882 - G4VPhysicalVolume: return 'const G4String&' for GetName() instead of a
883   string copy.
884 
885 April 4, 2006  G.Cosmo                     geommng-V08-00-01
886 - G4Region:
887   + Support material scanning for nested parameterisations. Moved classes
888     G4VNestedParameterisation and G4VVolumeMaterialScanner from 'volumes'
889     module.
890   + Fixed implementation of utility method GetParentRegion() to return a
891     boolean flag as argument, to identify if parent region is unique or not.
892   + Simplified implementation of method BelongsTo(PV*).
893 - Requires tag "geomvol-V08-00-02".
894 
895 April 3, 2006  G.Cosmo                     geommng-V08-00-00
896 - Fix in G4SmartVoxelHeader::BuildNodes() to avoid rare cases of negative
897   extent returned by volumes due to malformed geometries or inaccurate
898   extent calculation.
899 
900 November 19, 2005  J.Apostolakis           geommng-V07-01-05
901 - Revised G4VPVParameterisation:
902   + Changed signature of ComputeMaterial(), adding parent touchable pointer.
903     This refinement enables easy use of nested parameterisations.
904   + Additional methods allow nested parameterisation to be identified:
905       G4bool IsNested() const;
906     and to provide their material via new interface class:
907       G4VVolumeMaterialScanner* GetMaterialScanner();
908   + Suppressed temporary G4PhysicalTouchable class in volumes, not needed
909     in the implementation any longer.
910 
911 November 11, 2005  J.Apostolakis           geommng-V07-01-04
912 - Added methods to identify  Regular Structures in  Physical volume
913   New pure virtual methods:
914     - IsRegularStructure()     ,  returns boolean
915     - GetRegularStructureId()  ,  returns code for structure type
916 
917 November 9, 2005  G.Cosmo                  geommng-V07-01-03
918 - Added fake default constructor for base types of volumes, solids and
919   regions, for usage of direct object persistency.
920 - Migrated unit test TestAssemblyVolume to <sstring> from
921   deprecated <strstream>.
922 
923 October 28, 2005  M.Asai                   geommng-V07-01-02
924 - Merged concept of "envelope" to G4Region for fast-parameterisation.
925 
926 September 15, 2005  V.Grichine             geommng-V07-01-01
927 - Added concrete implementation for GetPointOnSurface() to G4ReflectedSolid.
928 
929 August 10, 2005  G.Cosmo                   geommng-V07-01-00
930 - Added virtual method GetPointOnSurface() to G4VSolid to be implemented in
931   the concrete solids classed for returning a random-point uniformely
932   distributed on the surface.
933 
934 May 25, 2005  G.Cosmo                      geommng-V07-00-04
935 - Fixed problem with previous tag, where version of G4LogicalVolume.cc was
936   not correct and untagged.
937 - G4LogicalVolume::SetVisAttributes(const G4VisAttributes& VA): now creating
938   a copy of 'VA' on the heap. Temporary solution, until a proper 'store' for
939   visualization attributes will be implemented to take care of the memory
940   management.
941 
942 May 23, 2005  G.Cosmo                      geommng-V07-00-03
943 - Modified comments in G4VSolid and G4BlockingList to overcome a limitation in
944   the scripts for the generation of the Software Reference Manual.
945 
946 Apr 13, 2005  G.Cosmo                      geommng-V07-00-02
947 - Extended signatures for OpenGeometry() and CloseGeometry() to consider local
948   optimisation of a subtree of volumes. Voxelisation can now apply to just a
949   specific subtree if a physical volume is specified.
950 
951 Apr 02, 2005  M.Asai                       geommng-V07-00-01
952 - Added protection against NULL material pointer for volumes belonging
953   to the tracking geometry in G4Region scanning.
954   Addresses problem report #735.
955 
956 Mar 23, 2005  J.Allison
957 - Added test for Number-Of-Rotation-Steps in G4ReflectedSolid::GetPolyhedron().
958   Requires tag "greps-V07-00-02".
959 
960 Mar 22, 2005  J.Allison
961 - G4ReflectedSolid: correction: changed AddThis to AddSolid.
962 
963 Mar 02, 2005  G.Cosmo                      geommng-V07-00-00
964 - Added optional boolean argument 'propagate' to GetMass() to avoid
965   propagation of computation of masses to the daughter volumes (courtesy
966   of G.Santin). Propagation to daughters is done by default.
967 
968 Feb 18, 2005  M.Asai
969 - Added G4UserLimits pointer to G4Region and added access from G4LogicalVolume.
970 
971 Dec 02, 2004  G.Cosmo                      geommng-V06-02-08
972 - Implemented migration to <cmath> for standard mathematical functions.
973 
974 Nov 19, 2004  G.Cosmo                      geommng-V06-02-07
975 - Added GetCopyNumber() method to G4VTouchable, clone of GetReplicaNumber().
976 
977 Nov 16, 2004  M.Asai                       geommng-V06-02-06
978 - Fix in G4LogicalVolume::UpdateMaterial() for checking the existance of
979   root-region pointer for logical-volume. Fixes report #684.
980 
981 Nov 13, 2004  G.Cosmo                      geommng-V06-02-05
982 - Added method TotalVolumeEntities() to G4LogicalVolume, returning the
983   total number of physical volumes (placed or replicated/parameterised)
984   included in the tree represented by the current logical volume.
985 - Correction in the computation of mass for parameterised volumes.
986 
987 Nov 12, 2004  G.Cosmo                      geommng-V06-02-04
988 - Added method GetMass() to G4LogicalVolume, returning the value in absolute
989   units of the mass of the logical volume tree. The mass is computed from the
990   estimated geometrical volume of each solid and material's density associated
991   to the logical volume and its daughters.
992   The returned value is cached and can be used for successive calls (default),
993   unless recomputation is forced by providing 'true' as the first boolean
994   argument in input. Computation should be forced if the geometry setup has
995   changed after the previous call. An optional argument to specify a material
996   is provided; it is implicitely used for geometrical parameterisations by
997   material.
998 
999 Oct 10, 2004  J.Allison                    geommng-V06-02-03
1000 - Added GetPolyhedron, a smart access function that creates a G4Polyhedron
1001   on request and stores for future access.  A null pointer means "not
1002   available".
1003 
1004 Sep 28, 2004  M.Asai                       geommng-V06-02-02
1005 - G4Region:
1006   o Added map for storage of materials/cuts.
1007   o Added methods for handling registration of couples in the map, finding
1008     a couple according to a given material, clearing the map's storage.
1009 - G4LogicalVolume:
1010   o Added method UpdateMaterial() to refresh a material/cut couple in
1011     the corresponding region.
1012 
1013 Sep 22, 2004  G.Cosmo                      geommng-V06-02-01
1014 - Introduced virtual method GetCubicVolume() to G4VSolid, returning an
1015   estimation of the solid volume in internal units. This method may be
1016   overloaded by derived classes to compute the exact geometrical
1017   quantity for solids where this is possible, or anyway to cache the
1018   computed value. By default it uses the new protected method
1019   EstimateCubicVolume(stat, eps) with fixed statistics and error
1020   accuracy, and does not cache the computed value.
1021 
1022 Sep 02, 2004  G.Cosmo                      geommng-V06-02-00
1023 - Introduced abstract class G4VStoreNotifier to be optionally associated
1024   to stores by the user for the notification of the registration and
1025   deregistration of objects in the stores.
1026 - Added notification mechanism to volume, solid, and region stores.
1027 - Fixed G4RegionStore::Clean() to avoid deletion of world region.
1028 
1029 May 07, 2004  G.Cosmo                      geommng-V06-01-00
1030 - Imported G4ReflectedSolid class from solids/Boolean.
1031 - Added abstract factory G4VPVDivisionFactory defining interfaces
1032   for the creation of volumes divisions (courtesy of I.Hrivnacova).
1033 - Coworks with tags: geomvol-V06-01-00, geomdiv-V06-01-00 and
1034                      geom-bool-V06-01-00.
1035 
1036 Dec 01, 2003  P.Gumplinger                 geommng-V05-02-05
1037 - G4LogicalSurface[.hh.icc]: modified to use G4SurfaceProperty instead
1038   of G4OpticalSurface. Requires tag "materials-V05-02-00".
1039 
1040 Nov 04, 2003  G.Cosmo                      geommng-V05-02-04
1041 - G4LogicalVolume.hh: added inclusion of assert.h required by .icc file.
1042 
1043 Nov 01, 2003  G.Cosmo                      geommng-V05-02-03
1044 - Code cleanup and headers inclusion review (replaced by forward
1045   declarations where necessary).
1046 - G4VPVParameterisation: added G4Polycone and G4Polyhedra to list of
1047   possible parameterisations by dimension.
1048 
1049 Oct 24, 2003  G.Cosmo                      geommng-V05-02-02
1050 - Migrated calls to G4Exception to new scheme.
1051 
1052 Oct 21, 2003  M.Asai                       geommng-V05-02-01
1053 - Introducing G4VUserRegionInformation class.
1054 - G4VPVParameterisation: added G4Orb. (V.Grichine)
1055 
1056 Sep 30, 2003  G. Cosmo                     geommng-V05-02-00
1057 - Logical reorganisation and restructure of modules.
1058   Moved files to geometry/volumes:
1059     G4AssemblyVolume[.hh.icc.cc]
1060     G4PVParameterised[.hh.cc]
1061     G4PVPlacement[.hh.cc]
1062     G4PVReplica[.hh.cc]
1063   Moved files to new module geometry/navigation:
1064     G4DrawVoxels[.hh.cc]
1065   Imported files from geometry/volumes:
1066     G4BlockingList[.hh.icc.cc]
1067     G4IdentityTrajectoryFilter[.hh.cc]
1068     G4VCurvedTrajectoryFilter[.hh.cc]
1069 - G4VPhysicalVolume[.hh.icc.cc]:
1070   o Removed pointer to mother physical volume and related accessor
1071     methods: SetMother()/GetMother().
1072   o Removed pure virtual method Setup(G4VPhysicalVolume*), no longer
1073     necessary. Subclasses will require modification as well.
1074 - G4LogicalVolume.icc:
1075   o Updated/fixed initialisation of data and fast-simulation manager
1076     according to above changes.
1077 - G4SmartVoxelHeader.cc:
1078   o Cleared usage of PV-Setup(), according to above changes.
1079 
1080 May 19, 2003  G. Cosmo                     geommng-V05-01-01
1081 - G4LogicalVolume.cc: notify removal of root-logical-volume from G4Region
1082   in case of deletion of a logical-volume from the destructor, instead that
1083   from DeRegister() method.
1084 - G4LogicalVolumeStore.cc: removed redundant check and call to
1085   RemoveRootLogicalVolume() from Clean() method.
1086 - G4Region.cc: removed redundant calls to ScanVolumeTree() and
1087   UpdateMaterials() from RemoveRootLogicalVolume() method.
1088 
1089 May 13, 2003  G. Cosmo                     geommng-V05-01-00
1090 - G4LogicalVolume: added method ClearDaughters() to be used for resetting
1091   the list of daughters to a logical volume in the use-case when only the
1092   physical volume store is cleared at run-time.
1093 - GVPhysicalVolume:
1094   o Added pointer to mother logical volume (will replace in future releases
1095     the pointer to mother physical volume) and related accessors.
1096   o Standardised registration mechanism as daughter for constructor using
1097     the pointer to the mother's PV.
1098 - G4PhysicalVolumeStore:
1099   o Added notification mechanism to logical volumes in the Clean() method
1100     to update the list of daughters.
1101   o Update mother's LV list of daughters when deregistering a volume.
1102 - G4PVPlacement/Replica/Parameterised: standardised registration mechanism
1103   as daughter for constructor using the pointer to the mother's PV.
1104 
1105 April 3, 2003  M. Dressel                  geommng-V05-00-09
1106 - G4LogicalVolume: added method for scanning recursively the volume tree
1107   and retrieve if the current LV is ancestor of a given PV:
1108     G4bool IsAncestor(const G4VPhysicalVolume*) const
1109 
1110 March 31, 2003  G. Cosmo                   geommng-V05-00-08
1111 - Fixed trivial strict pedantic warnings in G4VSolid.cc and G4PVPlacement.cc.
1112 
1113 March 24, 2003  G. Cosmo                   geommng-V05-00-07
1114 - G4Region.cc: fixed setting/resetting of regions in ScanVolumeTree().
1115 
1116 March 05, 2003  M. Asai                    geommng-V05-00-06
1117 - G4Region.cc: fix for scanning of parameterised materials.
1118 
1119 March 05, 2003  G. Cosmo                   geommng-V05-00-05
1120 - G4LogicalVolume.icc: added check for invalid geometry constructions.
1121   Issue an exception if a placement is attempted in a volume already
1122   containing a replicated daughter.
1123 - Cosmetic formatting changes in G4PVPlacement.cc and G4VPhysicalVolume.cc.
1124 
1125 February 07, 2003  G. Cosmo                geommng-V05-00-04
1126 - Added method FindOrCreateRegion() to G4RegionStore.
1127 - Added check in constructor of G4Region for existance of region in store.
1128   In case a region with the given name already exists, throw a warning and
1129   do not register it.
1130 
1131 January 30, 2003  G. Cosmo                 geommng-V05-00-03
1132 - Allow logical volume store to deregister root regions for logical volumes
1133   deleted explicitely.
1134   Modified files: G4logicalVolumeStore.cc, G4LogicalVolume[.hh.icc.cc].
1135 - G4Region.hh: moved ClearMaterialList() to public.
1136 
1137 January 15, 2003  G. Cosmo                 geommng-V05-00-02
1138 - Included fix in G4VSolid.cc introduced in "geommng-V04-01-06".
1139 
1140 January 14, 2003  M.Asai                   geommng-V05-00-01
1141 - Fix in src/G4Region.cc.
1142   Does not include fix in "geommng-V04-01-06".
1143 
1144 December 16, 2002  G. Cosmo                geommng-V05-00-00
1145 - Merged branch "geant4-04-01-ref-02-cuts-branch" to HEAD.
1146   Included development for 'cuts-by-region'; introduced new classes
1147   G4Region and G4RegionStore. Modified G4LogicalVolume to handle recursive
1148   propagation of regions to daughters.
1149   Does not include fix in "geommng-V04-01-06".
1150 
1151 December 6, 2002  V. Grichine              geommng-V04-01-06
1152 - G4VSolid.cc: restored original conditions for extent clipping in
1153   method ClipPolygon(). Makes unit tests run successfully.
1154 
1155 November 19, 2002  G. Cosmo                geommng-V04-01-05
1156 - G4GeometryManager[.cc]
1157   o Fixed bug in initialisation of fine-grained timer
1158     (courtesy of Helmut Burkhardt).
1159 
1160 November 09, 2002  G. Cosmo                geommng-V04-01-04
1161 - G4LogicalVolume.cc:
1162   o Correction to propagation of the Field Manager to Daughter volumes:
1163     it should be propagated to all daughters that do not have one -- not to all the
1164     ones that have one already. Fixes bug report for field by logical volume.
1165     (J.Apostolakis)
1166 
1167 October 28, 2002  G. Cosmo                 geommng-V04-01-03
1168 - G4VSolid[.hh.icc.cc]:
1169   o Added pure virtual method StreamInfo() to stream contents of a solid
1170     to a generic output stream.
1171   o Added method DumpInfo() using StreamInfo() to dump contents to the
1172     standard output.
1173 
1174 October 23, 2002  G. Cosmo                 geommng-V04-01-02
1175 - G4PVReplica.cc:
1176   o Corrected order for check on illegal constructions, in constructor taking
1177     a pointer to logical volume as mother volume.
1178   o Improved output diagnostics.
1179 - G4PVParameterised.cc:
1180   o Improved output diagnostics for check on illegal constructions.
1181 
1182 October 16, 2002  G. Cosmo                 geommng-V04-01-01
1183 - G4PVReplica.cc, G4PVParameterised.cc:
1184   Added checks for illegal geometry contructions; contructors now verify unicity
1185   of daughter volumes for replicas and parameterised volumes, as well as checks
1186   for attempt to replicate/parameterise the world volume.
1187 
1188 October 4, 2002  G. Cosmo
1189 - G4PVParameterised[.hh.cc], G4PVPlacement[.hh.cc]:
1190   Added new method IsParameterised() to enquire for existing parameterisation
1191   for a placed volume.
1192 - G4PVReplica[.hh.cc], G4VPhysicalVolume[.hh.cc]:
1193   Added methods IsParameterised() and GetMultiplicity() to enquire for existing
1194   parameterisation of placed volume, and number of replicated volumes.
1195 
1196 September 11, 2002  G. Cosmo               geommng-V04-01-00
1197 - G4AssemblyVolume[.hh.icc.cc]:
1198   o Fixed bug #409 concerning missing imprint counter method.
1199   o Fixed bug #410 concerning the internal counting mechanism.
1200     The fix involved the addition of a new data member fAssemblyID,
1201     holding the instance ID of the given object derived from
1202     class-wide counter. Corresponding accessor methods has been
1203     added as well.
1204 - Updated unit test TestAssemblyVolume, to add call to G4RunManager
1205   for resetting nagivator state in TstVADetectorConstruction.cc.
1206 
1207 June 24, 2002  G. Cosmo                    geommng-V04-00-08
1208 - G4AssemblyVolume[.hh.cc]:
1209   o Moved accessors to assembly counters to public.
1210   o Added support for user definable count base for generated physical volumes.
1211   Fixes problem report #382.
1212 
1213 June 7, 2002  G. Cosmo                     geommng-V04-00-07
1214 - G4AssemblyVolume[.hh.cc]:
1215   o Fixed inconsistent handling of input rotation matrices by caching them
1216     with corresponding deallocation at destruction time.
1217     Comments updated accordingly with a warning about foreseen changes
1218     in methods' interfaces expected by next major release 5.0.
1219   o Correctly handle cases when pointer to rotation matrix is zero.
1220   o Updated unit test.
1221 
1222 May 17, 2002  G. Cosmo                     geommng-V04-00-06
1223 - Added ability to optionally optimise/non-optimise detector regions
1224   using logical volumes:
1225   o G4LogicalVolume:
1226     - Introduced additional bool argument to constructor,
1227       set to 'true' by default.
1228     - Added method IsToOptimise() with corresponding bool flag attribute.
1229   o G4GeometryManager:
1230     - Adapted BuildOptimisations() method to consider optional optimisation
1231       flag from G4LogicalVolume.
1232 
1233 May 15, 2002  G. Cosmo                     geommng-V04-00-05
1234 - G4SmartVoxelHeader:
1235   o Added utility method GetParamAxis() to retrieve suggested axis for
1236     optimisation of parametrised geometry.
1237   o Enhanced BuildReplicaVoxels() to apply 3D voxelisation for non-consuming
1238     nodes if undefined axis is specified for parametrised volumes. In such
1239     case, optimisation for parameterised volumes is applied similarly to
1240     normal placements.
1241 - G4PVReplica.cc: deal with 'kUndefined' EAxis.
1242 - Co-works with "global-V04-00-06".
1243 
1244 May 13, 2002  G. Cosmo                     geommng-V04-00-04
1245 - G4VSolid: use polygon clipping for limited voxel when != pAxis (V.Grichine).
1246 - G4GeometryManager: added method IsGeometryClosed() for detecting geometry
1247   closed or open.
1248 - G4LogicalVolumeStore, G4PhysicalVolumeStore, G4SolidStore: added protection
1249   to Clean() method for checking if geometry is closed.
1250 - G4SmartVoxelHeader.cc: cosmetics and formatting cleanup.
1251 
1252 April 19, 2002  G. Cosmo                   geommng-V04-00-03
1253 - Moved inline constructors/destructors to no inline.
1254   Affected files: G4DrawVoxels[.hh.cc], G4SmartVoxelNode[.hh.cc],
1255                   G4SmartVoxelProxy[.hh.cc], G4VoxelLimits[.hh.cc].
1256 - Enhanced behavior for destructors of volumes/solids stores.
1257   o Added locking mechanism for preventing conflicts when destroying stores
1258     and deregistering pointers. Now destructors of stores will also
1259     explicitely delete pointers (and therefore allocated volumes/solids)
1260     dynamically allocated in the user application.
1261   o Added Clean() static method to volumes/solids stores to explicitely
1262     delete pointed objects in the stores and clear all entries.
1263   o Modified files: G4LogicalVolumeStore[.hh.cc], G4SolidStore[.hh.cc],
1264                     G4PhysicalVolumeStore[.hh.cc].
1265 
1266 April 16, 2002  V. Grichine                geommng-V04-00-02
1267 - G4VSolid[.hh.cc]: fixed bug in G4VSolid::ClipPoligon() to consider
1268   clipping related to a single axis.
1269 - G4VoxelLimits.cc: cosmetics changes and debug printouts ...
1270 
1271 February 26, 2002  G. Cosmo                geommng-V04-00-01
1272 - G4GeometryManager.cc: fixed handling of ios manipulators and precision to reset
1273   to their original state in G4GeometryManager::ReportVoxelStats().
1274   Fixes problem report #343.
1275 
1276 January 08, 2002  G. Cosmo                 geommng-V04-00-00
1277 - G4AffineTransform.icc: fixed trivial compilation warning for gcc-2.95.2.
1278 - Included latest cosmetics changes to TestAssemblyVolume/TstVADetectorConstruction.cc.
1279 
1280 November 23, 2001  G. Cosmo                geommng-V03-02-03
1281 - Initialise noNodes to 1 in G4SmartVoxelHeader::BuildNodes() in case
1282   computed nodes for smartless happen to be zero (J.Apostolakis).
1283 
1284 November 08, 2001  G. Cosmo                geommng-V03-02-02
1285 - Fixed comments for reference manual in G4TouchableHandle.hh.
1286 
1287 October 26, 2001  G. Cosmo                 geommng-V03-02-01
1288 - Improved printout in G4GeometryManager::ReportVoxelStats().
1289 
1290 October 22, 2001  G. Cosmo                 geommng-V03-02-00
1291 - Added definition of G4TouchableHandle (R.Chytracek)
1292 - Added class G4SmartVoxelStat for statistics on geometry optimisation
1293   of volumes through voxelisation (courtesy of D.C.Williams).
1294 - Modified G4GeometryManager to make use of G4SmartVoxelStat when run in
1295   verbose mode.
1296 
1297 May 31, 2001  G. Cosmo                     geommng-V03-01-04
1298 - Adopt explicit initialisation for 'minExtents' and 'maxExtents'
1299   in G4SmartVoxelHeader::BuildNodes(...), to allow porting on ObjectSpace STL.
1300 
1301 May 23, 2001  G. Cosmo                     geommng-V03-01-03
1302 - G4SmartVoxelHeader.cc: minor fix for removing pedantic warnings
1303   detected on Linux-g++ with ISO/ANSI setup.
1304 
1305 May 03, 2001  G. Cosmo                     geommng-V03-01-02
1306 - G4DrawVoxels.cc: migration to STL vector according to changes in
1307   graphics_reps module (greps-V03-01-01), now migrated as well.
1308 
1309 April 27, 2001  G. Cosmo                   geommng-V03-01-01
1310 - G4LogicalVolume.cc, G4SmartVoxelHeader.cc: fixed compilation warnings
1311   on HP-UX, concerning potential uninitialised vector elements.
1312 
1313 April 20, 2001  G. Cosmo                   geommng-V03-01-00
1314 - Migration to STL vector:
1315   o G4VSolid: migrated G4ThreeVectorList typedef.
1316   o G4SolidStore, G4LogicalVolumeStore, G4PhysicalVolumeStore: migrated
1317     inheritance from base collection of pointers.
1318   o G4LogicalVolume: migrated data member "fDaughters".
1319   o G4SmartVoxelHeader: migrated typedefs G4ProxyVector, G4NodeVector,
1320     G4VolumeNosVector and G4VolumeExtentVector.
1321   o G4SmartVoxelNode: migrated G4SliceVector typedef.
1322 
1323 March 07, 2001  G. Cosmo                   geommng-V03-00-01
1324 - G4PVPlacement.hh: corrected comments to constructor with G4RotationMatrix*
1325   as argument, to correspond to specifications in the User's Manual.
1326 - G4AssemblyVolume.cc: corrected comments about unique PV identifiers
1327   (by R.Chytracek).
1328 
1329 February 07, 2001  G. Cosmo                geommng-V03-00-00
1330 - Introduced first implementation of G4AssemblyVolume, a helper class to
1331   combine several volumes together in an arbitrary way in the 3D space.
1332   Added files: G4AssemblyVolume[.hh.icc.cc], G4AssemblyTriplet[.hh.icc]
1333   (by R.Chytracek).
1334 - Added unit test suite for G4AssemblyVolume class: TestAssemblyVolume
1335   (by R.Chytracek).
1336 
1337 December 04, 2000  G. Cosmo
1338 - Minor fix to private assignment operator.
1339 
1340 November 20, 2000  G. Cosmo                geommng-V02-00-04
1341 - Fixes to remove warnings from "-Wall -ansi -pedantic" g++ compiler options:
1342   o commented out variables declared and not used.
1343   o fixed declaration of variables used before being initialised.
1344   o fixed order of initialisation of member data in constructors.
1345   o fixed usage of unsigned-int (size_t) for array indeces.
1346 
1347 November 16, 2000  V.Grichine              geommng-V02-00-03
1348 - Fix in G4VSolid::CalculateClippedPoligonExtent(): removed assumption
1349   that pMin<pMax by eliminating "else" condition. (D.Williams)
1350 
1351 November 9, 2000   G.Cosmo                 geommng-V02-00-02
1352 - Included test directory containing "voxel" test by L.Grainac.
1353 
1354 November 1, 2000   G.Cosmo                 geommng-V02-00-01
1355 - QA code revision and cleanup (+fixes from CodeWizard filtering):
1356   o Added (private) declarations of copy constructor and assignment
1357     operator where needed.
1358   o Added "const" qualifier to accessor methods, wherever needed.
1359   o Added equality check on operator= where needed.
1360   o Made destructor "virtual" for classes having virtual methods,
1361     wherever missing.
1362   o Changed virtual functions to non-inline wherever's the case.
1363   o Added "inline" qualifier to methods' declarations.
1364   o Replaced usage of "do-loops" with "while-loops" in
1365     G4VoxelLimits::ClipToLimits().
1366   o General cosmetics
1367 
1368 September 11, 2000   G.Cosmo               geommng-V02-00-00
1369 - G4SolidStore.cc: fixed bug in destructor causing memory corruption at
1370   application exit when Boolean solids are involved (bug #154).
1371 
1372 June 06, 2000   G.Cosmo                    geommng-V01-01-00
1373 - G4DrawVoxels.hh: removed line '#define G4DrawVoxelsDebug' left in place
1374   accidentally in the code...
1375 
1376 April 20, 2000   G. Cosmo
1377 - Reorganised comments for the Software Reference Manual.
1378 - Moved inlined definition to .icc files, where needed.
1379   Created: G4SmartVoxelHeader.icc, G4SmartVoxelNode.icc,
1380            G4SmartVoxelProxy.icc, G4VoxelLimits.icc.
1381 
1382 April 11, 2000   J. Allison
1383 - Made virtual G4VisExtent G4VSolid::GetExtent() non-pure and implemented
1384   a default in terms of CalculateExtent.
1385 
1386 January 19, 2000  G. Cosmo                 geommng-V01-00-00
1387 
1388 - Syncronized file versioning with HEAD (several CVS headers changed
1389   due to the recent migration for ISO C++)
1390 
1391 January 19, 2000  J. Allison
1392 
1393 - G4DrawVoxels.cc: assured GetSlice(slice_no) is called for
1394   slice_no < no_slices.
1395 
1396 November 30, 1999  G. Cosmo                geommng-V00-01-01a
1397 - G4DrawVoxels.cc:
1398   Fixed initialization of (const G4VPhysicalVolume*) in method
1399   GetAbsoluteTransformation(). Fix needed for NT/VC++ compiler.
1400 
1401 November 09, 1999  J. Apostolakis          geommng-V00-01-01
1402 - G4VPhysicalVolume:
1403    i) Made G4RotationMatrix G4VPhysicalVolume::GetObjectRotation() const
1404       non-inline and moved it to source file from inline file.
1405   ii) Added GetObjectRotationValue() method.
1406  iii) Minimal changes of comments for Software Ref. Manual in header file
1407 
1408   [ Change i) caused problem with HP aCC compiler A.01.19.  Atlas
1409      was patching the code to try to get around this, but this
1410      resolution is much better ]
1411 
1412 March 17, 1999  J. Apostolakis             geommng-01-00-02
1413 - G4AffineTransform.icc:
1414   Corrected a typo in InverseProduct (rzy->ryz) that caused the incorrect
1415   calculation of a compound transformation (if tf1.tz*tf2.ryz != 0).
1416   This problem was seen in ATLAS code.