| 1770 | Submat2D& operator *=(const component_type& s) |
| 1771 | { |
| 1772 | data[index_00] *= s; |
| 1773 | data[index_10] *= s; |
| 1774 | data[index_01] *= s; |
| 1775 | data[index_11] *= s; |
| 1776 | return (*this); |
| 1777 | } |
| 1778 | |
| 1779 | Submat2D& operator /=(const float& s) |
| 1780 | { |
| 1781 | float t = 1.0F / s; |
| 1782 | data[index_00] *= t; |
| 1783 | data[index_10] *= t; |
| 1784 | data[index_01] *= t; |
| 1785 | data[index_11] *= t; |
| 1786 | return (*this); |
| 1787 | } |
| 1788 | |
| 1789 | Submat2D& operator /=(const double& s) |
| 1790 | { |
| 1791 | double t = 1.0 / s; |
| 1792 | data[index_00] *= t; |
| 1793 | data[index_10] *= t; |
| 1794 | data[index_01] *= t; |
| 1795 | data[index_11] *= t; |
| 1796 | return (*this); |
| 1797 | } |
| 1798 | |
| 1799 | template <typename division_type> |
| 1800 | Submat2D& operator /=(const division_type& s) |
| 1801 | { |
| 1802 | data[index_00] /= s; |
| 1803 | data[index_10] /= s; |
| 1804 | data[index_01] /= s; |
| 1805 | data[index_11] /= s; |
| 1806 | return (*this); |
| 1807 | } |
| 1808 | }; |
| 1809 | |
| 1810 | |
| 1811 | template <typename A_type_struct, int A_count, int A_index_00, int A_index_01, int A_index_10, int A_index_11, typename B_type_struct, int B_count, int B_index_00, int B_index_01, int B_index_10, int B_index_11> |
| 1812 | inline bool operator ==(const Submat2D<A_type_struct, A_count, A_index_00, A_index_01, A_index_10, A_index_11>& A, const Submat2D<B_type_struct, B_count, B_index_00, B_index_01, B_index_10, B_index_11>& B) |
| 1813 | { |
| 1814 | return ((A.data[A_index_00] == B.data[B_index_00]) && (A.data[A_index_01] == B.data[B_index_01]) && (A.data[A_index_10] == B.data[B_index_10]) && (A.data[A_index_11] == B.data[B_index_11])); |
| 1815 | } |
| 1816 | |
| 1817 | template <typename A_type_struct, int A_count, int A_index_00, int A_index_01, int A_index_10, int A_index_11, typename B_type_struct, int B_count, int B_index_00, int B_index_01, int B_index_10, int B_index_11> |
| 1818 | inline bool operator !=(const Submat2D<A_type_struct, A_count, A_index_00, A_index_01, A_index_10, A_index_11>& A, const Submat2D<B_type_struct, B_count, B_index_00, B_index_01, B_index_10, B_index_11>& B) |
| 1819 | { |
| 1820 | return ((A.data[A_index_00] != B.data[B_index_00]) || (A.data[A_index_01] != B.data[B_index_01]) || (A.data[A_index_10] != B.data[B_index_10]) || (A.data[A_index_11] != B.data[B_index_11])); |
| 1821 | } |
| 1822 | |
| 1823 | |
| 1824 | template <typename type_struct, int index_00, int index_01, int index_02, int index_10, int index_11, int index_12, int index_20, int index_21, int index_22> |
| 1825 | struct ConverterMatrix3D |
| 1826 | { |
| 1827 | typedef typename type_struct::component_type component_type; |
| 1828 | typedef typename type_struct::matrix3D_type matrix3D_type; |
| 1829 | typedef typename type_struct::matrix3D_type const_matrix3D_type; |
nothing calls this directly
no outgoing calls
no test coverage detected