source: trunk/IPs/systemC/processor/Morpheo/Common/include/Message.h @ 88

Last change on this file since 88 was 88, checked in by rosiere, 16 years ago

Almost complete design
with Test and test platform

  • Property svn:keywords set to Id
File size: 2.4 KB
Line 
1#ifndef Morpheo_Message_h
2#define Morpheo_Message_h
3/*
4 * $Id: Message.h 88 2008-12-10 18:31:39Z rosiere $
5 *
6 * [ Description ]
7 *
8 * Routine of Test
9 */
10
11#include <stdio.h>
12#include <string.h>
13#include "Translation.h"
14
15namespace morpheo {
16
17  // Color
18  // 31 : rouge
19  // 32 : vert
20  // 33 : jaune
21  // 34 : bleu
22  // 35 : rose
23  // 36 : cyan
24  // 37 : blanc
25  // 38 : noir souligne
26  // 39 : noir
27
28#  define MSG_NONE          _("             ")
29#ifdef PRINT_COLOR
30#  define MSG_DEBUG         _("[1;34m[   DEBUG   ][0m")
31#  define MSG_ERROR         _("[1;31m[   ERROR   ][0m")
32#  define MSG_WARNING       _("[1;35m[  WARNING  ][0m")
33#  define MSG_INFORMATION   _("[1;32m[INFORMATION][0m")
34#  define MSG_BREAKPOINT    _("[1;38m[   BREAK   ][0m")
35#else
36#  define MSG_DEBUG         _("[   DEBUG   ]")
37#  define MSG_ERROR         _("[   ERROR   ]")
38#  define MSG_WARNING       _("[  WARNING  ]")
39#  define MSG_INFORMATION   _("[INFORMATION]")
40#  define MSG_BREAKPOINT    _("[   BREAK   ]")
41#endif
42
43#ifdef LOG_FILE
44extern FILE * log_stream;
45void log_init (void);
46
47#define fmsg(stream,arg...)                     \
48  do                                            \
49    {                                           \
50      log_init();                               \
51      fprintf(log_stream,arg);                  \
52      fflush(log_stream);                       \
53    } while (0)
54
55#else
56
57#define fmsg(stream,arg...)                     \
58  do                                            \
59    {                                           \
60      fprintf(stream,arg);                      \
61      fflush(stream);                           \
62    } while (0)
63
64#endif
65
66#define fmsgDebug(stream,arg...)                \
67  do                                            \
68    {                                           \
69      fmsg(stream,"%s ",MSG_DEBUG);             \
70      fmsg(stream,arg);                         \
71    } while (0)
72
73#define fmsgError(stream,arg...)                \
74  do                                            \
75    {                                           \
76      fmsg(stream,"%s ",MSG_ERROR);             \
77      fmsg(stream,arg);                         \
78    } while (0)
79
80#define fmsgWarning(stream,arg...)              \
81  do                                            \
82    {                                           \
83      fmsg(stream,"%s ",MSG_WARNING);           \
84      fmsg(stream,arg);                         \
85    } while (0)
86
87#define fmsgInformation(stream,arg...)          \
88  do                                            \
89    {                                           \
90      fmsg(stream,"%s ",MSG_INFORMATION);       \
91      fmsg(stream,arg);                         \
92    } while (0)
93
94#define msg(arg...)             fmsg(stdout,arg)
95#define msgDebug(arg...)        fmsgDebug(stdout,arg)
96#define msgError(arg...)        fmsgError(stdout,arg)
97#define msgWarning(arg...)      fmsgWarning(stdout,arg)
98#define msgInformation(arg...)  fmsgInformation(stdout,arg)
99#define err(arg...)             fmsgError(stderr,arg)
100
101}; // end namespace morpheo
102#endif
Note: See TracBrowser for help on using the repository browser.