chromium/third_party/openscreen/src/cast/streaming/public/statistics.h

// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CAST_STREAMING_PUBLIC_STATISTICS_H_
#define CAST_STREAMING_PUBLIC_STATISTICS_H_

#include <stddef.h>
#include <stdint.h>

#include <string>
#include <utility>
#include <vector>

#include "cast/streaming/public/frame_id.h"
#include "cast/streaming/rtp_time.h"
#include "json/value.h"
#include "platform/api/time.h"

namespace openscreen::cast {

// This file must be updated whenever sender_stats.proto is updated.
enum class StatisticType {};

enum class HistogramType {};

struct SimpleHistogram {};

struct SenderStats {};

// The consumer may provide a statistics client if they are interested in
// getting statistics about the ongoing session.
class SenderStatsClient {};

}  // namespace openscreen::cast

#endif  // CAST_STREAMING_PUBLIC_STATISTICS_H_