Skip to content
  • Kartikaya Gupta's avatar
    Bug 1377090 - Further generify the Matrix class and define MatrixDouble. r=bas · 8609d33d
    Kartikaya Gupta authored
    To allow MatrixDouble to be a drop-in replacement for gfxMatrix, it
    needs to accept the "double" versions of Point, Rect, and Size. This
    patch does that by adding some extra typedefs inside BaseMatrix to
    abstract over that.
    
    It also moves some function implementations into the .h file as they
    don't need specialization. I left some function implementations in
    the Matrix.cpp file:
    - Rotation, because it is specialized for Float and Double, since it uses
      sinf/cosf vs sin/cos in the two implementations.
    - The Matrix4x4 multiplication operator overload, because if I put it
      inside the BaseMatrix class declaration Matrix4x4 isn't defined yet
      and the compiler doesn't like it.
    
    MozReview-Commit-ID: K56dZjJhXWS
    
    --HG--
    extra : rebase_source : d009151942811a725ee6bf854238073e59665d5c
    8609d33d