$search
00001 #ifndef LOGGINGSERVICE_HPP 00002 #define LOGGINGSERVICE_HPP 1 00003 00004 #include <rtt/TaskContext.hpp> 00005 #include <rtt/PropertyBag.hpp> 00006 #include <rtt/Operation.hpp> 00007 00008 namespace OCL { 00009 namespace logging { 00010 00011 class LoggingService : public RTT::TaskContext 00012 { 00013 public: 00014 LoggingService(std::string name); 00015 virtual ~LoggingService(); 00016 00017 virtual bool configureHook(); 00018 00019 /* \todo 00020 00021 configuration of this component 00022 - specify category for this component to log to 00023 - specify priority of logging of this component 00024 00025 services for other components 00026 - method to set priority of any category 00027 - method to get priority of any category 00028 - method to log to a category 00029 */ 00030 00031 protected: 00032 // list of all category levels 00033 RTT::Property<RTT::PropertyBag> levels_prop; 00034 // list of appenders per category 00035 RTT::Property<RTT::PropertyBag> appenders_prop; 00039 RTT::Operation<void(void)> logCategories_mtd; 00040 void logCategories(); 00041 }; 00042 00043 // namespaces 00044 } 00045 } 00046 00047 #endif