Tony Barbour | 92400bb | 2015-03-02 16:38:52 -0700 | [diff] [blame] | 1 | #ifndef TEST_ENVIRONMENT_H |
| 2 | #define TEST_ENVIRONMENT_H |
Chia-I Wu | f869338 | 2015-04-16 22:02:10 +0800 | [diff] [blame] | 3 | |
Courtney Goeltzenleuchter | d8e229c | 2015-04-08 15:36:08 -0600 | [diff] [blame] | 4 | #include "vktestbinding.h" |
Tony Barbour | 92400bb | 2015-03-02 16:38:52 -0700 | [diff] [blame] | 5 | |
Courtney Goeltzenleuchter | d8e229c | 2015-04-08 15:36:08 -0600 | [diff] [blame] | 6 | namespace vk_testing { |
Tony Barbour | 92400bb | 2015-03-02 16:38:52 -0700 | [diff] [blame] | 7 | class Environment : public ::testing::Environment { |
| 8 | public: |
| 9 | Environment(); |
| 10 | |
| 11 | bool parse_args(int argc, char **argv); |
| 12 | |
| 13 | virtual void SetUp(); |
Tony Barbour | 92400bb | 2015-03-02 16:38:52 -0700 | [diff] [blame] | 14 | virtual void TearDown(); |
Tony Barbour | 92400bb | 2015-03-02 16:38:52 -0700 | [diff] [blame] | 15 | |
| 16 | const std::vector<Device *> &devices() { return devs_; } |
| 17 | Device &default_device() { return *(devs_[default_dev_]); } |
Jon Ashburn | 07daee7 | 2015-05-21 18:13:33 -0600 | [diff] [blame] | 18 | VkInstance get_instance() { return inst; } |
Tony Barbour | d1c3572 | 2015-04-16 15:59:00 -0600 | [diff] [blame] | 19 | VkPhysicalDevice gpus[16]; |
Tony Barbour | 92400bb | 2015-03-02 16:38:52 -0700 | [diff] [blame] | 20 | |
| 21 | private: |
Courtney Goeltzenleuchter | fb4efc6 | 2015-04-10 08:34:15 -0600 | [diff] [blame] | 22 | VkApplicationInfo app_; |
Courtney Goeltzenleuchter | 58f3eff | 2015-10-07 13:28:58 -0600 | [diff] [blame] | 23 | uint32_t default_dev_; |
Courtney Goeltzenleuchter | fb4efc6 | 2015-04-10 08:34:15 -0600 | [diff] [blame] | 24 | VkInstance inst; |
Tony Barbour | 92400bb | 2015-03-02 16:38:52 -0700 | [diff] [blame] | 25 | |
| 26 | std::vector<Device *> devs_; |
| 27 | }; |
| 28 | } |
| 29 | #endif // TEST_ENVIRONMENT_H |