Conscience Core
Public Member Functions | Protected Attributes | List of all members
conscience_core::core_objects::element_3d::Csc3dElementModelResolver Class Referenceabstract

#include <Csc3dElementModelResolver.h>

Inheritance diagram for conscience_core::core_objects::element_3d::Csc3dElementModelResolver:
conscience_core::core_objects::element_3d::Csc3dElementModelResolverOffline conscience_core::core_objects::element_3d::Csc3dElementModelResolverFromLibraryService

Public Member Functions

 Csc3dElementModelResolver (Csc3dElementType elementType)
 
virtual ~Csc3dElementModelResolver ()
 
virtual ptr< const Csc3dElementModelresolve (const string &modelId, optional< OnProgressCallback > onProgress={})=0
 
virtual ptr< CscResourceSpecgetLogo (ptr< const Csc3dElementModel > elementModel) const =0
 
virtual optional< CscWorldElementModelSourceSpecgetModelSource (const string &modelId, optional< CscWorldElementModelFormat > requestedFormat={}, optional< OnProgressCallback > onProgress={})=0
 
virtual vector< string > getAllAvailableIds () const =0
 
virtual CscEntityModelresolveEntityModel (const string &entityModelId, optional< OnProgressCallback > onProgress={})=0
 
virtual vector< ptr< const Csc3dElementModel > > getAllAvailableModels (optional< CscWorldElementModelFormat > requestedFormat={}) const =0
 

Protected Attributes

const Csc3dElementType elementType
 

Constructor & Destructor Documentation

◆ Csc3dElementModelResolver()

conscience_core::core_objects::element_3d::Csc3dElementModelResolver::Csc3dElementModelResolver ( Csc3dElementType  elementType)

◆ ~Csc3dElementModelResolver()

conscience_core::core_objects::element_3d::Csc3dElementModelResolver::~Csc3dElementModelResolver ( )
virtual

Member Function Documentation

◆ getAllAvailableIds()

virtual vector<string> conscience_core::core_objects::element_3d::Csc3dElementModelResolver::getAllAvailableIds ( ) const
pure virtual

Gets all available entity models ids

Implemented in conscience_core::core_objects::element_3d::Csc3dElementModelResolverOffline.

◆ getAllAvailableModels()

virtual vector<ptr<const Csc3dElementModel> > conscience_core::core_objects::element_3d::Csc3dElementModelResolver::getAllAvailableModels ( optional< CscWorldElementModelFormat >  requestedFormat = {}) const
pure virtual

Gets basic information (fast to fetch) of all available entity models for current resolver. No cache.

Parameters
requestedFormatif specified, filters available models based on format

Implemented in conscience_core::core_objects::element_3d::Csc3dElementModelResolverOffline, and conscience_core::core_objects::element_3d::Csc3dElementModelResolverFromLibraryService.

◆ getLogo()

virtual ptr<CscResourceSpec> conscience_core::core_objects::element_3d::Csc3dElementModelResolver::getLogo ( ptr< const Csc3dElementModel elementModel) const
pure virtual

◆ getModelSource()

virtual optional<CscWorldElementModelSourceSpec> conscience_core::core_objects::element_3d::Csc3dElementModelResolver::getModelSource ( const string &  modelId,
optional< CscWorldElementModelFormat >  requestedFormat = {},
optional< OnProgressCallback onProgress = {} 
)
pure virtual

Gets 3D model file spec of given entity model id (where to find it, what is its format)

Returns
optional empty if model source cannot be resolved

Implemented in conscience_core::core_objects::element_3d::Csc3dElementModelResolverOffline, and conscience_core::core_objects::element_3d::Csc3dElementModelResolverFromLibraryService.

◆ resolve()

virtual ptr<const Csc3dElementModel> conscience_core::core_objects::element_3d::Csc3dElementModelResolver::resolve ( const string &  modelId,
optional< OnProgressCallback onProgress = {} 
)
pure virtual

◆ resolveEntityModel()

virtual CscEntityModel* conscience_core::core_objects::element_3d::Csc3dElementModelResolver::resolveEntityModel ( const string &  entityModelId,
optional< OnProgressCallback onProgress = {} 
)
pure virtual

Resolves Entity Model by its id. This method can be used only with an elementType ENTITY

Implemented in conscience_core::core_objects::element_3d::Csc3dElementModelResolverOffline, and conscience_core::core_objects::element_3d::Csc3dElementModelResolverFromLibraryService.

Member Data Documentation

◆ elementType

const Csc3dElementType conscience_core::core_objects::element_3d::Csc3dElementModelResolver::elementType
protected

The documentation for this class was generated from the following files: