[TeX] Improved readability for Histogram metric APIs

Bug: 268161449
Test: atest expresslog_test
Change-Id: Idd83ca6ec47288ca6ef7ecce333ceb3c88dd761a
diff --git a/libstats/expresslog/Histogram.cpp b/libstats/expresslog/Histogram.cpp
index c90282d..cb29a00 100644
--- a/libstats/expresslog/Histogram.cpp
+++ b/libstats/expresslog/Histogram.cpp
@@ -26,8 +26,8 @@
 namespace android {
 namespace expresslog {
 
-Histogram::UniformOptions* Histogram::UniformOptions::create(int binCount, float minValue,
-                                                             float exclusiveMaxValue) {
+std::shared_ptr<Histogram::UniformOptions> Histogram::UniformOptions::create(
+        int binCount, float minValue, float exclusiveMaxValue) {
     if (binCount < 1) {
         ALOGE("Bin count should be positive number");
         return nullptr;
@@ -38,7 +38,8 @@
         return nullptr;
     }
 
-    return new UniformOptions(binCount, minValue, exclusiveMaxValue);
+    return std::shared_ptr<UniformOptions>(
+            new UniformOptions(binCount, minValue, exclusiveMaxValue));
 }
 
 Histogram::UniformOptions::UniformOptions(int binCount, float minValue, float exclusiveMaxValue)
diff --git a/libstats/expresslog/include/Histogram.h b/libstats/expresslog/include/Histogram.h
index aba2786..8fdc1b6 100644
--- a/libstats/expresslog/include/Histogram.h
+++ b/libstats/expresslog/include/Histogram.h
@@ -46,10 +46,9 @@
 
     /** Used by Histogram to map data sample to corresponding bin for uniform bins */
     class UniformOptions : public BinOptions {
-        UniformOptions(int binCount, float minValue, float exclusiveMaxValue);
-
     public:
-        static UniformOptions* create(int binCount, float minValue, float exclusiveMaxValue);
+        static std::shared_ptr<UniformOptions> create(int binCount, float minValue,
+                                                      float exclusiveMaxValue);
 
         int getBinsCount() const override {
             return mBinCount;
@@ -58,6 +57,8 @@
         int getBinForSample(float sample) const override;
 
     private:
+        UniformOptions(int binCount, float minValue, float exclusiveMaxValue);
+
         const int mBinCount;
         const float mMinValue;
         const float mExclusiveMaxValue;