test_environment.h revision 5b66aa51f060c804e1804cf45909ed6489552c62
1#ifndef TEST_ENVIRONMENT_H
2#define TEST_ENVIRONMENT_H
3
4#include "vktestbinding.h"
5
6namespace vk_testing {
7class Environment : public ::testing::Environment {
8public:
9    Environment();
10
11    bool parse_args(int argc, char **argv);
12
13    virtual void SetUp();
14    virtual void TearDown();
15
16    const std::vector<Device *> &devices() { return devs_; }
17    Device &default_device() { return *(devs_[default_dev_]); }
18    VkPhysicalDevice gpus[16];
19
20private:
21    VkApplicationInfo app_;
22    int default_dev_;
23    VkInstance inst;
24
25    std::vector<Device *> devs_;
26};
27}
28#endif // TEST_ENVIRONMENT_H
29