libqi-api  2.1.4.13
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
headfileloghandler.hpp
Go to the documentation of this file.
1 #pragma once
2 /*
3  * Copyright (c) 2012 Aldebaran Robotics. All rights reserved.
4  * Use of this source code is governed by a BSD-style license that can be
5  * found in the COPYING file.
6  */
7 
8 #ifndef _QI_LOG_HEADFILELOGHANDLER_HPP_
9 #define _QI_LOG_HEADFILELOGHANDLER_HPP_
10 
11 # include <boost/noncopyable.hpp>
12 # include <qi/log.hpp>
13 # include <string>
14 
15 namespace qi {
16  namespace log {
17  class PrivateHeadFileLogHandler;
18 
20  class QI_API HeadFileLogHandler : private boost::noncopyable
21  {
22  public:
25  HeadFileLogHandler(const std::string &filePath,
26  int length = 2000);
28  virtual ~HeadFileLogHandler();
29 
32  void log(const qi::LogLevel verb,
33  const qi::os::timeval date,
34  const char *category,
35  const char *msg,
36  const char *file,
37  const char *fct,
38  const int line);
39 
40  private:
41  PrivateHeadFileLogHandler* _p;
42  }; // !HeadFileLogHandler
43 
44  }; // !log
45 }; // !qi
46 
47 #endif // _QI_LOG_HEADFILELOGHANDLER_HPP_
Log the first length lines to a file.
void log(const qi::LogLevel verb, const char *category, const char *msg, const char *file="", const char *fct="", const int line=0)
Log function. You should call qiLog* macros instead.
LogLevel
Log level verbosity.
Definition: log.hpp:84
Convenient log macro.
#define QI_API
Definition: api.hpp:24