1. 18 Apr, 2019 1 commit
  2. 16 Jun, 2015 1 commit
  3. 15 Jun, 2015 1 commit
  4. 05 Sep, 2014 1 commit
  5. 07 Apr, 2014 1 commit
    • Andrew Wedgbury's avatar
      Make sure config.h is included before any system headers · 9cd661e7
      Andrew Wedgbury authored
      There was an issue recently in screen-share.c where config.h was not
      being included, resulting in the wrong definition for off_t being used on
      32 bit systems. I checked and I don't think this problem is happening
      elsewhere, but to help avoid this sort of problem in the future, I went
      through and made sure that config.h is included first whenever system
      headers are included.
      
      The config.h header should be included before any system headers, failing
      to do this can result in the wrong type sizes being defined on certain
      systems, e.g. off_t from sys/types.h
      Signed-off-by: 's avatarAndrew Wedgbury <andrew.wedgbury@realvnc.com>
      9cd661e7
  6. 06 Dec, 2012 1 commit
  7. 04 Oct, 2012 1 commit
  8. 23 Feb, 2012 1 commit
  9. 27 Jan, 2012 2 commits
    • Pekka Paalanen's avatar
      compositor: simplify the matrix inversion API · d1f0ab63
      Pekka Paalanen authored
      The compositor will likely do an order of magnitude less matrix
      inversions than point transformations with an inverse, hence we do not
      really need the optimised path for single-shot invert-and-transform.
      
      Expose only the computing of the explicit inverse matrix in the API.
      
      However, the matrix inversion tests need access to the internal
      functions. Designate a unit test build by #defining UNIT_TEST, and
      export the internal functions in that case.
      Signed-off-by: Pekka Paalanen's avatarPekka Paalanen <ppaalanen@gmail.com>
      d1f0ab63
    • Pekka Paalanen's avatar
      tests: add matrix-test · 4520d5ca
      Pekka Paalanen authored
      Add a new directory tests/ for unit test applications. This directory
      will be built only if --enable-tests is given to ./configure.
      
      Add matrix-test application. It excercises especially the
      weston_matrix_invert() and weston_matrix_inverse_transform() functions.
      It has one test for correctness and precision, and other tests for
      measuring the speed of various matrix operations.
      
      For the record, the correctness test prints:
      
      a random matrix:
         1.112418e-02   2.628150e+00   8.205844e+02  -1.147526e-04
         4.943677e-04  -1.117819e-04  -9.158849e-06   3.678122e-02
         7.915063e-03  -3.093254e-04  -4.376583e+02   3.424706e-02
        -2.504038e+02   2.481788e+03  -7.545445e+01   1.752909e-03
      
      The matrix multiplied by its inverse, error:
         0.000000e+00  -0.000000e+00  -0.000000e+00  -0.000000e+00
         0.000000e+00   0.000000e+00   0.000000e+00   0.000000e+00
        -0.000000e+00  -0.000000e+00   0.000000e+00  -0.000000e+00
         0.000000e+00   0.000000e+00   0.000000e+00   0.000000e+00
      max abs error: 0, original determinant 11595.2
      
      Running a test loop for 10 seconds...
      test fail, det: -0.00464805, error sup: inf
      test fail, det: -0.0424053, error sup: 1.30787e-06
      test fail, det: 5.15191, error sup: 1.15956e-06
      tests: 6791767 ok, 1 not invertible but ok, 3 failed.
      Total: 6791771 iterations.
      
      These results are expected with the current precision thresholds in
      src/matrix.c and tests/matrix-test.c. The random number generator is
      seeded with a constant, so the random numbers should be the same on
      every run. Machine speed and scheduling affect how many iterations are
      run.
      Signed-off-by: Pekka Paalanen's avatarPekka Paalanen <ppaalanen@gmail.com>
      4520d5ca