chromium/components/sync/model/proxy_data_type_controller_delegate.h

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

#ifndef COMPONENTS_SYNC_MODEL_PROXY_DATA_TYPE_CONTROLLER_DELEGATE_H_
#define COMPONENTS_SYNC_MODEL_PROXY_DATA_TYPE_CONTROLLER_DELEGATE_H_

#include "base/functional/callback.h"
#include "base/memory/scoped_refptr.h"
#include "base/memory/weak_ptr.h"
#include "base/task/sequenced_task_runner.h"
#include "components/sync/model/data_type_controller_delegate.h"

namespace syncer {

// Implementation of DataTypeControllerDelegate that simply delegates the work
// further to |other|, which lives in a difference thread/sequence. This means
// all methods are implemented via posting tasks to the destination sequence, as
// provided in the constructor via |task_runner|.
// Instantiations of this typically live on the UI thread, for use by the
// DataTypeController, and forward calls to the real implementation on the
// model sequence.
class ProxyDataTypeControllerDelegate : public DataTypeControllerDelegate {};

}  // namespace syncer

#endif  // COMPONENTS_SYNC_MODEL_PROXY_DATA_TYPE_CONTROLLER_DELEGATE_H_