root/media/cast/logging/log_deserializer.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


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

#ifndef MEDIA_CAST_LOGGING_LOG_DESERIALIZER_H_
#define MEDIA_CAST_LOGGING_LOG_DESERIALIZER_H_

#include <string>

#include "base/memory/scoped_ptr.h"
#include "media/cast/logging/encoding_event_subscriber.h"

namespace media {
namespace cast {

// This function takes the output of LogSerializer and deserializes it into
// its original format. Returns true if deserialization is successful. All
// output arguments are valid if this function returns true.
// |data|: Serialized event logs with length |data_bytes|.
// |compressed|: true if |data| is compressed in gzip format.
// |log_metadata|: This will be populated with deserialized LogMetadata proto.
// |frame_events|: This will be populated with deserialized frame events.
// |packet_events|: This will be populated with deserialized packet events.
bool DeserializeEvents(char* data,
                       int data_bytes,
                       bool compressed,
                       media::cast::proto::LogMetadata* log_metadata,
                       FrameEventMap* frame_events,
                       PacketEventMap* packet_events);

}  // namespace cast
}  // namespace media

#endif  // MEDIA_CAST_LOGGING_LOG_DESERIALIZER_H_

/* [<][>][^][v][top][bottom][index][help] */