19de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton//===-- Gauge.cpp -----------------------------------------------*- C++ -*-===// 29de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton// 39de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton// The LLVM Compiler Infrastructure 49de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton// 59de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton// This file is distributed under the University of Illinois Open Source 69de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton// License. See LICENSE.TXT for details. 79de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton// 89de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton//===----------------------------------------------------------------------===// 99de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton 109de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton#include "Gauge.h" 110b10ef61ea60e24fe7736cd98bd5fb45efe9c816Greg Clayton#include "lldb/lldb-forward.h" 129de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton 139de4dec874148d30cc1d4c498d38cd048a8164caGreg Claytontemplate <> 149de4dec874148d30cc1d4c498d38cd048a8164caGreg Claytonlldb_perf::Results::ResultSP 159de4dec874148d30cc1d4c498d38cd048a8164caGreg Claytonlldb_perf::GetResult (const char *description, double value) 169de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton{ 179de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton if (description && description[0]) 189de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton { 19102b2c2681c9a830afe25bfea35557421905e42cGreg Clayton std::unique_ptr<Results::Dictionary> value_dict_ap (new Results::Dictionary ()); 209de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton value_dict_ap->AddString("description", NULL, description); 219de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton value_dict_ap->AddDouble("value", NULL, value); 229de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton return Results::ResultSP (value_dict_ap.release()); 239de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton } 249de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton return Results::ResultSP (new Results::Double (NULL, NULL, value)); 259de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton} 269de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton 279de4dec874148d30cc1d4c498d38cd048a8164caGreg Claytontemplate <> 289de4dec874148d30cc1d4c498d38cd048a8164caGreg Claytonlldb_perf::Results::ResultSP 299de4dec874148d30cc1d4c498d38cd048a8164caGreg Claytonlldb_perf::GetResult (const char *description, uint64_t value) 309de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton{ 319de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton if (description && description[0]) 329de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton { 33102b2c2681c9a830afe25bfea35557421905e42cGreg Clayton std::unique_ptr<Results::Dictionary> value_dict_ap (new Results::Dictionary ()); 349de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton value_dict_ap->AddString("description", NULL, description); 359de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton value_dict_ap->AddUnsigned("value", NULL, value); 369de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton return Results::ResultSP (value_dict_ap.release()); 379de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton } 389de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton return Results::ResultSP (new Results::Unsigned (NULL, NULL, value)); 399de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton} 409de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton 419de4dec874148d30cc1d4c498d38cd048a8164caGreg Claytontemplate <> 429de4dec874148d30cc1d4c498d38cd048a8164caGreg Claytonlldb_perf::Results::ResultSP 439de4dec874148d30cc1d4c498d38cd048a8164caGreg Claytonlldb_perf::GetResult (const char *description, std::string value) 449de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton{ 459de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton if (description && description[0]) 469de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton { 47102b2c2681c9a830afe25bfea35557421905e42cGreg Clayton std::unique_ptr<Results::Dictionary> value_dict_ap (new Results::Dictionary ()); 489de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton value_dict_ap->AddString("description", NULL, description); 499de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton value_dict_ap->AddString("value", NULL, value.c_str()); 509de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton return Results::ResultSP (value_dict_ap.release()); 519de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton } 529de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton return Results::ResultSP (new Results::String (NULL, NULL, value.c_str())); 539de4dec874148d30cc1d4c498d38cd048a8164caGreg Clayton} 54