Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #include "batch_stats.h"
00018 #include <cstring>
00019
00020 namespace g2o {
00021 using namespace std;
00022
00023 G2OBatchStatistics * globalStats=0;
00024
00025 #ifndef PTHING
00026 #define PTHING(s) \
00027 #s << "= " << (st.s) << "\t "
00028 #endif
00029
00030 G2OBatchStatistics::G2OBatchStatistics(){
00031
00032 memset (this, 0, sizeof(G2OBatchStatistics));
00033 }
00034
00035 std::ostream& operator << (std::ostream& os , const G2OBatchStatistics& st)
00036 {
00037 os << PTHING(iteration);
00038
00039 os << PTHING( numVertices );
00040 os << PTHING( numEdges );
00041 os << PTHING( chi2 );
00042
00044
00045 os << PTHING( timeResiduals );
00046 os << PTHING( timeLinearize );
00047 os << PTHING( timeQuadraticForm );
00048
00049
00050 os << PTHING( timeSchurrComplement );
00051
00052
00053 os << PTHING( timeSymbolicDecomposition );
00054 os << PTHING( timeNumericDecomposition );
00055 os << PTHING( timeLinearSolution );
00056 os << PTHING( iterationsLinearSolver );
00057 os << PTHING( timeUpdate );
00058 os << PTHING( timeIteration );
00059
00060 os << PTHING( levenbergIterations );
00061 os << PTHING( timeLinearSolver);
00062
00063 os << PTHING(hessianDimension);
00064 os << PTHING(hessianPoseDimension);
00065 os << PTHING(hessianLandmarkDimension);
00066 os << PTHING(choleskyNNZ);
00067 os << PTHING(timeMarginals);
00068
00069 return os;
00070 };
00071
00072 }