Castor3D  0.11.0
Multiplatform 3D engine
Classes | Espaces de nommage | Macros
Référence du fichier CacheModule.hpp

Classes

class  castor3d::CacheBase< ElementType, KeyType >
 Classe de base pour un cache d'éléments. Plus de détails...
 
class  castor3d::Cache< ElementType, KeyType >
 Classe de base pour un cache d'éléments. Plus de détails...
 
struct  castor3d::CacheTraits< ElementType, KeyType >
 Structure permettant de spécialiser le comportement d'un cache. Plus de détails...
 
struct  castor3d::CacheTraits< AnimatedObjectGroup, KeyType >
 Structure permettant de spécialiser le comportement d'un cache. Plus de détails...
 
struct  castor3d::CacheTraits< FrameListener, KeyType >
 Structure permettant de spécialiser le comportement d'un cache. Plus de détails...
 
struct  castor3d::CacheTraits< Material, KeyType >
 Structure permettant de spécialiser le comportement d'un cache. Plus de détails...
 
struct  castor3d::CacheTraits< Mesh, KeyType >
 Structure permettant de spécialiser le comportement d'un cache. Plus de détails...
 
struct  castor3d::CacheTraits< Overlay, KeyType >
 Structure permettant de spécialiser le comportement d'un cache. Plus de détails...
 
struct  castor3d::CacheTraits< Plugin, KeyType >
 Structure permettant de spécialiser le comportement d'un cache. Plus de détails...
 
struct  castor3d::CacheTraits< RenderTechnique, KeyType >
 Structure permettant de spécialiser le comportement d'un cache. Plus de détails...
 
struct  castor3d::CacheTraits< RenderWindow, KeyType >
 Structure permettant de spécialiser le comportement d'un cache. Plus de détails...
 
struct  castor3d::CacheTraits< Sampler, KeyType >
 Structure permettant de spécialiser le comportement d'un cache. Plus de détails...
 
struct  castor3d::CacheTraits< Scene, KeyType >
 Structure permettant de spécialiser le comportement d'un cache. Plus de détails...
 
class  castor3d::CacheView< ResourceType, CacheType, EventType >
 Vue sur un cache de ressources. Plus de détails...
 
class  castor3d::ObjectCacheBase< ElementType, KeyType >
 Classe de base pour un cache d'éléments de scène. Plus de détails...
 
class  castor3d::ObjectCache< ElementType, KeyType >
 Classe de base pour un cache d'éléments de scène. Plus de détails...
 
struct  castor3d::ObjectCacheTraits< ElementType, KeyType >
 Structure permettant de spécialiser le comportement d'un cache d'objets de scène. Plus de détails...
 
struct  castor3d::ObjectCacheTraits< BillboardList, KeyType >
 Structure permettant de spécialiser le comportement d'un cache d'objets de scène. Plus de détails...
 
struct  castor3d::ObjectCacheTraits< Camera, KeyType >
 Structure permettant de spécialiser le comportement d'un cache d'objets de scène. Plus de détails...
 
struct  castor3d::ObjectCacheTraits< Geometry, KeyType >
 Structure permettant de spécialiser le comportement d'un cache d'objets de scène. Plus de détails...
 
struct  castor3d::ObjectCacheTraits< Light, KeyType >
 Structure permettant de spécialiser le comportement d'un cache d'objets de scène. Plus de détails...
 
struct  castor3d::ObjectCacheTraits< ParticleSystem, KeyType >
 Structure permettant de spécialiser le comportement d'un cache d'objets de scène. Plus de détails...
 
struct  castor3d::ObjectCacheTraits< SceneNode, KeyType >
 Structure permettant de spécialiser le comportement d'un cache d'objets de scène. Plus de détails...
 

Espaces de nommage

 castor3d
 

Macros

#define DECLARE_CACHE_MEMBER(memberName, className)
 
#define DECLARE_OBJECT_CACHE_MEMBER(memberName, className)
 
#define DECLARE_CACHE_VIEW_MEMBER(memberName, className, eventType)
 
#define DECLARE_CU_CACHE_VIEW_MEMBER(memberName, className, eventType)
 

Cache

template<typename ElementType >
using castor3d::ElementInitialiser = std::function< void(std::shared_ptr< ElementType >) >
 
template<typename ElementType >
using castor3d::ElementCleaner = std::function< void(std::shared_ptr< ElementType >) >
 
template<typename ElementType , typename KeyType >
using castor3d::ElementMerger = std::function< void(CacheBase< ElementType, KeyType > const &, castor::Collection< ElementType, KeyType > &, std::shared_ptr< ElementType >) >
 
template<typename ElementType >
using castor3d::ElementAttacher = std::function< void(std::shared_ptr< ElementType >, SceneNode &, SceneNodeSPtr, SceneNodeSPtr, SceneNodeSPtr) >
 
