Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/geometry/management/include/G4NavigationLevelRep.icc

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /geometry/management/include/G4NavigationLevelRep.icc (Version 11.3.0) and /geometry/management/include/G4NavigationLevelRep.icc (Version 10.1.p3)


  1 //                                                  1 
  2 // *******************************************    
  3 // * License and Disclaimer                       
  4 // *                                              
  5 // * The  Geant4 software  is  copyright of th    
  6 // * the Geant4 Collaboration.  It is provided    
  7 // * conditions of the Geant4 Software License    
  8 // * LICENSE and available at  http://cern.ch/    
  9 // * include a list of copyright holders.         
 10 // *                                              
 11 // * Neither the authors of this software syst    
 12 // * institutes,nor the agencies providing fin    
 13 // * work  make  any representation or  warran    
 14 // * regarding  this  software system or assum    
 15 // * use.  Please see the license in the file     
 16 // * for the full disclaimer and the limitatio    
 17 // *                                              
 18 // * This  code  implementation is the result     
 19 // * technical work of the GEANT4 collaboratio    
 20 // * By using,  copying,  modifying or  distri    
 21 // * any work based  on the software)  you  ag    
 22 // * use  in  resulting  scientific  publicati    
 23 // * acceptance of all terms of the Geant4 Sof    
 24 // *******************************************    
 25 //                                                
 26 // G4NavigationLevelRep inline implementation     
 27 //                                                
 28 // 1 October 1997, J.Apostolakis Initial versi    
 29 // -------------------------------------------    
 30                                                   
 31 extern G4GEOM_DLL G4Allocator<G4NavigationLeve    
 32                                                   
 33 // Constructors                                   
 34 //--------------                                  
 35                                                   
 36 inline                                            
 37 G4NavigationLevelRep::G4NavigationLevelRep( G4    
 38                                       const G4    
 39                                             EV    
 40                                             G4    
 41    :  sTransform(afTransform),                    
 42       sPhysicalVolumePtr(pPhysVol),               
 43       sReplicaNo(repNo),                          
 44       sVolumeType(volTp)                          
 45 {                                                 
 46 }                                                 
 47                                                   
 48 inline                                            
 49 G4NavigationLevelRep::G4NavigationLevelRep()      
 50    :  sVolumeType(kReplica)                       
 51 {                                                 
 52 }                                                 
 53                                                   
 54 inline                                            
 55 G4NavigationLevelRep::G4NavigationLevelRep( G4    
 56                                       const G4    
 57                                       const G4    
 58                                             EV    
 59                                             G4    
 60    :  sPhysicalVolumePtr(pPhysVol),               
 61       sReplicaNo(repNo),                          
 62       sVolumeType(volTp)                          
 63 {                                                 
 64   sTransform.InverseProduct( levelAbove, relat    
 65 }                                                 
 66                                                   
 67 inline                                            
 68 G4NavigationLevelRep::G4NavigationLevelRep( G4    
 69    :  sTransform(right.sTransform),               
 70       sPhysicalVolumePtr(right.sPhysicalVolume    
 71       sReplicaNo(right.sReplicaNo),               
 72       sVolumeType(right.sVolumeType)              
 73 {                                                 
 74 }                                                 
 75                                                   
 76 // Destructor                                     
 77 //--------------                                  
 78                                                   
 79 inline                                            
 80 G4NavigationLevelRep::~G4NavigationLevelRep()     
 81 {                                                 
 82 #ifdef DEBUG_NAVIG_LEVEL                          
 83   if(fCountRef>0)                                 
 84   {                                               
 85     G4Exception("G4NavigationLevelRep::~G4Navi    
 86                 "GeomVol0003", FatalException,    
 87                 "Deletion of data-level object    
 88   }                                               
 89 #endif                                            
 90 }                                                 
 91                                                   
 92 // Operators                                      
 93 // --------------                                 
 94                                                   
 95 inline                                            
 96 G4NavigationLevelRep&                             
 97 G4NavigationLevelRep::operator=( const G4Navig    
 98 {                                                 
 99   if ( &right != this )                           
100   {                                               
101     sTransform = right.sTransform;                
102     sPhysicalVolumePtr = right.sPhysicalVolume    
103     sVolumeType = right.sVolumeType;              
104     sReplicaNo =  right.sReplicaNo;               
105     fCountRef = right.fCountRef;                  
106   }                                               
107   return *this;                                   
108 }                                                 
109                                                   
110 // Accessors                                      
111 // --------------                                 
112                                                   
113 inline                                            
114 G4VPhysicalVolume*                                
115 G4NavigationLevelRep::GetPhysicalVolume()         
116 {                                                 
117   return sPhysicalVolumePtr;                      
118 }                                                 
119                                                   
120 inline                                            
121 const G4AffineTransform&                          
122 G4NavigationLevelRep::GetTransform() const        
123 {                                                 
124   return sTransform;                              
125 }                                                 
126                                                   
127 inline                                            
128 const G4AffineTransform*                          
129 G4NavigationLevelRep::GetTransformPtr() const     
130 {                                                 
131   return &sTransform;                             
132 }                                                 
133                                                   
134 inline                                            
135 EVolume G4NavigationLevelRep::GetVolumeType()     
136 {                                                 
137   return sVolumeType;                             
138 }                                                 
139                                                   
140 inline                                            
141 G4int G4NavigationLevelRep::GetReplicaNo() con    
142 {                                                 
143   return sReplicaNo;                              
144 }                                                 
145                                                   
146 inline                                            
147 void G4NavigationLevelRep::AddAReference()        
148 {                                                 
149   ++fCountRef;                                    
150 }                                                 
151                                                   
152 inline                                            
153 G4bool G4NavigationLevelRep::RemoveAReference(    
154 {                                                 
155   return( --fCountRef <= 0 );                     
156 }                                                 
157                                                   
158 // There is no provision that this class is su    
159 // If it is subclassed & new data members are     
160 // following "new" & "delete" will fail and gi    
161 //                                                
162 inline                                            
163 void* G4NavigationLevelRep::operator new(size_    
164 {                                                 
165   if (aNavigLevelRepAllocator() == nullptr)       
166   {                                               
167     aNavigLevelRepAllocator() = new G4Allocato    
168   }                                               
169   return (void *) aNavigLevelRepAllocator()->M    
170 }                                                 
171                                                   
172 inline                                            
173 void G4NavigationLevelRep::operator delete(voi    
174 {                                                 
175   aNavigLevelRepAllocator()->FreeSingle((G4Nav    
176 }                                                 
177