BsD3D11DriverList.h 889 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #pragma once
  2. #include "BsD3D11Prerequisites.h"
  3. namespace BansheeEngine
  4. {
  5. /**
  6. * @brief Contains a list of all available drivers.
  7. */
  8. class BS_D3D11_EXPORT D3D11DriverList
  9. {
  10. public:
  11. /**
  12. * @brief Constructs a new driver list from an existing DXGI factory object.
  13. */
  14. D3D11DriverList(IDXGIFactory* dxgiFactory);
  15. ~D3D11DriverList();
  16. /**
  17. * @brief Returns the number of available drivers.
  18. */
  19. UINT32 count() const;
  20. /**
  21. * @brief Returns a driver at the specified index.
  22. */
  23. D3D11Driver* item(UINT32 idx) const;
  24. /**
  25. * @brief Returns a driver with the specified name, or null if it cannot be found.
  26. */
  27. D3D11Driver* item(const String &name) const;
  28. private:
  29. /**
  30. * @brief Enumerates the DXGI factory object and constructs a list of available drivers.
  31. */
  32. void enumerate(IDXGIFactory* dxgiFactory);
  33. Vector<D3D11Driver*> mDriverList;
  34. };
  35. }