regression.cpp 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. // ======================================================================== //
  2. // Copyright 2009-2017 Intel Corporation //
  3. // //
  4. // Licensed under the Apache License, Version 2.0 (the "License"); //
  5. // you may not use this file except in compliance with the License. //
  6. // You may obtain a copy of the License at //
  7. // //
  8. // http://www.apache.org/licenses/LICENSE-2.0 //
  9. // //
  10. // Unless required by applicable law or agreed to in writing, software //
  11. // distributed under the License is distributed on an "AS IS" BASIS, //
  12. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. //
  13. // See the License for the specific language governing permissions and //
  14. // limitations under the License. //
  15. // ======================================================================== //
  16. #include "regression.h"
  17. namespace embree
  18. {
  19. static std::unique_ptr<std::vector<RegressionTest*>> regression_tests;
  20. void registerRegressionTest(RegressionTest* test)
  21. {
  22. if (!regression_tests)
  23. regression_tests = std::unique_ptr<std::vector<RegressionTest*>>(new std::vector<RegressionTest*>);
  24. regression_tests->push_back(test);
  25. }
  26. RegressionTest* getRegressionTest(size_t index)
  27. {
  28. if (!regression_tests)
  29. return nullptr;
  30. if (index >= regression_tests->size())
  31. return nullptr;
  32. return (*regression_tests)[index];
  33. }
  34. }