Go to the documentation of this file.
25 #include "absl/strings/string_view.h"
34 template <
typename EntryType>
35 std::map<absl::string_view, double>
ParseMap(
40 double (*value_func)(
const EntryType*),
41 BackendMetricAllocatorInterface* allocator) {
42 std::map<absl::string_view, double>
result;
45 const auto* entry = entry_func(
msg, &i);
46 if (entry ==
nullptr)
break;
48 char*
key = allocator->AllocateString(key_view.
size);
62 serialized_load_report.
data(), serialized_load_report.
size(),
64 if (
msg ==
nullptr)
return nullptr;
72 ParseMap<xds_data_orca_v3_OrcaLoadReport_RequestCostEntry>(
77 ParseMap<xds_data_orca_v3_OrcaLoadReport_UtilizationEntry>(
81 return backend_metric_data;
UPB_INLINE upb_StringView xds_data_orca_v3_OrcaLoadReport_UtilizationEntry_key(const xds_data_orca_v3_OrcaLoadReport_UtilizationEntry *msg)
bool ParseMap(io::CodedInputStream *input, void *map_field)
UPB_INLINE double xds_data_orca_v3_OrcaLoadReport_RequestCostEntry_value(const xds_data_orca_v3_OrcaLoadReport_RequestCostEntry *msg)
const UPB_INLINE xds_data_orca_v3_OrcaLoadReport_RequestCostEntry * xds_data_orca_v3_OrcaLoadReport_request_cost_next(const xds_data_orca_v3_OrcaLoadReport *msg, size_t *iter)
memcpy(mem, inblock.get(), min(CONTAINING_RECORD(inblock.get(), MEMBLOCK, data) ->size, size))
constexpr size_type size() const noexcept
struct xds_data_orca_v3_OrcaLoadReport xds_data_orca_v3_OrcaLoadReport
virtual BackendMetricData * AllocateBackendMetricData()=0
struct upb_arena upb_arena
double cpu_utilization
CPU utilization expressed as a fraction of available CPU resources.
std::map< absl::string_view, double > request_cost
UPB_INLINE double xds_data_orca_v3_OrcaLoadReport_UtilizationEntry_value(const xds_data_orca_v3_OrcaLoadReport_UtilizationEntry *msg)
std::map< absl::string_view, double > utilization
UPB_INLINE xds_data_orca_v3_OrcaLoadReport * xds_data_orca_v3_OrcaLoadReport_parse(const char *buf, size_t size, upb_Arena *arena)
absl::string_view string_view
UPB_INLINE double xds_data_orca_v3_OrcaLoadReport_mem_utilization(const xds_data_orca_v3_OrcaLoadReport *msg)
const UPB_INLINE xds_data_orca_v3_OrcaLoadReport_UtilizationEntry * xds_data_orca_v3_OrcaLoadReport_utilization_next(const xds_data_orca_v3_OrcaLoadReport *msg, size_t *iter)
UPB_INLINE double xds_data_orca_v3_OrcaLoadReport_cpu_utilization(const xds_data_orca_v3_OrcaLoadReport *msg)
UPB_INLINE upb_StringView xds_data_orca_v3_OrcaLoadReport_RequestCostEntry_key(const xds_data_orca_v3_OrcaLoadReport_RequestCostEntry *msg)
constexpr const_pointer data() const noexcept
const BackendMetricData * ParseBackendMetricData(absl::string_view serialized_load_report, BackendMetricAllocatorInterface *allocator)
grpc
Author(s):
autogenerated on Thu Mar 13 2025 02:58:35