Roll src/third_party/WebKit f298044:aa8346d (svn 202628:202629)
[chromium-blink-merge.git] / content / utility / in_process_utility_thread.h
blob2e16d1e1c39909c53ada1ace546528b1b7765130
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CONTENT_UTILITY_IN_PROCESS_UTILITY_THREAD_H_
6 #define CONTENT_UTILITY_IN_PROCESS_UTILITY_THREAD_H_
8 #include <string>
10 #include "base/threading/thread.h"
11 #include "content/common/content_export.h"
12 #include "content/common/in_process_child_thread_params.h"
14 namespace content {
16 class ChildProcess;
18 class InProcessUtilityThread : public base::Thread {
19 public:
20 InProcessUtilityThread(const InProcessChildThreadParams& params);
21 ~InProcessUtilityThread() override;
23 private:
24 // base::Thread implementation:
25 void Init() override;
26 void CleanUp() override;
28 void InitInternal();
30 InProcessChildThreadParams params_;
31 scoped_ptr<ChildProcess> child_process_;
33 DISALLOW_COPY_AND_ASSIGN(InProcessUtilityThread);
36 CONTENT_EXPORT base::Thread* CreateInProcessUtilityThread(
37 const InProcessChildThreadParams& params);
39 } // namespace content
41 #endif // CONTENT_UTILITY_IN_PROCESS_UTILITY_THREAD_H_