Renames Setup to GlobalState
[chromium-blink-merge.git] / ipc / attachment_broker_win.h
blobd9b927c7be9bde48860aaef1c74907a05514063a
1 // Copyright 2015 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 IPC_ATTACHMENT_BROKER_WIN_H_
6 #define IPC_ATTACHMENT_BROKER_WIN_H_
8 #include "ipc/attachment_broker.h"
9 #include "ipc/ipc_export.h"
10 #include "ipc/ipc_sender.h"
12 namespace IPC {
14 // This class is an implementation of AttachmentBroker for the Windows platform.
15 class IPC_EXPORT AttachmentBrokerWin : public IPC::AttachmentBroker {
16 public:
17 AttachmentBrokerWin();
18 ~AttachmentBrokerWin() override;
20 // In a non-broker process, the single instance of this class listens for
21 // an IPC from the broker process indicating that a new attachment has been
22 // duplicated.
23 void OnReceiveDuplicatedHandle(HANDLE, BrokerableAttachment::AttachmentId id);
25 // IPC::AttachmentBroker overrides.
26 void SendAttachmentToProcess(BrokerableAttachment* attachment,
27 base::ProcessId destination_process) override;
28 bool GetAttachmentWithId(BrokerableAttachment::AttachmentId id,
29 BrokerableAttachment* attachment) override;
32 } // namespace IPC
34 #endif // IPC_ATTACHMENT_BROKER_WIN_H_