xref: /haiku/headers/os/net/NetDebug.h (revision 3af8011358bd4c624a0979336d48dabb466171ed)
1 /*=--------------------------------------------------------------------------=*
2  * NetDebug.h -- Interface definition for the BNetDebug class.
3  *
4  * Written by S.T. Mansfield (thephantom@mac.com)
5  *=--------------------------------------------------------------------------=*
6  * Copyright (c) 2002, The Haiku project.
7  *
8  * Permission is hereby granted, free of charge, to any person obtaining a
9  * copy of this software and associated documentation files (the "Software"),
10  * to deal in the Software without restriction, including without limitation
11  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
12  * and/or sell copies of the Software, and to permit persons to whom the
13  * Software is furnished to do so, subject to the following conditions:
14  *
15  * The above copyright notice and this permission notice shall be included in
16  * all copies or substantial portions of the Software.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
24  * DEALINGS IN THE SOFTWARE.
25  *=--------------------------------------------------------------------------=*
26  */
27 
28 #ifndef _NETDEBUG_H
29 #define _NETDEBUG_H
30 
31 /*
32  * Net debugging class
33  *
34  * Use this class to print informative messages and dump data
35  * to stderr and provide control over whether debug messages
36  * get printed or not.
37  */
38 
39 class BNetDebug
40 {
41 public:
42 	// turn debugging message output on or off
43     static void Enable(bool);
44 
45 	// test debugging message output state
46     static bool IsEnabled();
47 
48 	// print a debugging message
49     static void Print(const char *msg);
50 
51 	// dump raw data in a nice hd-like format
52     static void Dump(const char *data, size_t size, const char *title);
53 };
54 
55 #endif // <-- #ifndef _NETDEBUG_H
56 
57 /*=------------------------------------------------------------------- End -=*/
58 
59