From ec2727e9835be89263ca1170ad62dbaba0980737 Mon Sep 17 00:00:00 2001 From: Siarhei Vishniakou Date: Thu, 6 Jul 2017 10:22:03 -0700 Subject: [PATCH] Convert String8 to std::string String8 is deprecated. Test: m -j and uncomment DEBUG flags in VelocityTracker to view coordinates in logcat. Change-Id: I968685765f06418be73fbb8ad2747a1fe8ed324e --- libs/input/Android.bp | 1 + libs/input/VelocityTracker.cpp | 54 +++++++++++++++++++++--------------------- 2 files changed, 28 insertions(+), 27 deletions(-) diff --git a/libs/input/Android.bp b/libs/input/Android.bp index 92944191c7..2f399765a0 100644 --- a/libs/input/Android.bp +++ b/libs/input/Android.bp @@ -34,6 +34,7 @@ cc_library { clang: true, shared_libs: [ + "libbase", "liblog", "libcutils", ], diff --git a/libs/input/VelocityTracker.cpp b/libs/input/VelocityTracker.cpp index 75ad71c3b3..b174fa8bbb 100644 --- a/libs/input/VelocityTracker.cpp +++ b/libs/input/VelocityTracker.cpp @@ -27,10 +27,10 @@ #include #include +#include #include #include #include -#include #include namespace android { @@ -63,36 +63,36 @@ static float vectorNorm(const float* a, uint32_t m) { } #if DEBUG_STRATEGY || DEBUG_VELOCITY -static String8 vectorToString(const float* a, uint32_t m) { - String8 str; - str.append("["); +static std::string vectorToString(const float* a, uint32_t m) { + std::string str; + str += "["; for (size_t i = 0; i < m; i++) { if (i) { - str.append(","); + str += ","; } - str.appendFormat(" %f", *(a++)); + str += android::base::StringPrintf(" %f", *(a++)); } - str.append(" ]"); + str += " ]"; return str; } -static String8 matrixToString(const float* a, uint32_t m, uint32_t n, bool rowMajor) { - String8 str; - str.append("["); +static std::string matrixToString(const float* a, uint32_t m, uint32_t n, bool rowMajor) { + std::string str; + str = "["; for (size_t i = 0; i < m; i++) { if (i) { - str.append(","); + str += ","; } - str.append(" ["); + str += " ["; for (size_t j = 0; j < n; j++) { if (j) { - str.append(","); + str += ","; } - str.appendFormat(" %f", a[rowMajor ? i * n + j : j * m + i]); + str += android::base::StringPrintf(" %f", a[rowMajor ? i * n + j : j * m + i]); } - str.append(" ]"); + str += " ]"; } - str.append(" ]"); + str += " ]"; return str; } #endif @@ -255,8 +255,8 @@ void VelocityTracker::addMovement(nsecs_t eventTime, BitSet32 idBits, const Posi "estimator (degree=%d, xCoeff=%s, yCoeff=%s, confidence=%f)", id, positions[index].x, positions[index].y, int(estimator.degree), - vectorToString(estimator.xCoeff, estimator.degree + 1).string(), - vectorToString(estimator.yCoeff, estimator.degree + 1).string(), + vectorToString(estimator.xCoeff, estimator.degree + 1).c_str(), + vectorToString(estimator.yCoeff, estimator.degree + 1).c_str(), estimator.confidence); } #endif @@ -442,8 +442,8 @@ static bool solveLeastSquares(const float* x, const float* y, const float* w, uint32_t m, uint32_t n, float* outB, float* outDet) { #if DEBUG_STRATEGY ALOGD("solveLeastSquares: m=%d, n=%d, x=%s, y=%s, w=%s", int(m), int(n), - vectorToString(x, m).string(), vectorToString(y, m).string(), - vectorToString(w, m).string()); + vectorToString(x, m).c_str(), vectorToString(y, m).c_str(), + vectorToString(w, m).c_str()); #endif // Expand the X vector to a matrix A, pre-multiplied by the weights. @@ -455,7 +455,7 @@ static bool solveLeastSquares(const float* x, const float* y, } } #if DEBUG_STRATEGY - ALOGD(" - a=%s", matrixToString(&a[0][0], m, n, false /*rowMajor*/).string()); + ALOGD(" - a=%s", matrixToString(&a[0][0], m, n, false /*rowMajor*/).c_str()); #endif // Apply the Gram-Schmidt process to A to obtain its QR decomposition. @@ -490,8 +490,8 @@ static bool solveLeastSquares(const float* x, const float* y, } } #if DEBUG_STRATEGY - ALOGD(" - q=%s", matrixToString(&q[0][0], m, n, false /*rowMajor*/).string()); - ALOGD(" - r=%s", matrixToString(&r[0][0], n, n, true /*rowMajor*/).string()); + ALOGD(" - q=%s", matrixToString(&q[0][0], m, n, false /*rowMajor*/).c_str()); + ALOGD(" - r=%s", matrixToString(&r[0][0], n, n, true /*rowMajor*/).c_str()); // calculate QR, if we factored A correctly then QR should equal A float qr[n][m]; @@ -503,7 +503,7 @@ static bool solveLeastSquares(const float* x, const float* y, } } } - ALOGD(" - qr=%s", matrixToString(&qr[0][0], m, n, false /*rowMajor*/).string()); + ALOGD(" - qr=%s", matrixToString(&qr[0][0], m, n, false /*rowMajor*/).c_str()); #endif // Solve R B = Qt W Y to find B. This is easy because R is upper triangular. @@ -521,7 +521,7 @@ static bool solveLeastSquares(const float* x, const float* y, outB[i] /= r[i][i]; } #if DEBUG_STRATEGY - ALOGD(" - b=%s", vectorToString(outB, n).string()); + ALOGD(" - b=%s", vectorToString(outB, n).c_str()); #endif // Calculate the coefficient of determination as 1 - (SSerr / SStot) where @@ -607,8 +607,8 @@ bool LeastSquaresVelocityTrackerStrategy::getEstimator(uint32_t id, #if DEBUG_STRATEGY ALOGD("estimate: degree=%d, xCoeff=%s, yCoeff=%s, confidence=%f", int(outEstimator->degree), - vectorToString(outEstimator->xCoeff, n).string(), - vectorToString(outEstimator->yCoeff, n).string(), + vectorToString(outEstimator->xCoeff, n).c_str(), + vectorToString(outEstimator->yCoeff, n).c_str(), outEstimator->confidence); #endif return true; -- 2.11.0