IDevice::enumerateDevices - dpw105f18/papago-api GitHub Wiki

Search for a GPU on the system.

static vector<unique_ptr<IDevice>> enumerateDevices(ISurface& surface, const Features& features, const Extensions& extensions);

Returns

Return a vector of unique pointers to IDevices, which has certain features and extensions avaliable.

Parameters

Parameter Description
surface The window surface to draw to
features A collection of GPU features to enable on the device
extensions A collection of GPU extensions to require from the device

Example of EnumerateDevices

#include <vector>
#include <windows.h>
#include "idevice.hpp"
#include "ibufferrsource.hpp"
#include "isurface.hpp"

int main() {
  /*
  setup code omitted
  */

  unique_ptr<ISurface> surface = // create Surface

  auto devices = IDevice::enumerateDevices(
    *surface, 
    {} /* features */, 
    {} /* extensions */);
  auto& device = devices[0]; // Pick first device
}
⚠️ **GitHub.com Fallback** ⚠️