libqi-api  2.8.7.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
clientauthenticator.hpp
Go to the documentation of this file.
1 #pragma once
2 /*
3 ** Copyright (C) 2014 Aldebaran Robotics
4 ** See COPYING for the license
5 */
6 
7 #ifndef _QI_MESSAGING_CLIENTAUTHENTICATOR_HPP_
8 #define _QI_MESSAGING_CLIENTAUTHENTICATOR_HPP_
9 
10 #include <boost/shared_ptr.hpp>
11 
12 #include <qi/api.hpp>
13 #include <qi/anyvalue.hpp>
14 
15 namespace qi
16 {
17 using CapabilityMap = std::map<std::string, AnyValue>;
18 
20 {
21 public:
23  {
24  }
25 
26  virtual CapabilityMap initialAuthData();
27  CapabilityMap processAuth(const CapabilityMap& authData);
28 
29 protected:
39  virtual CapabilityMap _processAuth(const CapabilityMap& authData)
40  {
41  return CapabilityMap();
42  }
43 };
44 
45 using ClientAuthenticatorPtr = boost::shared_ptr<ClientAuthenticator>;
46 }
47 
48 #endif
#define QI_API
Definition: api.hpp:33
dll import/export and compiler message
boost::shared_ptr< ClientAuthenticator > ClientAuthenticatorPtr
std::map< std::string, AnyValue > CapabilityMap
virtual CapabilityMap _processAuth(const CapabilityMap &authData)
processAuth Processes an authentication message client side. This can be used to process a challenge ...