comparison DEPENDENCIES/generic/include/boost/test/debug.hpp @ 16:2665513ce2d3

Add boost headers
author Chris Cannam
date Tue, 05 Aug 2014 11:11:38 +0100
parents
children c530137014c0
comparison
equal deleted inserted replaced
15:663ca0da4350 16:2665513ce2d3
1 // (C) Copyright Gennadiy Rozental 2006-2008.
2 // Distributed under the Boost Software License, Version 1.0.
3 // (See accompanying file LICENSE_1_0.txt or copy at
4 // http://www.boost.org/LICENSE_1_0.txt)
5
6 // See http://www.boost.org/libs/test for the library home page.
7 //
8 // File : $RCSfile$
9 //
10 // Version : $Revision: 49312 $
11 //
12 // Description : defines portable debug interfaces
13 // ***************************************************************************
14
15 #ifndef BOOST_TEST_DEBUG_API_HPP_112006GER
16 #define BOOST_TEST_DEBUG_API_HPP_112006GER
17
18 // Boost.Test
19 #include <boost/test/detail/config.hpp>
20 #include <boost/test/utils/callback.hpp>
21 #include <boost/test/utils/basic_cstring/basic_cstring.hpp>
22
23 // STL
24 #include <string>
25
26 #include <boost/test/detail/suppress_warnings.hpp>
27
28 //____________________________________________________________________________//
29
30 namespace boost {
31
32 namespace debug {
33
34 // ************************************************************************** //
35 // ************** check if program is running under debugger ************** //
36 // ************************************************************************** //
37
38 bool BOOST_TEST_DECL under_debugger();
39
40 // ************************************************************************** //
41 // ************** cause program to break execution ************** //
42 // ************** in debugger at call point ************** //
43 // ************************************************************************** //
44
45 void BOOST_TEST_DECL debugger_break();
46
47 // ************************************************************************** //
48 // ************** gui debugger setup ************** //
49 // ************************************************************************** //
50
51 struct dbg_startup_info {
52 long pid;
53 bool break_or_continue;
54 unit_test::const_string binary_path;
55 unit_test::const_string display;
56 unit_test::const_string init_done_lock;
57 };
58
59 typedef unit_test::callback1<dbg_startup_info const&> dbg_starter;
60
61 // ************************************************************************** //
62 // ************** debugger setup ************** //
63 // ************************************************************************** //
64
65 #if BOOST_WORKAROUND( BOOST_MSVC, <1300)
66
67 std::string BOOST_TEST_DECL set_debugger( unit_test::const_string dbg_id );
68
69 #else
70
71 std::string BOOST_TEST_DECL set_debugger( unit_test::const_string dbg_id, dbg_starter s = dbg_starter() );
72
73 #endif
74
75
76 // ************************************************************************** //
77 // ************** attach debugger to the current process ************** //
78 // ************************************************************************** //
79
80 bool BOOST_TEST_DECL attach_debugger( bool break_or_continue = true );
81
82 // ************************************************************************** //
83 // ************** switch on/off detect memory leaks feature ************** //
84 // ************************************************************************** //
85
86 void BOOST_TEST_DECL detect_memory_leaks( bool on_off );
87
88 // ************************************************************************** //
89 // ************** cause program to break execution in ************** //
90 // ************** debugger at specific allocation point ************** //
91 // ************************************************************************** //
92
93 void BOOST_TEST_DECL break_memory_alloc( long mem_alloc_order_num );
94
95 } // namespace debug
96
97 } // namespace boost
98
99 #include <boost/test/detail/enable_warnings.hpp>
100
101 #endif