#pragma once #include "BsD3D9Prerequisites.h" namespace BansheeEngine { class D3D9VideoModeList; class D3D9VideoMode; /** * @brief Holds data about a DX9 driver (adapter). */ class BS_D3D9_EXPORT D3D9Driver { public: D3D9Driver(); D3D9Driver(const D3D9Driver &ob); D3D9Driver(UINT32 adapterNumber, const D3DCAPS9& deviceCaps, const D3DADAPTER_IDENTIFIER9& adapterIdentifer); ~D3D9Driver(); /** * @brief Returns hardware capabilities for this driver. */ const D3DCAPS9& getD3D9DeviceCaps() const { return mD3D9DeviceCaps; } /** * @brief Returns name of the driver. */ String getDriverName() const; /** * @brief Returns description of the driver. */ String getDriverDescription() const; /** * @brief Returns adapter number which corresponds to adapter number returned by * DX9 API. */ UINT32 getAdapterNumber() const { return mAdapterNumber; } /** * @brief Returns DX9 adapter identifier. */ const D3DADAPTER_IDENTIFIER9& getAdapterIdentifier() const { return mAdapterIdentifier; } private: UINT32 mAdapterNumber; D3DCAPS9 mD3D9DeviceCaps; D3DADAPTER_IDENTIFIER9 mAdapterIdentifier; }; }