BsD3D11DriverList.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. #pragma once
  4. #include "BsD3D11Prerequisites.h"
  5. namespace bs { namespace ct
  6. {
  7. /** @addtogroup D3D11
  8. * @{
  9. */
  10. /** Contains a list of all available drivers. */
  11. class D3D11DriverList
  12. {
  13. public:
  14. /** Constructs a new driver list from an existing DXGI factory object. */
  15. D3D11DriverList(IDXGIFactory* dxgiFactory);
  16. ~D3D11DriverList();
  17. /** Returns the number of available drivers. */
  18. UINT32 count() const;
  19. /** Returns a driver at the specified index. */
  20. D3D11Driver* item(UINT32 idx) const;
  21. /** Returns a driver with the specified name, or null if it cannot be found. */
  22. D3D11Driver* item(const String &name) const;
  23. private:
  24. /** Enumerates the DXGI factory object and constructs a list of available drivers. */
  25. void enumerate(IDXGIFactory* dxgiFactory);
  26. Vector<D3D11Driver*> mDriverList;
  27. };
  28. /** @} */
  29. }}