Back to home page

EIC code displayed by LXR

 
 

    


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

0001 #pragma once
0002 /**
0003 SGeoConfig
0004 ==============
0005 
0006 
0007 **/
0008 
0009 #include <string>
0010 #include <vector>
0011 #include "plog/Severity.h"
0012 #include "SYSRAP_API_EXPORT.hh"
0013 
0014 struct SBitSet ;
0015 struct SName ;
0016 
0017 struct SYSRAP_API SGeoConfig
0018 {
0019     static const plog::Severity LEVEL ;
0020     static constexpr const char* ELVSelection_VERBOSE = "SGeoConfig__ELVSelection_VERBOSE";
0021     static constexpr const char* ELVSelection_STARTING = "SGeoConfig__ELVSelection_STARTING";
0022     static std::string Desc();
0023     std::string desc() const ;
0024 
0025     static std::string DescEMM();
0026 
0027     static constexpr const char* kGEOM           = "OPTICKS_GEOM,GEOM" ;
0028     static constexpr const char* kEMM            = "OPTICKS_EMM_SELECTION,EMM" ;
0029     static constexpr const char* kELVSelection   = "OPTICKS_ELV_SELECTION,ELV" ;
0030     static constexpr const char* kSolidSelection = "OPTICKS_SOLID_SELECTION" ;
0031     static constexpr const char* kSolidTrimesh   = "OPTICKS_SOLID_TRIMESH" ;
0032     static constexpr const char* kFlightConfig   = "OPTICKS_FLIGHT_CONFIG" ;
0033     static constexpr const char* kArglistPath    = "OPTICKS_ARGLIST_PATH" ;
0034     static constexpr const char* kCXSkipLV       = "OPTICKS_CXSKIPLV" ;           // names
0035     static constexpr const char* kCXSkipLV_IDXList = "OPTICKS_CXSKIPLV_IDXLIST" ; // idxs
0036 
0037     static constexpr const char* kEMM_desc = "CSGFoundry enabled merged mesh control" ;
0038     static constexpr const char* kELVSelection_desc = "string control of included/excluded meshes, DYNAMIC NATURE MAKES PROBLEMATIC FOR LONG LIVED SKIPS  " ;
0039     static constexpr const char* kSolidSelection_desc = "CSGFoundry debug control" ;
0040     static constexpr const char* kSolidTrimesh_desc = "CSGFoundry comma delimited list of CSGSolid for Trimesh geometry" ;
0041     static constexpr const char* kFlightConfig_desc = "NEEDS REVIIVING IN NEW WORKFLOW TO WORK WITH SGLM NOT Composition" ;
0042     static constexpr const char* kArglistPath_desc = "generic path to a list of arguments used by some tests" ;
0043     static constexpr const char* kCXSkipLV_desc = "non-dynamic LV skipping in CSG_GGeo_Convert, PREFERABLE FOR LONG-LIVED SKIPS" ;
0044 
0045     static const char* _GEOM ;
0046     static unsigned long long _EMM ;
0047     static const char* _ELVSelection ;
0048     static const char* _SolidSelection ;
0049     static const char* _SolidTrimesh ;
0050     static const char* _FlightConfig ;
0051     static const char* _ArglistPath ;
0052     static const char* _CXSkipLV ;
0053     static const char* _CXSkipLV_IDXList ;
0054 
0055     static unsigned long long EnabledMergedMesh() ;
0056     static const char* GEOM();
0057     static const char* SolidSelection();
0058     static const char* SolidTrimesh();
0059     static const char* FlightConfig();
0060     static const char* ArglistPath();
0061     static const char* CXSkipLV();
0062     static const char* CXSkipLV_IDXList();
0063     static const char* ELVSelection();
0064     static const char* ELVSelection(const SName* id);
0065     static const char* ELVPrefix(const char* elvarg);
0066 
0067     // moved here from CSGFoundry
0068     static const char* ELVString(const SName* id);
0069     static const SBitSet* ELV(const SName* id);
0070 
0071 
0072 
0073     static void SetCXSkipLV_IDXList(const SName* id);
0074 
0075     static void SetGEOM(           const char* gm );
0076     static void SetSolidSelection( const char* ss );
0077     static void SetSolidTrimesh(   const char* ss );
0078     static void SetELVSelection(   const char* es );
0079     static void SetFlightConfig(   const char* fc );
0080     static void SetArglistPath(    const char* ap );
0081     static void SetCXSkipLV(       const char* cx );
0082 
0083     static bool IsEnabledMergedMesh(unsigned mm);
0084     static bool IsCXSkipLV(int lv);
0085 
0086     static std::vector<std::string>*  Arglist() ;
0087     static void GeometrySpecificSetup(const SName* id);
0088     static bool JUNO_Detected(const SName* id);
0089 
0090 
0091 };
0092 
0093