Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-09 07:49:41

0001 #pragma once
0002 
0003 #include <vector>
0004 #include <string>
0005 #include <sstream>
0006 
0007 struct snam
0008 {
0009     static constexpr const char* WAVELENGTH = "wavelength.npy" ;
0010     static constexpr const char* ENERGY = "energy.npy" ;
0011     static constexpr const char* RAYLEIGH = "rayleigh.npy" ;
0012     static constexpr const char* MAT = "mat.npy" ;
0013     static constexpr const char* SUR = "sur.npy" ;
0014     static constexpr const char* BD = "bd.npy" ;
0015     static constexpr const char* BND = "bnd.npy" ;
0016     static constexpr const char* OPTICAL = "optical.npy" ;
0017     static constexpr const char* ICDF = "icdf.npy" ;
0018 
0019     static constexpr const char* MULTIFILM = "multifilm.npy" ;
0020     static constexpr const char* PROPCOM = "propcom.npy" ;
0021 
0022     static const char* get(const std::vector<std::string>& names, int idx ) ;  
0023     static std::string Desc(const std::vector<std::string>& names); 
0024 };
0025 
0026 inline const char* snam::get(const std::vector<std::string>& names, int idx)
0027 {
0028     return idx > -1 && idx < int(names.size()) ? names[idx].c_str() : nullptr ; 
0029 }
0030 
0031 inline std::string snam::Desc(const std::vector<std::string>& names)
0032 {
0033     std::stringstream ss ; 
0034     ss << "[snam::Desc names.size " << names.size() << "\n" ; 
0035     for(int i=0 ; i < int(names.size()) ; i++) ss << "[" << names[i] << "]\n" ; 
0036     ss << "]snam::Desc\n" ; 
0037     std::string str = ss.str() ; 
0038     return str ;  
0039 }
0040