Ignore:
Timestamp:
Dec 22, 2010, 3:52:27 PM (14 years ago)
Author:
garnier
Message:

geant4 tag 9.4

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/geometry/navigation/include/G4VoxelNavigation.hh

    r1337 r1347  
    2525//
    2626//
    27 // $Id: G4VoxelNavigation.hh,v 1.5 2007/05/11 13:43:59 gcosmo Exp $
    28 // GEANT4 tag $Name: geant4-09-04-beta-01 $
     27// $Id: G4VoxelNavigation.hh,v 1.8 2010/11/04 12:13:30 japost Exp $
     28// GEANT4 tag $Name: geant4-09-04-ref-00 $
    2929//
    3030//
     
    4444#include "geomdefs.hh"
    4545#include "G4NavigationHistory.hh"
     46#include "G4NavigationLogger.hh"
    4647#include "G4AffineTransform.hh"
    4748#include "G4VPhysicalVolume.hh"
     
    5152
    5253#include "G4BlockingList.hh"
     54
     55class G4VoxelSafety;
    5356
    5457// Required for inline implementation
     
    98101
    99102    inline G4int GetVerboseLevel() const;
    100     inline void  SetVerboseLevel(G4int level);
     103    void  SetVerboseLevel(G4int level);
    101104      // Get/Set Verbose(ness) level.
    102105      // [if level>0 && G4VERBOSE, printout can occur]
     
    107110      // Is effective only with G4VERBOSE set.
    108111
     112    inline void  EnableBestSafety( G4bool flag= false );
     113      // Enable best-possible evaluation of isotropic safety
     114
    109115  protected:
    110116
     
    113119                            const G4ThreeVector& localDirection,
    114120                            const G4double currentStep );
     121
     122    G4SmartVoxelNode* VoxelLocateLight( G4SmartVoxelHeader* pHead,
     123                                        const G4ThreeVector& localPoint ) const;
     124
     125  private:  // Logging functions
     126
     127    void PreComputeStepLog  (const G4VPhysicalVolume* motherPhysical,
     128                                   G4double motherSafety,
     129                             const G4ThreeVector& localPoint);
     130    void AlongComputeStepLog(const G4VSolid* sampleSolid,
     131                             const G4ThreeVector& samplePoint,
     132                             const G4ThreeVector& sampleDirection,
     133                             const G4ThreeVector& localDirection,
     134                                   G4double sampleSafety,
     135                                   G4double sampleStep);
     136    void PostComputeStepLog (const G4VSolid* motherSolid,
     137                             const G4ThreeVector& localPoint,
     138                             const G4ThreeVector& localDirection,
     139                                   G4double motherStep,
     140                                   G4double motherSafety);
     141    void ComputeSafetyLog   (const G4VSolid* solid,
     142                             const G4ThreeVector& point,
     143                                   G4double safety,
     144                                   G4bool banner);
     145    inline void PrintDaughterLog (const G4VSolid* sampleSolid,
     146                                  const G4ThreeVector& samplePoint,
     147                                        G4double sampleSafety,
     148                                        G4double sampleStep);   
     149  protected:
    115150
    116151    G4BlockingList fBList;
     
    147182    //
    148183
     184    G4VoxelSafety  *fpVoxelSafety;
     185    //  Helper object for Voxel Safety
     186
    149187    G4bool fCheck;
    150     G4int  fVerbose;
    151     G4double kCarTolerance;
     188    G4bool fBestSafety;
     189
     190    G4NavigationLogger* fLogger;
     191      // Verbosity logger
    152192};
    153193
Note: See TracChangeset for help on using the changeset viewer.