102    SCENEGRAPH* 
Load( 
const wxString& aModelFile, 
const wxString& aBasePath,
 
  103                      std::vector<const EMBEDDED_FILES*> aEmbeddedFilesStack );
 
  136    S3DMODEL* 
GetModel( const wxString& aModelFileName, const wxString& aBasePath,
 
  177    SCENEGRAPH* 
load( const wxString& aModelFile, const wxString& aBasePath,
 
  185    std::map< wxString, S3D_CACHE_ENTRY*, rsort_wxString > 
m_CacheMap;
 
 
defines the basic data associated with a single 3D model.
 
define an internal structure to be used by the 3D renders
 
Provide an extensible class to resolve 3D model paths.
 
Container for data for KiCad programs.
 
A PROJECT can hold stuff it knows nothing about, in the form of _ELEM derivatives.
 
Container for project specific data.
 
ELEM
The set of #_ELEMs that a PROJECT can hold.
 
void SetProgramBase(PGM_BASE *aBase)
Set the filename resolver's pointer to the application's PGM_BASE instance.
 
bool loadCacheData(S3D_CACHE_ENTRY *aCacheItem)
 
void FlushCache(bool closePlugins=true)
Free all data in the cache and by default closes all plugins.
 
PROJECT::ELEM ProjectElementType() noexcept override
 
bool Set3DConfigDir(const wxString &aConfigDir)
Set the configuration directory to be used by the model manager for storing 3D model manager configur...
 
S3DMODEL * GetModel(const wxString &aModelFileName, const wxString &aBasePath, std::vector< const EMBEDDED_FILES * > aEmbeddedFilesStack)
Attempt to load the scene data for a model and to translate it into an S3D_MODEL structure for displa...
 
SCENEGRAPH * checkCache(const wxString &aFileName, S3D_CACHE_ENTRY **aCachePtr=nullptr)
Find or create cache entry for file name.
 
S3D_PLUGIN_MANAGER * m_Plugins
 
bool saveCacheData(S3D_CACHE_ENTRY *aCacheItem)
 
SCENEGRAPH * load(const wxString &aModelFile, const wxString &aBasePath, S3D_CACHE_ENTRY **aCachePtr=nullptr, std::vector< const EMBEDDED_FILES * > aEmbeddedFilesStack={})
 
wxString m_ConfigDir
base configuration path for 3D items.
 
std::list< wxString > const * GetFileFilters() const
Return the list of file filters retrieved from the plugins.
 
FILENAME_RESOLVER * GetResolver() noexcept
 
std::list< S3D_CACHE_ENTRY * > m_CacheList
Cache entries.
 
bool SetProject(PROJECT *aProject)
Set the current project's working directory; this affects the model search path.
 
void CleanCacheDir(int aNumDaysOld)
Delete up old cache files in cache directory.
 
std::map< wxString, S3D_CACHE_ENTRY *, rsort_wxString > m_CacheMap
Mapping of file names to cache names and data.
 
SCENEGRAPH * Load(const wxString &aModelFile, const wxString &aBasePath, std::vector< const EMBEDDED_FILES * > aEmbeddedFilesStack)
Attempt to load the scene data for a model.
 
void ClosePlugins()
Unload plugins to free memory.
 
bool getHash(const wxString &aFileName, HASH_128 &aHash)
Calculate the SHA1 hash of the given file.
 
FILENAME_RESOLVER * m_FNResolver
 
Define the basic data set required to represent a 3D model.
 
A storage class for 128-bit hash value.
 
Store the a model based on meshes and materials.