template<typename ElementType >
using castor3d::ElementDetacher = std::function< void(std::shared_ptr< ElementType >) >
 
using castor3d::OnCacheChangedFunction = std::function< void() >
 
using castor3d::OnCacheChanged = castor::Signal< OnCacheChangedFunction >
 
using castor3d::AnimatedObjectGroupCache = Cache< AnimatedObjectGroup, castor::String >
 
using castor3d::CameraCache = ObjectCache< Camera, castor::String >
 
using castor3d::GeometryCache = ObjectCache< Geometry, castor::String >
 
using castor3d::LightCache = ObjectCache< Light, castor::String >
 
using castor3d::FrameListenerCache = Cache< FrameListener, castor::String >
 
using castor3d::MeshCache = Cache< Mesh, castor::String >
 
using castor3d::OverlayCache = Cache< Overlay, castor::String >
 
using castor3d::ParticleSystemCache = ObjectCache< ParticleSystem, castor::String >
 
using castor3d::PluginCache = Cache< Plugin, castor::String >
 
using castor3d::SamplerCache = Cache< Sampler, castor::String >
 
using castor3d::SceneCache = Cache< Scene, castor::String >
 
using castor3d::SceneNodeCache = ObjectCache< SceneNode, castor::String >
 
using castor3d::RenderTechniqueCache = Cache< RenderTechnique, castor::String >
 
using castor3d::RenderWindowCache = Cache< RenderWindow, castor::String >
 
static const xchar * castor3d::InfoCacheCreatedObject = cuT( "Cache::create - Created " )
 
static const xchar * castor3d::WarningCacheDuplicateObject = cuT( "Cache::create - Duplicate " )
 
static const xchar * castor3d::WarningCacheNullObject = cuT( "Cache::Insert - nullptr " )
 
 castor3d::CU_DeclareSmartPtr (AnimatedObjectGroupCache)
 
 castor3d::CU_DeclareSmartPtr (BillboardListCache)
 
 castor3d::CU_DeclareSmartPtr (BillboardUboPools)
 
 castor3d::CU_DeclareSmartPtr (CameraCache)
 
 castor3d::CU_DeclareSmartPtr (GeometryCache)
 
 castor3d::CU_DeclareSmartPtr (LightCache)
 
 castor3d::CU_DeclareSmartPtr (FrameListenerCache)
 
 castor3d::CU_DeclareSmartPtr (MaterialCache)
 
 castor3d::CU_DeclareSmartPtr (OverlayCache)
 
 castor3d::CU_DeclareSmartPtr (PluginCache)
 
 castor3d::CU_DeclareSmartPtr (RenderTargetCache)
 
 castor3d::CU_DeclareSmartPtr (ShaderProgramCache)
 

Documentation des macros

◆ DECLARE_CACHE_MEMBER

#define DECLARE_CACHE_MEMBER (   memberName,
  className 
)
Valeur :
public:\
inline className##Cache & get##className##Cache()\
{\
return *m_##memberName##Cache;\
}\
inline className##Cache const & get##className##Cache()const\
{\
return *m_##memberName##Cache;\
}\
private:\
className##Cache##SPtr m_##memberName##Cache

◆ DECLARE_CACHE_VIEW_MEMBER

#define DECLARE_CACHE_VIEW_MEMBER (   memberName,
  className,
  eventType 
)
Valeur :
public:\
{\
return *m_##memberName##CacheView;\
}\
inline castor3d::CacheView< className, className##Cache, eventType > const & get##className##View()const\
{\
return *m_##memberName##CacheView;\
}\
private:\
std::shared_ptr< castor3d::CacheView< className, className##Cache, eventType > > m_##memberName##CacheView
Vue sur un cache de ressources.
Definition: CacheModule.hpp:308

◆ DECLARE_CU_CACHE_VIEW_MEMBER

#define DECLARE_CU_CACHE_VIEW_MEMBER (   memberName,
  className,
  eventType 
)
Valeur :
public:\
{\
return *m_##memberName##CacheView;\
}\
{\
return *m_##memberName##CacheView;\
}\
private:\
std::shared_ptr< castor3d::CacheView< castor::className, castor::className##Cache, eventType > > m_##memberName##CacheView
Vue sur un cache de ressources.
Definition: CacheModule.hpp:308

◆ DECLARE_OBJECT_CACHE_MEMBER

#define DECLARE_OBJECT_CACHE_MEMBER (   memberName,
  className 
)
Valeur :
public:\
inline className##Cache & get##className##Cache()\
{\
return *m_##memberName##Cache;\
}\
inline className##Cache const & get##className##Cache()const\
{\
return *m_##memberName##Cache;\
}\
private:\
castor::Connection< OnCacheChanged > m_on##className##Changed;\
className##Cache##SPtr m_##memberName##Cache