Back to home page

EIC code displayed by LXR

 
 

    


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

0001 #pragma once
0002 
0003 /**
0004 SGeo : protocol fulfilled by CSGFoundry 
0005 =========================================
0006 
0007 Protocol base used to facilitate lower level package access
0008 to limited geometry information, by passing the higher level 
0009 CSGFoundry instance down to it cast down to this SGeo protocol base.
0010 
0011 Only a little usage from active code::
0012 
0013     epsilon:opticks blyth$ opticks-f SGeo.hh 
0014     ./CSG/CSGFoundry.h:#include "SGeo.hh"
0015     ./sysrap/CMakeLists.txt:    SGeo.hh
0016     ./sysrap/CheckGeo.hh:#include "SGeo.hh"
0017     ./sysrap/SGeo.hh:    epsilon:sysrap blyth$ opticks-f SGeo.hh 
0018     ./sysrap/SGeo.hh:    ./CSG/CSGFoundry.h:#include "SGeo.hh"
0019     ./sysrap/SEvt.cc:#include "SGeo.hh"
0020     ./sysrap/SGeo.cc:#include "SGeo.hh"
0021 
0022     ##DEAD
0023     ./GeoChain/GeoChain.cc:#include "SGeo.hh"
0024     ./ggeo/GGeo.hh:#include "SGeo.hh"
0025     ./ggeo/tests/GGeoTest.cc:#include "SGeo.hh"
0026     ./optickscore/OpticksDbg.cc:#include "SGeo.hh"
0027 
0028 
0029 **/
0030 
0031 #include "plog/Severity.h"
0032 #include <string>
0033 #include "SYSRAP_API_EXPORT.hh"
0034 #include "sframe.h"   // Zepeng reports needed for Rocky Linux 9/gcc 11.3 
0035 struct stree ; 
0036 
0037 struct SYSRAP_API SGeo 
0038 {
0039     public:
0040         static SGeo* Get() ; 
0041     private:
0042         static SGeo* INSTANCE ; 
0043         static const plog::Severity LEVEL ; 
0044     public:
0045         static std::string Desc() ; 
0046     public:
0047         SGeo(); 
0048     public:
0049         virtual unsigned           getNumMeshes() const = 0 ; 
0050         virtual const char*        getMeshName(unsigned midx) const = 0 ;
0051         virtual int                getMeshIndexWithName(const char* name, bool startswith) const = 0 ;
0052         virtual int                getFrame(sframe& fr, int ins_idx ) const = 0 ;
0053         virtual std::string        descBase() const = 0 ; 
0054         virtual int                lookup_mtline(int mtindex) const = 0 ; 
0055         virtual std::string        desc_mt() const = 0 ; 
0056         virtual stree*             getTree() const = 0 ; 
0057 
0058         virtual ~SGeo(){};
0059 
0060 };
0061 
0062