| 486 | typename Scalar = typename internal::traits<MatIn>::Scalar, |
| 487 | int InFlags = internal::traits<MatIn>::Flags, int OutFlags = internal::traits<MatOut>::Flags> |
| 488 | __global__ void InverseKernel(dim3 virtual_size, const MatIn expr, MatOut matOut) //TODO |
| 489 | { |
| 490 | typedef DeviceMatrix<Scalar, Dims, InFlags> Min; |
| 491 | typedef DeviceMatrix<Scalar, Dims, OutFlags> Mout; |
| 492 | CUMAT_KERNEL_1D_LOOP(index, virtual_size) |
| 493 | Min in = loadMat<Dims, MatIn, Scalar>(expr, index); |
| 494 | Scalar det; |
| 495 | Mout out = InverseFunctor<Scalar, Dims, Min, Mout >::run(in, det); |
| 496 | storeMat(matOut, out, index); |
| 497 | CUMAT_KERNEL_1D_LOOP_END |
| 498 | } |
| 499 | template <typename MatIn, typename MatOut, typename DetOut, int Dims, |
| 500 | typename Scalar = typename internal::traits<MatIn>::Scalar, |
| 501 | int InFlags = internal::traits<MatIn>::Flags, int OutFlags = internal::traits<MatOut>::Flags> |