Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-10 07:50:31

0001 #pragma once
0002 /**
0003 U4OpBoundaryProcessStatus
0004 ==========================
0005 
0006 HMM duplicates X4OpBoundaryProcessStatus, usage::
0007 
0008     #include "G4OpBoundaryProcess.hh"
0009     #include "U4OpBoundaryProcessStatus.hh"
0010 
0011     const char* name = U4OpBoundaryProcessStatus::Name( FresnelRefraction );  
0012 
0013 **/
0014 
0015 struct U4OpBoundaryProcessStatus
0016 {
0017     static const char* Name(unsigned status);
0018 
0019     static constexpr const char* Undefined_ = "Undefined" ;
0020     static constexpr const char* Transmission_ = "Transmission" ;
0021     static constexpr const char* FresnelRefraction_ = "FresnelRefraction" ;
0022     static constexpr const char* FresnelReflection_  = "FresnelReflection" ;;
0023     static constexpr const char* TotalInternalReflection_ = "TotalInternalReflection" ;
0024     static constexpr const char* LambertianReflection_ = "LambertianReflection" ;
0025     static constexpr const char* LobeReflection_ = "LobeReflection" ;
0026     static constexpr const char* SpikeReflection_ = "SpikeReflection" ;
0027     static constexpr const char* BackScattering_ = "BackScattering" ;
0028     static constexpr const char* Absorption_ = "Absorption" ;
0029     static constexpr const char* Detection_ = "Detection" ;
0030     static constexpr const char* NotAtBoundary_ = "NotAtBoundary" ;
0031     static constexpr const char* SameMaterial_ = "SameMaterial" ;
0032     static constexpr const char* StepTooSmall_ = "StepTooSmall" ;
0033     static constexpr const char* NoRINDEX_ = "NoRINDEX" ;
0034     static constexpr const char* Other_ = "Other" ;   
0035 };
0036 
0037 
0038 inline const char* U4OpBoundaryProcessStatus::Name(unsigned status)
0039 {
0040     const char* s = nullptr ; 
0041     switch(status)
0042     {   
0043        case Undefined: s = Undefined_ ; break ; 
0044        case Transmission: s = Transmission_ ; break ; 
0045        case FresnelRefraction: s = FresnelRefraction_ ; break ; 
0046        case FresnelReflection: s = FresnelReflection_ ; break ; 
0047        case TotalInternalReflection: s = TotalInternalReflection_ ; break ; 
0048        case LambertianReflection: s = LambertianReflection_ ; break ; 
0049        case LobeReflection: s = LobeReflection_ ; break ; 
0050        case SpikeReflection: s = SpikeReflection_ ; break ; 
0051        case BackScattering: s = BackScattering_ ; break ; 
0052        case Absorption: s = Absorption_ ; break ; 
0053        case Detection: s = Detection_ ; break ; 
0054        case NotAtBoundary: s = NotAtBoundary_ ; break ; 
0055        case SameMaterial: s = SameMaterial_ ; break ; 
0056        case StepTooSmall: s = StepTooSmall_ ; break ; 
0057        case NoRINDEX: s = NoRINDEX_ ; break ; 
0058        default: s = Other_ ; break ; 
0059     }   
0060     return s ; 
0061 }
0062