source: pacpussensors/trunk/CanGateway/driver/kvaser/linux/debugprn.h@ 102

Last change on this file since 102 was 97, checked in by DHERBOMEZ Gérald, 9 years ago

add include files for kvaser

File size: 6.2 KB
Line 
1/*
2** Copyright 2012 by Kvaser AB, Mölndal, Sweden
3** http://www.kvaser.com
4**
5** This software is dual licensed under the following two licenses:
6** BSD-new and GPLv2. You may use either one. See the included
7** COPYING file for details.
8**
9** License: BSD-new
10** ===============================================================================
11** Redistribution and use in source and binary forms, with or without
12** modification, are permitted provided that the following conditions are met:
13** * Redistributions of source code must retain the above copyright
14** notice, this list of conditions and the following disclaimer.
15** * Redistributions in binary form must reproduce the above copyright
16** notice, this list of conditions and the following disclaimer in the
17** documentation and/or other materials provided with the distribution.
18** * Neither the name of the <organization> nor the
19** names of its contributors may be used to endorse or promote products
20** derived from this software without specific prior written permission.
21**
22** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
23** ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
24** WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
25** DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
26** DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
27** (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
28** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
29** ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
31** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32**
33**
34** License: GPLv2
35** ===============================================================================
36** This program is free software; you can redistribute it and/or
37** modify it under the terms of the GNU General Public License
38** as published by the Free Software Foundation; either version 2
39** of the License, or (at your option) any later version.
40**
41** This program is distributed in the hope that it will be useful,
42** but WITHOUT ANY WARRANTY; without even the implied warranty of
43** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
44** GNU General Public License for more details.
45**
46** You should have received a copy of the GNU General Public License
47** along with this program; if not, write to the Free Software
48** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
49**
50** ---------------------------------------------------------------------------
51**/
52
53#ifndef DEBUGPRN_H
54# define DEBUGPRN_H
55/***************************************************************************
56* COPYRIGHT: KVASER AB
57* DESIGNED BY: Lasse Kinnunen
58* DESCRIPTION: Debug print macros.
59***************************************************************************/
60
61
62/***************************************************************************
63* INCLUDES
64***************************************************************************/
65#ifndef NDEBUG
66# include <stdio.h>
67# if (defined( __BORLANDC__) || defined(_MSC_VER)) && defined( TIMESTAMPED_DEBUGPRINT)
68# include <time.h>
69# endif
70#endif
71
72
73/***************************************************************************
74* DEFINES
75***************************************************************************/
76#ifndef NDEBUG
77# if (defined( __BORLANDC__) || defined(_MSC_VER)) && defined( TIMESTAMPED_DEBUGPRINT)
78# define POSPRINTF( args) \
79 { \
80 struct tm *time_now; \
81 time_t secs_now; \
82 char timestr[80]; \
83 (void) time( &secs_now); \
84 time_now = localtime( &secs_now); \
85 (void) strftime( timestr, 80, "%y-%m-%d %H:%M.%S", \
86 time_now); \
87 (void) printf( "%s %d, %s: ", \
88 __FILE__, __LINE__, timestr); \
89 } \
90 (void) printf args
91
92# define POSPUTS( str) \
93 { \
94 struct tm *time_now; \
95 time_t secs_now; \
96 char timestr[ 80]; \
97 (void) time( &secs_now); \
98 time_now = localtime( &secs_now); \
99 (void) strftime( timestr, 80, "%y-%m-%d %H:%M.%S", \
100 time_now); \
101 (void) printf( "%s %d, %s: %s\n", \
102 __FILE__, __LINE__, timestr, str); \
103 }
104
105# else
106
107# define POSPRINTF( args) (void) printf( "%s %d: ", \
108 __FILE__, \
109 __LINE__); \
110 (void) printf args
111
112# define POSPUTS( str) (void) printf( "%s %d: %s\n", \
113 __FILE__, \
114 __LINE__, \
115 str)
116
117# endif
118
119# define PRINTF( args) (void) printf args
120# define PUTS( str) (void) puts( str)
121# define PUTCHAR( ch) (void) putchar( ch)
122
123# define TRACEBOX(x) traceBox x
124# define BEEP(freq, duration) Beep((freq), (duration))
125# define MESSAGEBEEP MessageBeep(0xffff)
126extern void traceBox(char *s, ...);
127
128#else
129
130# define POSPRINTF( args)
131# define POSPUTS( str)
132# define PRINTF( args)
133# define PUTS( str)
134# define PUTCHAR( ch)
135
136# define TRACEBOX(x)
137# define BEEP(x, y)
138# define MESSAGEBEEP
139
140#endif
141
142
143/***************************************************************************
144* CONSTANTS
145***************************************************************************/
146// extern const char * stdErrStr;
147
148
149#endif /* #ifndef DEBUGPRN_H */
Note: See TracBrowser for help on using the repository browser.