libcruft-vk/tools/info.cpp

41 lines
1.0 KiB
C++

/*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* Copyright:
* 2017, Danny Robson <danny@nerdcruft.net>
*/
#include <cruft/util/iterator.hpp>
#include <cruft/vk/instance.hpp>
#include <cruft/vk/physical_device.hpp>
#include <cruft/vk/ostream.hpp>
#include <iostream>
#include "../icd/vendor.hpp"
///////////////////////////////////////////////////////////////////////////////
int
main (int, char**)
{
auto all = cruft::vk::icd::enumerate ();
for (auto const &i: all) {
cruft::vk::icd::vendor v (i);
}
std::cout << "available_layers: [ "
<< cruft::make_infix (cruft::vk::instance::available_layers ())
<< " ]\n";
cruft::vk::instance instance;
std::cout << "instance: " << instance << '\n';
for (const auto &d: cruft::vk::physical_device::find (instance))
std::cout << d << '\n';
}