rosconsole_print.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2013, Open Source Robotics Foundation
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions are met:
7  *
8  * * Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  * * Redistributions in binary form must reproduce the above copyright
11  * notice, this list of conditions and the following disclaimer in the
12  * documentation and/or other materials provided with the distribution.
13  * * Neither the name of the Willow Garage, Inc. nor the names of its
14  * contributors may be used to endorse or promote products derived from
15  * this software without specific prior written permission.
16  *
17  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
21  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27  * POSSIBILITY OF SUCH DAMAGE.
28  */
29 
30 #include "ros/console.h"
31 #define ROSCONSOLE_CONSOLE_IMPL_EXPORTS
32 #include "ros/console_impl.h"
33 
34 namespace ros
35 {
36 namespace console
37 {
38 namespace impl
39 {
40 
42 
43 void initialize()
44 {}
45 
46 void print(void* handle, ::ros::console::Level level, const char* str, const char* file, const char* function, int line)
47 {
48  ::ros::console::backend::print(0, level, str, file, function, line);
49  if(rosconsole_print_appender)
50  {
51  rosconsole_print_appender->log(level, str, file, function, line);
52  }
53 }
54 
55 bool isEnabledFor(void* handle, ::ros::console::Level level)
56 {
57  return level != ::ros::console::levels::Debug;
58 }
59 
60 void* getHandle(const std::string& name)
61 {
62  return 0;
63 }
64 
65 std::string getName(void* handle)
66 {
67  return "";
68 }
69 
70 void register_appender(LogAppender* appender)
71 {
72  rosconsole_print_appender = appender;
73 }
74 
75 void deregister_appender(LogAppender* appender){
76  if(rosconsole_print_appender == appender)
77  {
78  rosconsole_print_appender = 0;
79  }
80 }
81 
82 void shutdown()
83 {}
84 
85 bool get_loggers(std::map<std::string, levels::Level>& loggers)
86 {
87  return true;
88 }
89 
90 bool set_logger_level(const std::string& name, levels::Level level)
91 {
92  return false;
93 }
94 
95 } // namespace impl
96 } // namespace console
97 } // namespace ros
ROSCONSOLE_CONSOLE_IMPL_DECL void print(void *handle, ::ros::console::Level level, const char *str, const char *file, const char *function, int line)
ROSCONSOLE_CONSOLE_IMPL_DECL void shutdown()
ROSCONSOLE_CONSOLE_IMPL_DECL std::string getName(void *handle)
ROSCONSOLE_CONSOLE_IMPL_DECL void register_appender(LogAppender *appender)
ROSCONSOLE_CONSOLE_IMPL_DECL void initialize()
ROSCONSOLE_CONSOLE_IMPL_DECL bool get_loggers(std::map< std::string, levels::Level > &loggers)
LogAppender * rosconsole_print_appender
ROSCONSOLE_CONSOLE_IMPL_DECL bool set_logger_level(const std::string &name, levels::Level level)
ROSCONSOLE_CONSOLE_IMPL_DECL bool isEnabledFor(void *handle, ::ros::console::Level level)
ROSCONSOLE_CONSOLE_IMPL_DECL void deregister_appender(LogAppender *appender)
ROSCONSOLE_CONSOLE_IMPL_DECL void * getHandle(const std::string &name)
void print(ros::console::Level level, const std::string &s)
Definition: example.cpp:38
virtual void log(::ros::console::Level level, const char *str, const char *file, const char *function, int line)=0


rosconsole
Author(s): Josh Faust
autogenerated on Mon Feb 28 2022 23:30:41