chromium/third_party/openscreen/src/cast/streaming/impl/statistics_collector.h

// Copyright 2023 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_IMPL_STATISTICS_COLLECTOR_H_
#define CAST_STREAMING_IMPL_STATISTICS_COLLECTOR_H_

#include <vector>

#include "cast/streaming/impl/statistics_defines.h"
#include "platform/api/time.h"
#include "platform/base/span.h"

namespace openscreen::cast {

// This POD struct contains helpful information about a given packet that is
// not stored directly on the packet itself.
struct PacketMetadata {};

// This class is responsible for gathering packet and frame statistics using its
// Collect*() methods, that can then be taken by consumers using the Take*()
// methods.
class StatisticsCollector {};

}  // namespace openscreen::cast

#endif  // CAST_STREAMING_IMPL_STATISTICS_COLLECTOR_H_