Raw memory in Hessian should be templated

Issue #185 resolved
Frank Dellaert created an issue

See

HessianFactor.cpp (3 matches)
366: typedef Eigen::Matrix<double, 9, 1> DVector; 
556: typedef Eigen::Matrix<double, Eigen::Dynamic, 1> DVector; 
607: typedef Eigen::Matrix<double, 9, 1> DVector; 
JacobianFactor.cpp (2 matches)
468: typedef Eigen::Matrix<double, 9, 1> DVector; 
535: typedef Eigen::Matrix<double, Eigen::Dynamic, 1> DVector; 

Comments (7)

  1. Chris Beall

    Unsure about this. hessianDiagonal(double* d) makes the fundamental assumption that all variables are the same size to index into vector d. There also seems to be an implicit assumption that all keys are contiguous & zero-based? Iirc, @lucacarlone mentioned something about moving this elsewhere? Thoughts?

  2. Luca Carlone

    quick answer: hessianDiagonal (raw access) is no longer in Hessian factors, but has been moved to regularHessianFactors (same for Jacobians). @stan84 , can you confirm that what I said is right in "develop"? (maybe it is still in a brach)

  3. Sungtae An

    Yes, it is still in the RegularFactors branch. @cbeall3 can we merge this brach? I guess you told me that you want to do some modification related with templated things..

  4. Chris Beall

    I have no objection to merging. Create a pull request? The remaining template changes I wanted to make follow up on some of the stuff that's already made it into develop, but do not yet appear in the RegularFactors branch because it's quite behind. I didn't want to move any more template stuff around until RegularFactors & develop got synced up. Whether it's RegularFactors->develop or the other way around, doesn't really matter to me :-)

  5. Log in to comment