fipa_acl  1.4
agent_id.h
Go to the documentation of this file.
1 #ifndef __FIPAACL_MESSAGEPARSER_AGENTID_H_
2 #define __FIPAACL_MESSAGEPARSER_AGENTID_H_
3 
4 #include <vector>
5 #include <string>
6 
7 #include <boost/variant/recursive_variant.hpp>
8 #include <boost/variant/apply_visitor.hpp>
9 
10 #include <fipa_acl/message_parser/byte_sequence.h>
11 
12 namespace fipa { namespace acl {
13 
14 // AgentIdentifier needs Resolvers, since AgentIdentifier is recursive
16 typedef boost::recursive_wrapper<AgentIdentifier> Resolver;
17 
18 // To avoid dealing with circular dependecies we use a 'similar' definition to ParameterValue
19 typedef boost::variant<std::string, fipa::acl::Resolver, std::vector<fipa::acl::Resolver>, fipa::acl::ByteSequence, fipa::acl::ByteString > UserDefinedParameterValue;
20 
22 {
23  std::string name;
25 };
26 
31 {
32  std::string name;
33  std::vector<std::string> addresses;
34  std::vector<fipa::acl::Resolver> resolvers;
35  std::vector<fipa::acl::UserDefinedParameter> parameters;
36 };
37 
42 {
43 
44 public:
47 
52  void print(const fipa::acl::AgentIdentifier& aid);
53 
54 };
55 
56 }} // namespace fipa::acl
57 #endif
58 
boost::recursive_wrapper< AgentIdentifier > Resolver
Definition: agent_id.h:15
phoenix::function< printImpl > print
std::vector< std::string > addresses
Definition: agent_id.h:33
Representation of a byte sequence. We also embed information about the encoding.
boost::variant< std::string, std::vector< unsigned char > > ByteString
Definition of a ByteString.
Definition: byte_sequence.h:20
This class can be used to print the AgentIdentifier.
Definition: agent_id.h:41
boost::variant< std::string, fipa::acl::Resolver, std::vector< fipa::acl::Resolver >, fipa::acl::ByteSequence, fipa::acl::ByteString > UserDefinedParameterValue
Definition: agent_id.h:19
fipa::acl::UserDefinedParameterValue data
Definition: agent_id.h:24
Definition for AgentIdentifier.
Definition: agent_id.h:30
std::vector< fipa::acl::UserDefinedParameter > parameters
Definition: agent_id.h:35
std::vector< fipa::acl::Resolver > resolvers
Definition: agent_id.h:34
Foundation of Physical Intelligent Agents.
Definition: conversation.cpp:6