// Copyright 2014 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef MEDIA_CAST_LOGGING_RAW_EVENT_SUBSCRIBER_BUNDLE_H_ #define MEDIA_CAST_LOGGING_RAW_EVENT_SUBSCRIBER_BUNDLE_H_ #include "base/memory/scoped_refptr.h" #include "media/cast/logging/encoding_event_subscriber.h" #include "media/cast/logging/stats_event_subscriber.h" namespace media { namespace cast { class CastEnvironment; class ReceiverTimeOffsetEstimator; // Allow 9MB for serialized video / audio event logs. const int kMaxSerializedBytes = …; // Assume serialized log data for each frame will take up to 150 bytes. const int kMaxVideoEventEntries = …; // Assume serialized log data for each frame will take up to 75 bytes. const int kMaxAudioEventEntries = …; // A bundle for raw event subscribers for a single stream. // It contains an EncodingEventSubscriber and a StatsSubscriber. class RawEventSubscriberBundleForStream { … }; // A bundle of subscribers for all streams. An instance of this object // is associated with a CastEnvironment. // This class can be used for managing event subscribers // in a session where they could be multiple streams (i.e. CastSessionDelegate). // It also contains a ReceiverTimeOffsetEstimator that is shared by subscribers // of different streams. class RawEventSubscriberBundle { … }; } // namespace cast } // namespace media #endif // MEDIA_CAST_LOGGING_RAW_EVENT_SUBSCRIBER_BUNDLE_H_