fipa_acl  1.4
Namespaces | Classes | Typedefs | Functions | Variables
fipa::acl Namespace Reference

Agent Communication Language. More...

Namespaces

 bitefficient
 
 conversation
 
 default_state
 
 default_transition
 
 envelope
 
 grammar
 
 message
 
 MessageField
 
 representation
 
 validation
 

Classes

class  ACLBaseEnvelope
 The ACLBaseEnvelope defines the layout for an envelope with which ACLMessage data can be wrapped. Multiple ACLBaseEnvelopes are part of the ACLEnvelope in order to implement the basic functionality of the Agent Communication Channel (ACC) More...
 
class  ACLEnvelope
 ACLMessage envelope (also typed as fipa::acl::Letter) includes the base envelope and updated fields, along with the actual payload data that is wrapped by this envelope. More...
 
class  ACLMessage
 This class provides a representation of a message conforming to the FIPA specification SC00061. More...
 
class  AgentID
 Implements the general AgentID functionality, which is present throughout the fipa specifications(FIPA at http://www.fipa.org). Functionality may need to be extended as further modules are implemented Important notice: the probably main field of an AgentID, the actual id, is not yet declared/implemented, as it was not need for the encoding and it was not discussed what should it be. More...
 
struct  AgentIdentifier
 Definition for AgentIdentifier. More...
 
class  AgentIdentifierPrinter
 This class can be used to print the AgentIdentifier. More...
 
class  BitefficientEnvelopeFormat
 
class  BitefficientEnvelopeParser
 
class  BitefficientFormat
 
class  BitefficientMessageFormat
 
class  BitefficientMessageParser
 Allows to parse a bytestream that conforms to the bitefficient representation of FIPA messages to a ACLMessage. More...
 
class  ByteSequence
 Representation of a byte sequence. We also embed information about the encoding. More...
 
class  ByteStringPrinter
 Printer using the visitor pattern for the ByteString type. More...
 
class  ByteStringRawPrinter
 Printer using the visitor pattern for the ByteString type. More...
 
class  Conversation
 
class  ConversationMonitor
 This library provides a statemachine to monitor a message flow based on performatives. The conversation monitor is capable of monitoring the conversation based on the protocol specified in the messages. There are scxml documents specifying how these protocols are defined. Protocols may contain subprotocols, which is partially supported. More...
 
class  ConversationObservable
 
class  ConversationObserver
 
struct  DateTime
 
struct  EmbeddedStateMachine
 An embedded state machine with mappings. More...
 
class  EnvelopeFormat
 
class  EnvelopeGenerator
 
class  EnvelopeParser
 
class  EnvelopeParserImplementation
 
class  FinalState
 
struct  Header
 
struct  Message
 
class  MessageArchive
 
class  MessageFormat
 Abstract class which should be implemented by a specific format to encode an ACLMessage according to the fipa specification (SC00069) More...
 
class  MessageGenerator
 
class  MessageParser
 Allows to parse a bytestream that conforms to the bitefficient representation of FIPA messages to a ACLMessage. More...
 
class  MessageParserImplementation
 
class  MessagePrinter
 Allows printing of a newly constructed fipa::acl::Message. More...
 
struct  NullDeleter
 
class  ReceivedObject
 
class  Role
 
class  RoleMapping
 Mapping between roles and actual agent ids. More...
 
class  SelfRole
 
class  State
 implements a state of the StateMachine class More...
 
class  StateMachine
 
class  StateMachineFactory
 
class  StateMachineReader
 implements a XML parser that generates a state machine from a given spec. file; uses the tinyXML library More...
 
class  StringFormat
 
class  StringMessageFormat
 
class  StringMessageParser
 
struct  Time
 
class  Transition
 
class  UndefinedAgentID
 
class  UndefinedRole
 
class  UndefinedState
 
struct  UserDefinedParameter
 
class  UserdefParam
 overloaded equality operator for UserdefParam class objects More...
 
class  XMLEnvelopeFormat
 
class  XMLEnvelopeParser
 
class  XMLFormat
 
class  XMLMessageFormat
 
class  XMLMessageParser
 
class  XMLParser
 

Typedefs

typedef boost::shared_ptr< ConversationObserverConversationObserverPtr
 
typedef boost::shared_ptr< ConversationObservableConversationObservablePtr
 
typedef std::vector< ConversationObserverPtrConversationObserverList
 
typedef boost::shared_ptr< ConversationConversationPtr
 
typedef std::string RoleId
 
typedef std::string StateId
 
typedef std::string Comments
 
typedef uint32_t PayloadLength
 
typedef std::string PayloadEncoding
 
typedef std::string ACLRepresentation
 
typedef std::string TransportBehaviour
 
typedef std::vector< ReceivedObjectReceivedObjectList
 
typedef std::vector< ACLBaseEnvelopeACLBaseEnvelopeList
 
typedef ACLEnvelope Letter
 Define a letter to be the envelope including the payload. More...
 
typedef std::string ConversationID
 
typedef std::string Protocol
 
typedef std::string ContentLanguage
 
typedef std::vector< AgentIDAgentIDList
 
typedef AgentIDList Resolvers
 
typedef std::vector< std::string > Addresses
 
typedef boost::shared_ptr< EnvelopeFormatEnvelopeFormatPtr
 
typedef boost::shared_ptr< MessageFormatMessageFormatPtr
 
typedef std::string URL
 
typedef std::string ID
 
typedef std::string Via
 
typedef std::string Ontology
 
typedef std::string Language
 
typedef std::string Content
 
typedef std::string Performative
 
typedef std::string Encoding
 
typedef std::string ReplyBy
 
typedef std::string InReplyTo
 
typedef std::string ReplyWith
 
typedef std::vector< UserdefParamUserdefinedParameterList
 
typedef boost::recursive_wrapper< AgentIdentifierResolver
 
typedef boost::variant< std::string, fipa::acl::Resolver, std::vector< fipa::acl::Resolver >, fipa::acl::ByteSequence, fipa::acl::ByteStringUserDefinedParameterValue
 
typedef boost::variant< boost::uint_least8_t, boost::uint_least16_t, boost::uint_least32_t > LengthValue
 Definition of a length - internally used by the parser. More...
 
typedef boost::variant< std::string, std::vector< unsigned char > > ByteString
 Definition of a ByteString. More...
 
typedef boost::shared_ptr< EnvelopeParserImplementationEnvelopeParserImplementationPtr
 
typedef boost::shared_ptr< MessageParserImplementationMessageParserImplementationPtr
 

Functions

template<typename C , typename E >
std::basic_ostream< C, E > & operator<< (std::basic_ostream< C, E > &out, const AgentID &agent)
 
template<typename C , typename E >
std::basic_ostream< C, E > & operator<< (std::basic_ostream< C, E > &out, const AgentIDList &agents)
 

Variables

std::map< ACLMessage::Performative, std::string > PerformativeTxt
 
const std::string illegalWordChars = std::string("() ") + char(0x00)
 
const std::string illegalWordStart = std::string("@#-0123456789")
 

Detailed Description

Agent Communication Language.

Typedef Documentation

◆ ACLBaseEnvelopeList

Definition at line 19 of file acl_envelope.h.

◆ ACLRepresentation

typedef std::string fipa::acl::ACLRepresentation

Definition at line 15 of file acl_envelope.h.

◆ Addresses

typedef std::vector<std::string> fipa::acl::Addresses

Definition at line 28 of file agent_id.h.

◆ AgentIDList

typedef std::vector<AgentID> fipa::acl::AgentIDList

Definition at line 20 of file agent_id.h.

◆ ByteString

typedef boost::variant<std::string, std::vector<unsigned char> > fipa::acl::ByteString

Definition of a ByteString.

Definition at line 20 of file byte_sequence.h.

◆ Comments

typedef std::string fipa::acl::Comments

Definition at line 12 of file acl_envelope.h.

◆ Content

typedef std::string fipa::acl::Content

Definition at line 14 of file types.h.

◆ ContentLanguage

typedef std::string fipa::acl::ContentLanguage

Definition at line 30 of file acl_message.h.

◆ ConversationID

typedef std::string fipa::acl::ConversationID

Definition at line 28 of file acl_message.h.

◆ ConversationObservablePtr

Definition at line 21 of file conversation.h.

◆ ConversationObserverList

Definition at line 22 of file conversation.h.

◆ ConversationObserverPtr

Definition at line 18 of file conversation.h.

◆ ConversationPtr

typedef boost::shared_ptr<Conversation> fipa::acl::ConversationPtr

Definition at line 408 of file conversation.h.

◆ Encoding

typedef std::string fipa::acl::Encoding

Definition at line 18 of file types.h.

◆ EnvelopeFormatPtr

typedef boost::shared_ptr<EnvelopeFormat> fipa::acl::EnvelopeFormatPtr

Definition at line 19 of file envelope_format.h.

◆ EnvelopeParserImplementationPtr

Definition at line 21 of file envelope_parser.h.

◆ ID

typedef std::string fipa::acl::ID

Definition at line 13 of file received_object.h.

◆ InReplyTo

typedef std::string fipa::acl::InReplyTo

Definition at line 20 of file types.h.

◆ Language

typedef std::string fipa::acl::Language

Definition at line 13 of file types.h.

◆ LengthValue

typedef boost::variant<boost::uint_least8_t,boost::uint_least16_t, boost::uint_least32_t> fipa::acl::LengthValue

Definition of a length - internally used by the parser.

Definition at line 15 of file byte_sequence.h.

◆ Letter

Define a letter to be the envelope including the payload.

Definition at line 511 of file acl_envelope.h.

◆ MessageFormatPtr

typedef boost::shared_ptr<MessageFormat> fipa::acl::MessageFormatPtr

Definition at line 13 of file message_generator.h.

◆ MessageParserImplementationPtr

Definition at line 19 of file message_parser.h.

◆ Ontology

typedef std::string fipa::acl::Ontology

Typedefinition for generic fiedls of a fipa message

Definition at line 12 of file types.h.

◆ PayloadEncoding

typedef std::string fipa::acl::PayloadEncoding

Definition at line 14 of file acl_envelope.h.

◆ PayloadLength

typedef uint32_t fipa::acl::PayloadLength

Definition at line 13 of file acl_envelope.h.

◆ Performative

typedef std::string fipa::acl::Performative

Definition at line 16 of file types.h.

◆ Protocol

typedef std::string fipa::acl::Protocol

Definition at line 29 of file acl_message.h.

◆ ReceivedObjectList

Definition at line 17 of file acl_envelope.h.

◆ ReplyBy

typedef std::string fipa::acl::ReplyBy

Definition at line 19 of file types.h.

◆ ReplyWith

typedef std::string fipa::acl::ReplyWith

Definition at line 21 of file types.h.

◆ Resolver

typedef boost::recursive_wrapper<AgentIdentifier> fipa::acl::Resolver

Definition at line 15 of file agent_id.h.

◆ Resolvers

Definition at line 27 of file agent_id.h.

◆ RoleId

typedef std::string fipa::acl::RoleId

Definition at line 11 of file role.h.

◆ StateId

typedef std::string fipa::acl::StateId

Definition of a StateId

Definition at line 35 of file state.h.

◆ TransportBehaviour

typedef std::string fipa::acl::TransportBehaviour

Definition at line 16 of file acl_envelope.h.

◆ URL

typedef std::string fipa::acl::URL

Definition at line 12 of file received_object.h.

◆ UserdefinedParameterList

Definition at line 94 of file userdef_param.h.

◆ UserDefinedParameterValue

Definition at line 19 of file agent_id.h.

◆ Via

typedef std::string fipa::acl::Via

Definition at line 14 of file received_object.h.

Function Documentation

◆ operator<<() [1/2]

template<typename C , typename E >
std::basic_ostream<C, E>& fipa::acl::operator<< ( std::basic_ostream< C, E > &  out,
const AgentID agent 
)

Definition at line 201 of file agent_id.h.

202 {
203  out << "AgentID<" << agent.getName() << ">";
204  return out;
205 }

◆ operator<<() [2/2]

template<typename C , typename E >
std::basic_ostream<C, E>& fipa::acl::operator<< ( std::basic_ostream< C, E > &  out,
const AgentIDList agents 
)

Definition at line 208 of file agent_id.h.

209 {
210  AgentIDList::const_iterator cit = agents.begin();
211  out << "[";
212  for(; cit != agents.end(); ++cit)
213  {
214  out << *cit;
215  }
216  out << "]";
217  return out;
218 }

Variable Documentation

◆ illegalWordChars

const std::string fipa::acl::illegalWordChars = std::string("() ") + char(0x00)
Parameters
illegalWordCharsstring containing illegal characters according to the fipa definition of a word

Definition at line 39 of file acl_message.cpp.

◆ illegalWordStart

const std::string fipa::acl::illegalWordStart = std::string("@#-0123456789")
Parameters
illegalWordStartstring containing illegal first characters according to the fipa definition of a word

Definition at line 40 of file acl_message.cpp.

◆ PerformativeTxt

std::map< ACLMessage::Performative, std::string > fipa::acl::PerformativeTxt
Initial value:
= boost::assign::map_list_of
(ACLMessage::ACCEPT_PROPOSAL, "accept-proposal")
(ACLMessage::AGREE, "agree")
(ACLMessage::CANCEL, "cancel")
(ACLMessage::CALL_FOR_PROPOSAL, "cfp")
(ACLMessage::CONFIRM, "confirm")
(ACLMessage::DISCONFIRM, "disconfirm")
(ACLMessage::FAILURE, "failure")
(ACLMessage::INFORM, "inform")
(ACLMessage::INFORM_IF, "inform-if")
(ACLMessage::INFORM_REF, "inform-ref")
(ACLMessage::NOT_UNDERSTOOD, "not-understood")
(ACLMessage::PROPAGATE, "propagate")
(ACLMessage::PROPOSE, "propose")
(ACLMessage::PROXY, "proxy")
(ACLMessage::QUERY_IF, "query-if")
(ACLMessage::QUERY_REF, "query-ref")
(ACLMessage::REFUSE, "refuse")
(ACLMessage::REJECT_PROPOSAL, "reject-proposal")
(ACLMessage::REQUEST, "request")
(ACLMessage::REQUEST_WHEN, "request-when")
(ACLMessage::REQUEST_WHENEVER, "request-whenever")
(ACLMessage::SUBSCRIBE, "subscribe")

Definition at line 15 of file acl_message.cpp.