chromium/chrome/services/media_gallery_util/ipc_data_source.h

// 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 CHROME_SERVICES_MEDIA_GALLERY_UTIL_IPC_DATA_SOURCE_H_
#define CHROME_SERVICES_MEDIA_GALLERY_UTIL_IPC_DATA_SOURCE_H_

#include <stdint.h>

#include "base/memory/ref_counted.h"
#include "base/threading/thread_checker.h"
#include "chrome/services/media_gallery_util/public/mojom/media_parser.mojom.h"
#include "media/base/data_source.h"
#include "mojo/public/cpp/bindings/pending_remote.h"
#include "mojo/public/cpp/bindings/remote.h"

namespace base {
class TaskRunner;
}

// Provides the metadata parser with blob data from the browser process. Class
// must be created and destroyed on the utility thread. Class may be used as a
// DataSource on a different thread. The utility thread must not be blocked
// for read operations to succeed.
class IPCDataSource : public media::DataSource {};

#endif  // CHROME_SERVICES_MEDIA_GALLERY_UTIL_IPC_DATA_SOURCE_H_