Ignore:
Timestamp:
Sep 10, 2008, 5:40:37 PM (17 years ago)
Author:
garnier
Message:

geant4.8.2 beta

Location:
trunk/source/geometry/management
Files:
74 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/geometry/management/History

    r831 r850  
    1 $Id: History,v 1.121.2.1 2008/04/23 09:15:49 gcosmo Exp $
     1$Id: History,v 1.128 2008/07/15 10:27:55 gcosmo Exp $
    22-------------------------------------------------------------------
    33
     
    1818     ----------------------------------------------------------
    1919
    20 April 23, 2008  G.Cosmo                    geommng-V09-00-02
    21 - Tag for release 9.1.p02.
     20July 15, 2008  G.Cosmo                     geommng-V09-01-06
     21- G4Region: re-introduced protection for setting of root-region flag to the
     22  world volume in method RemoveRootLogicalVolume(), to cover case of explicit
     23  deletion of stores in the user application for dynamic geometries setups.
     24
     25July 10, 2008  G.Cosmo                     geommng-V09-01-05
     26- G4LogicalVolume, G4LogicalVolumeStore: modified logic for the deletion
     27  of the root-region volumes, adding locking mechanism and automatically
     28  de-registering the world default root-region.
     29  Simplified Clean() method in the store, by removing unused and unnecessary
     30  flag for logical-volumes notification.
     31- Reinstated update of materials in G4Region::RemoveRootLogicalVolume()
     32  to correct handling individual removal of root-region volumes and restore
     33  proper setup state.
     34
     35May 16, 2008  G.Cosmo                      geommng-V09-01-04
     36- G4Region: changed condition inside ScanVolumeTree() to check for the
     37  existence of a valid material-scanner pointer to apply the material scan
     38  instead of using the flag for nested structures.
     39- G4GeometryManager: do not apply optimisation on the current volume if it
     40  has been defined as a regular structure.
     41- Addresses problem report #990 on suggestions by M.Mendenhall.
    2242
    2343March 13, 2008  G.Cosmo                    geommng-V09-01-03
  • trunk/source/geometry/management/include/G4AffineTransform.hh

    r831 r850  
    2626//
    2727// $Id: G4AffineTransform.hh,v 1.6 2006/06/29 18:30:37 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4AffineTransform.icc

    r831 r850  
    2626//
    2727// $Id: G4AffineTransform.icc,v 1.8 2006/06/29 18:30:39 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4BlockingList.hh

    r831 r850  
    2626//
    2727// $Id: G4BlockingList.hh,v 1.4 2006/06/29 18:30:41 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4BlockingList
  • trunk/source/geometry/management/include/G4BlockingList.icc

    r831 r850  
    2626//
    2727// $Id: G4BlockingList.icc,v 1.3 2006/06/29 18:30:43 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4ErrorCylSurfaceTarget.hh

    r831 r850  
    2626//
    2727// $Id: G4ErrorCylSurfaceTarget.hh,v 1.1 2007/05/16 12:50:52 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4ErrorPlaneSurfaceTarget.hh

    r831 r850  
    2626//
    2727// $Id: G4ErrorPlaneSurfaceTarget.hh,v 1.1 2007/05/16 12:50:52 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4ErrorSurfaceTarget.hh

    r831 r850  
    2626//
    2727// $Id: G4ErrorSurfaceTarget.hh,v 1.1 2007/05/16 12:50:52 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4ErrorTanPlaneTarget.hh

    r831 r850  
    2626//
    2727// $Id: G4ErrorTanPlaneTarget.hh,v 1.1 2007/05/16 12:50:52 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4ErrorTarget.hh

    r831 r850  
    2626//
    2727// $Id: G4ErrorTarget.hh,v 1.1 2007/05/16 12:50:52 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4GeometryManager.hh

    r831 r850  
    2626//
    2727// $Id: G4GeometryManager.hh,v 1.12 2007/05/11 13:30:12 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4GeometryManager
  • trunk/source/geometry/management/include/G4IdentityTrajectoryFilter.hh

    r831 r850  
    2626//
    2727// $Id: G4IdentityTrajectoryFilter.hh,v 1.3 2006/06/29 18:30:48 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4LogicalSurface.hh

    r831 r850  
    2626//
    2727// $Id: G4LogicalSurface.hh,v 1.10 2006/06/29 18:30:50 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030////////////////////////////////////////////////////////////////////////
  • trunk/source/geometry/management/include/G4LogicalSurface.icc

    r831 r850  
    2626//
    2727// $Id: G4LogicalSurface.icc,v 1.9 2006/06/29 18:30:52 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030////////////////////////////////////////////////////////////////////////
  • trunk/source/geometry/management/include/G4LogicalVolume.hh

    r831 r850  
    2525//
    2626//
    27 // $Id: G4LogicalVolume.hh,v 1.26 2006/06/29 18:30:55 gunter Exp $
    28 // GEANT4 tag $Name: $
     27// $Id: G4LogicalVolume.hh,v 1.27 2008/07/10 09:40:08 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
     
    287287      // persistifiable objects.
    288288
     289    inline void Lock();
     290      // Set lock identifier for final deletion of entity.
     291
    289292  private:
    290293
     
    317320    G4bool fRootRegion;
    318321      // Flag to identify if the logical volume is a root region.
     322    G4bool fLock;
     323      // Flag to identify if entity is locked for final deletion.
    319324    G4double fSmartless;
    320325      // Quality for optimisation, average number of voxels to be spent
  • trunk/source/geometry/management/include/G4LogicalVolume.icc

    r831 r850  
    2525//
    2626//
    27 // $Id: G4LogicalVolume.icc,v 1.24 2006/06/29 18:30:57 gunter Exp $
    28 // GEANT4 tag $Name: $
     27// $Id: G4LogicalVolume.icc,v 1.25 2008/07/10 09:40:08 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
     
    437437
    438438// ********************************************************************
     439// Lock
     440// ********************************************************************
     441//
     442inline
     443void G4LogicalVolume::Lock()
     444{
     445  fLock = true;
     446}
     447
     448// ********************************************************************
    439449// Operator ==
    440450// ********************************************************************
  • trunk/source/geometry/management/include/G4LogicalVolumeStore.hh

    r831 r850  
    2626//
    2727// $Id: G4LogicalVolumeStore.hh,v 1.13 2007/04/10 10:13:50 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4LogicalVolumeStore
  • trunk/source/geometry/management/include/G4PhysicalVolumeStore.hh

    r831 r850  
    2525//
    2626//
    27 // $Id: G4PhysicalVolumeStore.hh,v 1.15 2007/04/10 10:13:50 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     27// $Id: G4PhysicalVolumeStore.hh,v 1.16 2008/07/10 09:41:20 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4PhysicalVolume
     
    7373    static void SetNotifier(G4VStoreNotifier* pNotifier);
    7474      // Assign a notifier for allocation/deallocation of the physical volumes.
    75     static void Clean(G4bool notifyLV=false);
    76       // Delete all volumes from the store. The flag 'notifyLV' must be set to
    77       // true when the whole geometry tree is cleared at run-time through this
    78       // store; the flag will guarantee that physical volumes to be deregistered
    79       // from LV's list of daughters.
     75    static void Clean();
     76      // Delete all physical volumes from the store. Mother logical volumes
     77      // are automatically notified and have their daughters de-registered.
    8078
    8179    G4VPhysicalVolume* GetVolume(const G4String& name,
  • trunk/source/geometry/management/include/G4ReflectedSolid.hh

    r831 r850  
    2626//
    2727// $Id: G4ReflectedSolid.hh,v 1.5 2006/06/29 18:31:03 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4Region.hh

    r831 r850  
    2525//
    2626//
    27 // $Id: G4Region.hh,v 1.19 2007/04/28 01:48:29 asaim Exp $
    28 // GEANT4 tag $Name: $
     27// $Id: G4Region.hh,v 1.20 2008/07/10 09:46:01 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4Region
     
    7575
    7676    void AddRootLogicalVolume(G4LogicalVolume* lv);
    77     void RemoveRootLogicalVolume(G4LogicalVolume* lv);
     77    void RemoveRootLogicalVolume(G4LogicalVolume* lv, G4bool scan=true);
    7878      // Add/remove root logical volumes and set/reset their
    7979      // daughters flags as regions. They also recompute the
  • trunk/source/geometry/management/include/G4Region.icc

    r831 r850  
    2626//
    2727// $Id: G4Region.icc,v 1.15 2007/04/28 01:48:29 asaim Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4RegionStore.hh

    r831 r850  
    2626//
    2727// $Id: G4RegionStore.hh,v 1.10 2006/11/30 10:39:28 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4RegionStore
  • trunk/source/geometry/management/include/G4SmartVoxelHeader.hh

    r831 r850  
    2626//
    2727// $Id: G4SmartVoxelHeader.hh,v 1.10 2006/06/29 18:32:06 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4SmartVoxelHeader
  • trunk/source/geometry/management/include/G4SmartVoxelHeader.icc

    r831 r850  
    2626//
    2727// $Id: G4SmartVoxelHeader.icc,v 1.6 2006/06/29 18:32:09 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4SmartVoxelNode.hh

    r831 r850  
    2525//
    2626//
    27 // $Id: G4SmartVoxelNode.hh,v 1.10.4.1 2008/04/23 09:15:49 gcosmo Exp $
    28 // GEANT4 tag $Name: geant4-09-01-patch-02 $
     27// $Id: G4SmartVoxelNode.hh,v 1.12 2008/01/24 15:47:23 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4SmartVoxelNode
  • trunk/source/geometry/management/include/G4SmartVoxelNode.icc

    r831 r850  
    2525//
    2626//
    27 // $Id: G4SmartVoxelNode.icc,v 1.5.4.1 2008/04/23 09:15:49 gcosmo Exp $
    28 // GEANT4 tag $Name: geant4-09-01-patch-02 $
     27// $Id: G4SmartVoxelNode.icc,v 1.7 2008/01/24 15:47:23 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4SmartVoxelProxy.hh

    r831 r850  
    2626//
    2727// $Id: G4SmartVoxelProxy.hh,v 1.8 2006/06/29 18:32:17 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4SmartVoxelProxy
  • trunk/source/geometry/management/include/G4SmartVoxelProxy.icc

    r831 r850  
    2626//
    2727// $Id: G4SmartVoxelProxy.icc,v 1.4 2006/06/29 18:32:19 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4SmartVoxelStat.hh

    r831 r850  
    2525//
    2626// $Id: G4SmartVoxelStat.hh,v 1.4 2006/06/29 18:32:21 gunter Exp $
    27 // GEANT4 tag $Name: $
     27// GEANT4 tag $Name: HEAD $
    2828//
    2929// --------------------------------------------------------------------
  • trunk/source/geometry/management/include/G4SolidStore.hh

    r831 r850  
    2626//
    2727// $Id: G4SolidStore.hh,v 1.13 2007/04/10 10:13:50 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4SolidStore
  • trunk/source/geometry/management/include/G4TouchableHandle.hh

    r831 r850  
    2626//
    2727// $Id: G4TouchableHandle.hh,v 1.6 2006/06/29 18:32:25 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// Class G4TouchableHandle
  • trunk/source/geometry/management/include/G4VCurvedTrajectoryFilter.hh

    r831 r850  
    2626//
    2727// $Id: G4VCurvedTrajectoryFilter.hh,v 1.3 2006/06/29 18:32:27 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4VNestedParameterisation.hh

    r831 r850  
    2626//
    2727// $Id: G4VNestedParameterisation.hh,v 1.6 2006/06/29 18:32:29 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4VNestedParameterisation
  • trunk/source/geometry/management/include/G4VPVDivisionFactory.hh

    r831 r850  
    2626//
    2727// $Id: G4VPVDivisionFactory.hh,v 1.2 2006/06/29 18:32:31 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4VPVParameterisation.hh

    r831 r850  
    2626//
    2727// $Id: G4VPVParameterisation.hh,v 1.13 2007/07/16 08:40:13 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4VPVParamterisation
  • trunk/source/geometry/management/include/G4VPhysicalVolume.hh

    r831 r850  
    2626//
    2727// $Id: G4VPhysicalVolume.hh,v 1.17 2007/04/11 08:00:12 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4VPhysicalVolume.icc

    r831 r850  
    2626//
    2727// $Id: G4VPhysicalVolume.icc,v 1.10 2006/06/29 18:32:37 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4VSolid.hh

    r831 r850  
    2525//
    2626//
    27 // $Id: G4VSolid.hh,v 1.26.2.1 2008/04/23 09:15:49 gcosmo Exp $
    28 // GEANT4 tag $Name: geant4-09-01-patch-02 $
     27// $Id: G4VSolid.hh,v 1.28 2008/02/20 15:24:25 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4VSolid.icc

    r831 r850  
    2626//
    2727// $Id: G4VSolid.icc,v 1.9 2007/05/11 13:30:12 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4VStoreNotifier.hh

    r831 r850  
    2626//
    2727// $Id: G4VStoreNotifier.hh,v 1.3 2006/06/29 18:33:02 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4VStoreNotifier
  • trunk/source/geometry/management/include/G4VTouchable.hh

    r831 r850  
    2626//
    2727// $Id: G4VTouchable.hh,v 1.9 2006/06/29 18:33:05 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4VTouchable.icc

    r831 r850  
    2626//
    2727// $Id: G4VTouchable.icc,v 1.9 2006/06/29 18:33:07 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4VUserRegionInformation.hh

    r831 r850  
    2626//
    2727// $Id: G4VUserRegionInformation.hh,v 1.4 2006/06/29 18:33:09 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/G4VVolumeMaterialScanner.hh

    r831 r850  
    2626//
    2727// $Id: G4VVolumeMaterialScanner.hh,v 1.4 2006/06/29 18:33:11 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4VVolumeMaterialScanner
  • trunk/source/geometry/management/include/G4VoxelLimits.hh

    r831 r850  
    2626//
    2727// $Id: G4VoxelLimits.hh,v 1.9 2006/06/29 18:33:13 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4VoxelLimits
  • trunk/source/geometry/management/include/G4VoxelLimits.icc

    r831 r850  
    2626//
    2727// $Id: G4VoxelLimits.icc,v 1.4 2006/06/29 18:33:15 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/meshdefs.hh

    r831 r850  
    2626//
    2727// $Id: meshdefs.hh,v 1.7 2006/06/29 18:33:17 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/include/voxeldefs.hh

    r831 r850  
    2626//
    2727// $Id: voxeldefs.hh,v 1.7 2006/06/29 18:33:19 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/src/G4BlockingList.cc

    r831 r850  
    2626//
    2727// $Id: G4BlockingList.cc,v 1.3 2006/06/29 18:33:21 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/src/G4ErrorCylSurfaceTarget.cc

    r831 r850  
    2626//
    2727// $Id: G4ErrorCylSurfaceTarget.cc,v 1.4 2007/06/20 12:50:48 arce Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/src/G4ErrorPlaneSurfaceTarget.cc

    r831 r850  
    2626//
    2727// $Id: G4ErrorPlaneSurfaceTarget.cc,v 1.2 2007/06/19 11:28:39 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/src/G4ErrorSurfaceTarget.cc

    r831 r850  
    2626//
    2727// $Id: G4ErrorSurfaceTarget.cc,v 1.1 2007/05/16 12:50:52 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/src/G4ErrorTanPlaneTarget.cc

    r831 r850  
    2626//
    2727// $Id: G4ErrorTanPlaneTarget.cc,v 1.1 2007/05/16 12:50:52 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/src/G4ErrorTarget.cc

    r831 r850  
    2626//
    2727// $Id: G4ErrorTarget.cc,v 1.1 2007/05/16 12:50:52 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/src/G4GeometryManager.cc

    r831 r850  
    2525//
    2626//
    27 // $Id: G4GeometryManager.cc,v 1.19.2.1 2008/04/23 09:15:50 gcosmo Exp $
    28 // GEANT4 tag $Name: geant4-09-01-patch-02 $
     27// $Id: G4GeometryManager.cc,v 1.22 2008/05/16 13:46:48 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4GeometryManager
     
    170170     volume->SetVoxelHeader(0);
    171171     if (    ( (volume->IsToOptimise())
    172           && (volume->GetNoDaughters()>=kMinVoxelVolumesLevel1&&allOpts) )
     172            && (volume->GetNoDaughters()>=kMinVoxelVolumesLevel1&&allOpts) )
    173173          || ( (volume->GetNoDaughters()==1)
    174             && (volume->GetDaughter(0)->IsReplicated()==true) ) )
     174            && (volume->GetDaughter(0)->IsReplicated()==true)
     175            && (volume->GetDaughter(0)->GetRegularStructureId()!=1) ) )
    175176     {
    176177#ifdef G4GEOMETRY_VOXELDEBUG
     
    237238   tVolume->SetVoxelHeader(0);
    238239   if (    ( (tVolume->IsToOptimise())
    239         && (tVolume->GetNoDaughters()>=kMinVoxelVolumesLevel1&&allOpts) )
     240          && (tVolume->GetNoDaughters()>=kMinVoxelVolumesLevel1&&allOpts) )
    240241        || ( (tVolume->GetNoDaughters()==1)
    241242          && (tVolume->GetDaughter(0)->IsReplicated()==true) ) )
  • trunk/source/geometry/management/src/G4IdentityTrajectoryFilter.cc

    r831 r850  
    2626//
    2727// $Id: G4IdentityTrajectoryFilter.cc,v 1.4 2006/10/02 10:09:24 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// ------------------------------------------------------------------------
  • trunk/source/geometry/management/src/G4LogicalVolume.cc

    r831 r850  
    2525//
    2626//
    27 // $Id: G4LogicalVolume.cc,v 1.32 2006/11/30 10:39:28 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     27// $Id: G4LogicalVolume.cc,v 1.33 2008/07/10 09:40:09 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
     
    6363                                  G4bool optimise )
    6464 : fDaughters(0,(G4VPhysicalVolume*)0), fFieldManager(pFieldMgr),
    65    fVoxel(0), fOptimise(optimise), fRootRegion(false), fSmartless(2.),
    66    fMass(0.), fVisAttributes(0), fRegion(0), fCutsCouple(0)
     65   fVoxel(0), fOptimise(optimise), fRootRegion(false), fLock(false),
     66   fSmartless(2.), fMass(0.), fVisAttributes(0), fRegion(0), fCutsCouple(0)
    6767{
    6868  SetSolid(pSolid);
     
    8585 : fDaughters(0,(G4VPhysicalVolume*)0), fFieldManager(0),
    8686   fMaterial(0), fName(""), fSensitiveDetector(0), fSolid(0), fUserLimits(0),
    87    fVoxel(0), fOptimise(true), fRootRegion(false), fSmartless(2.),
     87   fVoxel(0), fOptimise(true), fRootRegion(false), fLock(false), fSmartless(2.),
    8888   fMass(0.), fVisAttributes(0), fRegion(0), fCutsCouple(0), fBiasWeight(0.)
    8989{
     
    100100G4LogicalVolume::~G4LogicalVolume()
    101101{
    102   // Avoid de-registration of root region if treating the first world volume
    103   //
    104   if( (fRootRegion) && (this != (*G4LogicalVolumeStore::GetInstance())[0]) )
    105     { fRegion->RemoveRootLogicalVolume(this); }
    106 
     102  if (!fLock && fRootRegion)  // De-register root region first if not locked
     103  {                           // and flagged as root logical-volume
     104    fRegion->RemoveRootLogicalVolume(this, true);
     105  }
    107106  G4LogicalVolumeStore::DeRegister(this);
    108107}
  • trunk/source/geometry/management/src/G4LogicalVolumeStore.cc

    r831 r850  
    2525//
    2626//
    27 // $Id: G4LogicalVolumeStore.cc,v 1.18 2007/04/10 10:13:50 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     27// $Id: G4LogicalVolumeStore.cc,v 1.19 2008/07/10 09:40:09 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// G4LogicalVolumeStore
     
    9898  {
    9999    if (fgNotifier) { fgNotifier->NotifyDeRegistration(); }
    100     if (*pos) { delete *pos; }
     100    if (*pos) { (*pos)->Lock(); delete *pos; }
    101101    i++;
    102102  }
  • trunk/source/geometry/management/src/G4PhysicalVolumeStore.cc

    r831 r850  
    2525//
    2626//
    27 // $Id: G4PhysicalVolumeStore.cc,v 1.19 2007/04/10 10:13:50 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     27// $Id: G4PhysicalVolumeStore.cc,v 1.20 2008/07/10 09:41:20 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// G4PhysicalVolumeStore
     
    7373// ***************************************************************************
    7474//
    75 void G4PhysicalVolumeStore::Clean(G4bool notifyLV)
     75void G4PhysicalVolumeStore::Clean()
    7676{
    7777  // Do nothing if geometry is closed
     
    9797  G4cout << "Deleting Physical Volumes ... ";
    9898#endif
    99 
    100   if (notifyLV)
    101   {
    102     for(pos=store->begin(); pos!=store->end(); pos++)
    103     {
    104       if (*pos) { (*pos)->GetLogicalVolume()->ClearDaughters(); }
    105     }
    106   }
    10799
    108100  for(pos=store->begin(); pos!=store->end(); pos++)
  • trunk/source/geometry/management/src/G4ReflectedSolid.cc

    r831 r850  
    2727// $Id: G4ReflectedSolid.cc,v 1.11 2006/11/08 09:56:33 gcosmo Exp $
    2828//
    29 // GEANT4 tag $Name: $
     29// GEANT4 tag $Name: HEAD $
    3030//
    3131// Implementation for G4ReflectedSolid class for boolean
  • trunk/source/geometry/management/src/G4Region.cc

    r831 r850  
    2525//
    2626//
    27 // $Id: G4Region.cc,v 1.23 2007/04/26 21:20:53 asaim Exp $
    28 // GEANT4 tag $Name: $
     27// $Id: G4Region.cc,v 1.26 2008/07/15 10:27:36 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
     
    140140    G4VPVParameterisation* pParam = daughterPVol->GetParameterisation();
    141141
    142     if (pParam->IsNested())
     142    if (pParam->GetMaterialScanner())
    143143    {
    144144      size_t matNo = pParam->GetMaterialScanner()->GetNumberOfMaterials();
     
    232232// *******************************************************************
    233233//
    234 void G4Region::RemoveRootLogicalVolume(G4LogicalVolume* lv)
     234void G4Region::RemoveRootLogicalVolume(G4LogicalVolume* lv, G4bool scan)
    235235{
    236236  // Find and remove logical volume from the list
     
    247247  }
    248248
    249   // Scan recursively the tree of daugther volumes and reset regions
    250   //
    251   //ScanVolumeTree(lv, false);
    252 
    253   // Update the materials list
    254   //
    255   //UpdateMaterialList();
     249  if (scan)  // Update the materials list
     250  {
     251    UpdateMaterialList();
     252  }
    256253
    257254  // Set region as modified
  • trunk/source/geometry/management/src/G4RegionStore.cc

    r831 r850  
    2525//
    2626//
    27 // $Id: G4RegionStore.cc,v 1.13 2007/04/10 10:13:50 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     27// $Id: G4RegionStore.cc,v 1.14 2008/07/10 09:46:01 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// G4RegionStore
     
    9999#endif
    100100
    101   // Do NOT delete world region !
    102   //
    103101  for(iterator pos=store->begin(); pos!=store->end(); ++pos)
    104102  {
  • trunk/source/geometry/management/src/G4SmartVoxelHeader.cc

    r831 r850  
    2525//
    2626//
    27 // $Id: G4SmartVoxelHeader.cc,v 1.28.4.1 2008/04/23 09:15:50 gcosmo Exp $
    28 // GEANT4 tag $Name: geant4-09-01-patch-02 $
     27// $Id: G4SmartVoxelHeader.cc,v 1.31 2008/01/24 15:46:47 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/src/G4SmartVoxelNode.cc

    r831 r850  
    2626//
    2727// $Id: G4SmartVoxelNode.cc,v 1.6 2006/06/29 18:33:45 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// Class G4SmartVoxelNode
  • trunk/source/geometry/management/src/G4SmartVoxelProxy.cc

    r831 r850  
    2626//
    2727// $Id: G4SmartVoxelProxy.cc,v 1.3 2006/06/29 18:33:48 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// Class G4SmartVoxelProxy
  • trunk/source/geometry/management/src/G4SmartVoxelStat.cc

    r831 r850  
    2626//
    2727// $Id: G4SmartVoxelStat.cc,v 1.3 2006/06/29 18:33:50 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// --------------------------------------------------------------------
  • trunk/source/geometry/management/src/G4SolidStore.cc

    r831 r850  
    2626//
    2727// $Id: G4SolidStore.cc,v 1.17 2007/04/10 10:13:50 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// G4SolidStore
  • trunk/source/geometry/management/src/G4VCurvedTrajectoryFilter.cc

    r831 r850  
    2626//
    2727// $Id: G4VCurvedTrajectoryFilter.cc,v 1.3 2006/06/29 18:33:56 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929// --------------------------------------------------------------------
    3030
  • trunk/source/geometry/management/src/G4VNestedParameterisation.cc

    r831 r850  
    2626//
    2727// $Id: G4VNestedParameterisation.cc,v 1.6 2006/06/29 18:33:59 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4VNestedParameterisation implementation
  • trunk/source/geometry/management/src/G4VPVDivisionFactory.cc

    r831 r850  
    2626//
    2727// $Id: G4VPVDivisionFactory.cc,v 1.2 2006/06/29 18:34:02 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4VPVDivisionFactory Implementation file
  • trunk/source/geometry/management/src/G4VPVParameterisation.cc

    r831 r850  
    2626//
    2727// $Id: G4VPVParameterisation.cc,v 1.8 2007/07/16 08:40:13 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// Default implementations for Parameterisations that do not
  • trunk/source/geometry/management/src/G4VPhysicalVolume.cc

    r831 r850  
    2626//
    2727// $Id: G4VPhysicalVolume.cc,v 1.14 2007/04/11 08:00:12 gcosmo Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030//
  • trunk/source/geometry/management/src/G4VSolid.cc

    r831 r850  
    2525//
    2626//
    27 // $Id: G4VSolid.cc,v 1.35.2.1 2008/04/23 09:15:50 gcosmo Exp $
    28 // GEANT4 tag $Name: geant4-09-01-patch-02 $
     27// $Id: G4VSolid.cc,v 1.37 2008/02/20 15:24:26 gcosmo Exp $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4VSolid
  • trunk/source/geometry/management/src/G4VoxelLimits.cc

    r831 r850  
    2626//
    2727// $Id: G4VoxelLimits.cc,v 1.11 2006/06/29 18:34:11 gunter Exp $
    28 // GEANT4 tag $Name: $
     28// GEANT4 tag $Name: HEAD $
    2929//
    3030// class G4VoxelLimits
Note: See TracChangeset for help on using the changeset viewer.