Fawkes API  Fawkes Development Version
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
webview_reqproc.h
1 
2 /***************************************************************************
3  * webview_reqproc.h - Webview ROS request processor
4  *
5  * Created: Fri May 06 17:23:14 2011
6  * Copyright 2006-2011 Tim Niemueller [www.niemueller.de]
7  *
8  ****************************************************************************/
9 
10 /* This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU Library General Public License for more details.
19  *
20  * Read the full text in the LICENSE.GPL file in the doc directory.
21  */
22 
23 #ifndef __PLUGINS_ROS_WEBVIEW_REQPROC_H_
24 #define __PLUGINS_ROS_WEBVIEW_REQPROC_H_
25 
26 #include <webview/request_processor.h>
27 
28 #include <core/utils/lockptr.h>
29 #include <ros/ros.h>
30 #include <string>
31 
32 namespace fawkes {
33  class Logger;
34 }
35 
38 {
39  public:
41  fawkes::Logger *logger,
42  std::string &baseurl, std::string &srv_name);
44 
45  virtual fawkes::WebReply * process_request(const char *url,
46  const char *method,
47  const char *version,
48  const char *upload_data,
49  size_t *upload_data_size,
50  void **session_data);
51  private:
52  fawkes::Logger *logger;
53  std::string __logcomp;
54 
55  std::string __baseurl;
56  std::string __srv_name;
57  ros::ServiceClient __srv_client;
58 };
59 
60 
61 #endif