iLab Neuromorphic Robotics Toolkit  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TermColor.H
Go to the documentation of this file.
1 /*! @file
2  @author
3  @copyright GNU Public License (GPL v3)
4  @section License
5  @verbatim
6  // ////////////////////////////////////////////////////////////////////////
7  // The iLab Neuromorphic Robotics Toolkit (NRT) //
8  // Copyright 2010-2012 by the University of Southern California (USC) //
9  // and the iLab at USC. //
10  // //
11  // iLab - University of Southern California //
12  // Hedco Neurociences Building, Room HNB-10 //
13  // Los Angeles, Ca 90089-2520 - USA //
14  // //
15  // See http://ilab.usc.edu for information about this project. //
16  // ////////////////////////////////////////////////////////////////////////
17  // This file is part of The iLab Neuromorphic Robotics Toolkit. //
18  // //
19  // The iLab Neuromorphic Robotics Toolkit is free software: you can //
20  // redistribute it and/or modify it under the terms of the GNU General //
21  // Public License as published by the Free Software Foundation, either //
22  // version 3 of the License, or (at your option) any later version. //
23  // //
24  // The iLab Neuromorphic Robotics Toolkit is distributed in the hope //
25  // that it will be useful, but WITHOUT ANY WARRANTY; without even the //
26  // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR //
27  // PURPOSE. See the GNU General Public License for more details. //
28  // //
29  // You should have received a copy of the GNU General Public License //
30  // along with The iLab Neuromorphic Robotics Toolkit. If not, see //
31  // <http://www.gnu.org/licenses/>. //
32  // ////////////////////////////////////////////////////////////////////////
33  @endverbatim */
34 
35 #ifndef INCLUDE_NRT_CORE_DEBUGGING_DETAILS_TERMCOLOR_H
36 #define INCLUDE_NRT_CORE_DEBUGGING_DETAILS_TERMCOLOR_H
37 
38 #include <iostream>
39 
40 namespace nrt
41 {
42 
43 #if defined(__linux__) || defined(__NRT_APPLE__)
44  // Color definitions for VT100 compatible terminal.
45 #define NRT_TERM_BLACK "30"
46 #define NRT_TERM_RED "31"
47 #define NRT_TERM_GREEN "32"
48 #define NRT_TERM_YELLOW "33"
49 #define NRT_TERM_BLUE "34"
50 #define NRT_TERM_MAGENTA "35"
51 #define NRT_TERM_CYAN "36"
52 #define NRT_TERM_WHITE "37"
53 #define NRT_TERM_DEFAULT "39"
54 
55 #define NRT_SET_TERM_COLOR(color) "\33[" << color << "m"
56 #define NRT_RESET_TERM_COLOR() "\33[0m"
57 
58 #else
59  // Default color definitions for colors does nothing
60 #define NRT_TERM_BLACK 0
61 #define NRT_TERM_RED 0
62 #define NRT_TERM_GREEN 0
63 #define NRT_TERM_YELLOW 0
64 #define NRT_TERM_BLUE 0
65 #define NRT_TERM_MAGENTA 0
66 #define NRT_TERM_CYAN 0
67 #define NRT_TERM_WHITE 0
68 #define NRT_TERM_DEFAULT 0
69 
70 #define NRT_SET_TERM_COLOR(fg) ""
71 #define NRT_RESET_TERM_COLOR() ""
72 #endif
73 
74 } // namespace nrt
75 
76 #endif // INCLUDE_NRT_CORE_DEBUGGING_DETAILS_TERMCOLOR_H