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