1 //===-- ConnectionMachPort.h --------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
11 #ifndef liblldb_ConnectionMachPort_h_
12 #define liblldb_ConnectionMachPort_h_
15 #include <mach/mach.h>
20 // Other libraries and framework includes
22 #include "lldb/Core/Connection.h"
24 class ConnectionMachPort :
25 public lldb_private::Connection
28 ConnectionMachPort ();
31 ~ConnectionMachPort ();
36 virtual lldb::ConnectionStatus
37 BytesAvailable (uint32_t timeout_usec, lldb_private::Error *error_ptr);
39 virtual lldb::ConnectionStatus
40 Connect (const char *s, lldb_private::Error *error_ptr);
42 virtual lldb::ConnectionStatus
43 Disconnect (lldb_private::Error *error_ptr);
48 uint32_t timeout_usec,
49 lldb::ConnectionStatus &status,
50 lldb_private::Error *error_ptr);
53 Write (const void *src,
55 lldb::ConnectionStatus &status,
56 lldb_private::Error *error_ptr);
58 lldb::ConnectionStatus
59 BootstrapCheckIn (const char *port_name,
60 lldb_private::Error *error_ptr);
62 lldb::ConnectionStatus
63 BootstrapLookup (const char *port_name,
64 lldb_private::Error *error_ptr);
74 Send (const PayloadType &payload);
77 Receive (PayloadType &payload);
87 DISALLOW_COPY_AND_ASSIGN (ConnectionMachPort);
90 #endif // liblldb_ConnectionMachPort_h_
92 #endif // #if defined(__APPLE__)