Diligent Engine
 
Loading...
Searching...
No Matches
Diligent::EngineFactoryBase< BaseInterface > Class Template Reference

Template class implementing base functionality of the engine factory. More...

#include <EngineFactoryBase.hpp>

Public Member Functions

template<typename DerivedType, typename = typename std::enable_if<std::is_base_of<IObject, DerivedType>::value>::type>
void QueryInterface (const INTERFACE_ID &IID, DerivedType **ppInterface)
 

Detailed Description

template<class BaseInterface>
class Diligent::EngineFactoryBase< BaseInterface >

Template class implementing base functionality of the engine factory.

Template Parameters
BaseInterface- Base interface that this class will inherit (Diligent::IEngineFactoryD3D11, Diligent::IEngineFactoryD3D12, Diligent::IEngineFactoryVk or Diligent::IEngineFactoryOpenGL).

Member Function Documentation

◆ QueryInterface()

template<class BaseInterface>
template<typename DerivedType, typename = typename std::enable_if<std::is_base_of<IObject, DerivedType>::value>::type>
void Diligent.IObject.QueryInterface ( const INTERFACE_ID & IID,
DerivedType ** ppInterface )
inline

Template version of QueryInterface that avoids the need to manually cast the returned interface pointer.