diff --git a/src/core/bundleAdjust_base.cpp b/src/core/bundleAdjust_base.cpp index 7f73069a9..5ba0f3936 100644 --- a/src/core/bundleAdjust_base.cpp +++ b/src/core/bundleAdjust_base.cpp @@ -55,6 +55,7 @@ #include #include #include +#include // Local #include @@ -867,18 +868,21 @@ void print_details( if (verbose == false) { if (solverResult.success) { - std::cerr << "Solver returned SUCCESS | "; + MStreamUtils::stdErrorStream() << "Solver returned SUCCESS | "; } else { - std::cerr << "Solver returned FAILURE | "; + MStreamUtils::stdErrorStream() << "Solver returned FAILURE | "; } - fprintf( - stderr, - "error avg %8.4f min %8.4f max %8.4f iterations %03u\n", + + char formatBuffer[128]; + sprintf( + formatBuffer, + "error avg %8.4f min %8.4f max %8.4f iterations %03u", solverResult.errorAvg, solverResult.errorMin, solverResult.errorMax, solverResult.iterations); - fflush(stderr); + MStreamUtils::stdErrorStream() << std::string(formatBuffer) + << std::endl; } // Add all the data into the output string from the Maya command. @@ -1273,7 +1277,7 @@ bool solve(SolverOptions &solverOptions, } std::string pad_chars(num, '='); - std::cerr << tmp_string << " " << pad_chars << std::endl; + MStreamUtils::stdErrorStream() << tmp_string << " " << pad_chars << std::endl; } // MComputation helper. diff --git a/src/core/bundleAdjust_solveFunc.cpp b/src/core/bundleAdjust_solveFunc.cpp index fd3de2023..7c4fd8289 100644 --- a/src/core/bundleAdjust_solveFunc.cpp +++ b/src/core/bundleAdjust_solveFunc.cpp @@ -63,6 +63,7 @@ #include #include #include +#include // Solver Utilities #include @@ -689,12 +690,12 @@ void incrementNormalIteration(SolverData *ud, ++ud->iterNum; // We're not using INFO macro because we don't want a // new-line created. - std::cerr << "Eval "; - std::cerr << std::right << std::setfill ('0') << std::setw(4) - << ud->funcEvalNum; - std::cerr << " | Normal "; - std::cerr << std::right << std::setfill ('0') << std::setw(4) - << ud->iterNum; + MStreamUtils::stdErrorStream() << "Eval "; + MStreamUtils::stdErrorStream() << std::right << std::setfill ('0') << std::setw(4) + << ud->funcEvalNum; + MStreamUtils::stdErrorStream() << " | Normal "; + MStreamUtils::stdErrorStream() << std::right << std::setfill ('0') << std::setw(4) + << ud->iterNum; if (debugIsOpen) { debugFile << std::endl << "iteration normal: " << ud->iterNum @@ -1060,12 +1061,14 @@ int solveFunc(int numberOfParameters, ud->timer.funcBenchTicks.stop(); if (ud->isNormalCall) { - fprintf( - stderr, - " | error avg %8.4f min %8.4f max %8.4f\n", + char formatBuffer[128]; + sprintf( + formatBuffer, + " | error avg %8.4f min %8.4f max %8.4f", error_avg, error_min, error_max); + MStreamUtils::stdErrorStream() << std::string(formatBuffer) << std::endl; } else { if (ud->verbose) { if (!ud->doCalcJacobian) {