sync_file_system_test_util.h revision d0247b1b59f9c528cb6df88b4f2b9afaf80d181e
15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef CHROME_BROWSER_SYNC_FILE_SYSTEM_SYNC_FILE_SYSTEM_TEST_UTIL_H_ 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define CHROME_BROWSER_SYNC_FILE_SYSTEM_SYNC_FILE_SYSTEM_TEST_UTIL_H_ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 8a3f7b4e666c476898878fa745f637129375cd889Ben Murdoch#include "base/callback_forward.h" 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace base { 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)class RunLoop; 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace sync_file_system { 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)template <typename R> 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void AssignAndQuit(base::RunLoop* run_loop, R* result_out, R result); 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)template <typename R> base::Callback<void(R)> 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)AssignAndQuitCallback(base::RunLoop* run_loop, R* result); 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 22d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)template <typename Arg> 23d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)base::Callback<void(Arg)> CreateResultReceiver(Arg* arg_out); 24d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles) 25d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)template <typename Arg1, typename Arg2> 26d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)base::Callback<void(Arg1, Arg2)> CreateResultReceiver(Arg1* arg1_out, 27d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles) Arg2* arg2_out); 28d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles) 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace sync_file_system 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // CHROME_BROWSER_SYNC_FILE_SYSTEM_SYNC_FILE_SYSTEM_TEST_UTIL_H_ 32