• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //Copyright (c) 2008-2016 Emil Dotchevski and Reverge Studios, Inc.
2 
3 //Distributed under the Boost Software License, Version 1.0. (See accompanying
4 //file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5 
6 #include "test_qvm_matrix.hpp"
7 
8 int
main()9 main()
10     {
11     using namespace boost::qvm;
12 
13     typedef test_qvm::matrix<M1,2,3> M;
14     M m;
15     m.a[0][0]=42.0f;
16     m.a[0][1]=43.0f;
17     m.a[0][2]=44.0f;
18     m.a[1][0]=45.0f;
19     m.a[1][1]=46.0f;
20     m.a[1][2]=47.0f;
21     BOOST_TEST(mat_traits<M>::read_element_idx(0,0,m)==m.a[0][0]);
22     BOOST_TEST(mat_traits<M>::read_element_idx(0,1,m)==m.a[0][1]);
23     BOOST_TEST(mat_traits<M>::read_element_idx(0,2,m)==m.a[0][2]);
24     BOOST_TEST(mat_traits<M>::read_element_idx(1,0,m)==m.a[1][0]);
25     BOOST_TEST(mat_traits<M>::read_element_idx(1,1,m)==m.a[1][1]);
26     BOOST_TEST(mat_traits<M>::read_element_idx(1,2,m)==m.a[1][2]);
27     BOOST_TEST(&mat_traits<M>::write_element_idx(0,0,m)==&m.a[0][0]);
28     BOOST_TEST(&mat_traits<M>::write_element_idx(0,1,m)==&m.a[0][1]);
29     BOOST_TEST(&mat_traits<M>::write_element_idx(0,2,m)==&m.a[0][2]);
30     BOOST_TEST(&mat_traits<M>::write_element_idx(1,0,m)==&m.a[1][0]);
31     BOOST_TEST(&mat_traits<M>::write_element_idx(1,1,m)==&m.a[1][1]);
32     BOOST_TEST(&mat_traits<M>::write_element_idx(1,2,m)==&m.a[1][2]);
33     return boost::report_errors();
34     }
35