vec_index_test.cpp 978 B

12345678910111213141516171819202122232425262728
  1. //Copyright (c) 2008-2016 Emil Dotchevski and Reverge Studios, Inc.
  2. //Distributed under the Boost Software License, Version 1.0. (See accompanying
  3. //file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  4. #include "test_qvm_vector.hpp"
  5. int
  6. main()
  7. {
  8. using namespace boost::qvm;
  9. typedef test_qvm::vector<V1,4> V;
  10. V v;
  11. v.a[0]=42.0f;
  12. v.a[1]=43.0f;
  13. v.a[2]=44.0f;
  14. v.a[3]=45.0f;
  15. BOOST_TEST(vec_traits<V>::read_element_idx(0,v)==v.a[0]);
  16. BOOST_TEST(vec_traits<V>::read_element_idx(1,v)==v.a[1]);
  17. BOOST_TEST(vec_traits<V>::read_element_idx(2,v)==v.a[2]);
  18. BOOST_TEST(vec_traits<V>::read_element_idx(3,v)==v.a[3]);
  19. BOOST_TEST(&vec_traits<V>::write_element_idx(0,v)==&v.a[0]);
  20. BOOST_TEST(&vec_traits<V>::write_element_idx(1,v)==&v.a[1]);
  21. BOOST_TEST(&vec_traits<V>::write_element_idx(2,v)==&v.a[2]);
  22. BOOST_TEST(&vec_traits<V>::write_element_idx(3,v)==&v.a[3]);
  23. return boost::report_errors();
  24. }