1*30fdc8d8SChris Lattner //===-- SBHostOS.cpp --------------------------------------------*- C++ -*-===//
2*30fdc8d8SChris Lattner //
3*30fdc8d8SChris Lattner //                     The LLVM Compiler Infrastructure
4*30fdc8d8SChris Lattner //
5*30fdc8d8SChris Lattner // This file is distributed under the University of Illinois Open Source
6*30fdc8d8SChris Lattner // License. See LICENSE.TXT for details.
7*30fdc8d8SChris Lattner //
8*30fdc8d8SChris Lattner //===----------------------------------------------------------------------===//
9*30fdc8d8SChris Lattner 
10*30fdc8d8SChris Lattner #include "lldb/API/SBHostOS.h"
11*30fdc8d8SChris Lattner #include "lldb/API/SBError.h"
12*30fdc8d8SChris Lattner #include "lldb/Core/FileSpec.h"
13*30fdc8d8SChris Lattner #include "lldb/Host/Host.h"
14*30fdc8d8SChris Lattner 
15*30fdc8d8SChris Lattner using namespace lldb;
16*30fdc8d8SChris Lattner using namespace lldb_private;
17*30fdc8d8SChris Lattner 
18*30fdc8d8SChris Lattner 
19*30fdc8d8SChris Lattner 
20*30fdc8d8SChris Lattner SBFileSpec
21*30fdc8d8SChris Lattner SBHostOS::GetProgramFileSpec ()
22*30fdc8d8SChris Lattner {
23*30fdc8d8SChris Lattner     SBFileSpec sb_filespec;
24*30fdc8d8SChris Lattner     sb_filespec.SetFileSpec (Host::GetProgramFileSpec ());
25*30fdc8d8SChris Lattner     return sb_filespec;
26*30fdc8d8SChris Lattner }
27*30fdc8d8SChris Lattner 
28*30fdc8d8SChris Lattner lldb::thread_t
29*30fdc8d8SChris Lattner SBHostOS::ThreadCreate
30*30fdc8d8SChris Lattner (
31*30fdc8d8SChris Lattner     const char *name,
32*30fdc8d8SChris Lattner     void *(*thread_function)(void *),
33*30fdc8d8SChris Lattner     void *thread_arg,
34*30fdc8d8SChris Lattner     SBError *error_ptr
35*30fdc8d8SChris Lattner )
36*30fdc8d8SChris Lattner {
37*30fdc8d8SChris Lattner     return Host::ThreadCreate (name, thread_function, thread_arg, error_ptr ? error_ptr->get() : NULL);
38*30fdc8d8SChris Lattner }
39*30fdc8d8SChris Lattner 
40*30fdc8d8SChris Lattner void
41*30fdc8d8SChris Lattner SBHostOS::ThreadCreated (const char *name)
42*30fdc8d8SChris Lattner {
43*30fdc8d8SChris Lattner     Host::ThreadCreated (name);
44*30fdc8d8SChris Lattner }
45*30fdc8d8SChris Lattner 
46*30fdc8d8SChris Lattner bool
47*30fdc8d8SChris Lattner SBHostOS::ThreadCancel (lldb::thread_t thread, SBError *error_ptr)
48*30fdc8d8SChris Lattner {
49*30fdc8d8SChris Lattner     return Host::ThreadCancel (thread, error_ptr ? error_ptr->get() : NULL);
50*30fdc8d8SChris Lattner }
51*30fdc8d8SChris Lattner 
52*30fdc8d8SChris Lattner bool
53*30fdc8d8SChris Lattner SBHostOS::ThreadDetach (lldb::thread_t thread, SBError *error_ptr)
54*30fdc8d8SChris Lattner {
55*30fdc8d8SChris Lattner     return Host::ThreadDetach (thread, error_ptr ? error_ptr->get() : NULL);
56*30fdc8d8SChris Lattner }
57*30fdc8d8SChris Lattner 
58*30fdc8d8SChris Lattner bool
59*30fdc8d8SChris Lattner SBHostOS::ThreadJoin (lldb::thread_t thread, void **result, SBError *error_ptr)
60*30fdc8d8SChris Lattner {
61*30fdc8d8SChris Lattner     return Host::ThreadJoin (thread, result, error_ptr ? error_ptr->get() : NULL);
62*30fdc8d8SChris Lattner }
63*30fdc8d8SChris Lattner 
64*30fdc8d8SChris Lattner 
65