fipa_acl  1.4
Public Member Functions | Public Attributes | List of all members
fipa::acl::bitefficient::Envelope< Iterator > Struct Template Reference

#include <grammar_bitefficient_envelope.h>

Inherits grammar< Iterator, fipa::acl::ACLEnvelope()>.

Public Member Functions

 Envelope ()
 

Public Attributes

qi::rule< Iterator, fipa::acl::ACLBaseEnvelope() > predefinedParameter
 
qi::rule< Iterator, fipa::acl::UserdefinedParameterList() > customParameterList
 
qi::rule< Iterator, fipa::acl::ACLEnvelope()> message_envelope_rule
 
qi::rule< Iterator, fipa::acl::ACLBaseEnvelope(), qi::locals< fipa::acl::ACLBaseEnvelope > > extEnvelope
 
qi::rule< Iterator, fipa::acl::ACLBaseEnvelope()> extEnvelopeHeader
 
qi::rule< Iterator, fipa::acl::ACLBaseEnvelope()> baseEnvelopeHeader
 
qi::rule< Iterator, fipa::acl::ACLBaseEnvelope(), qi::locals< fipa::acl::ACLBaseEnvelope > > baseEnvelope
 
qi::rule< Iterator, fipa::acl::ACLBaseEnvelope()> parameter
 
EndOfCollection< Iterator > endOfEnvelope
 
EndOfCollection< Iterator > endOfCollection
 
ReceivedObject< Iterator > receivedObject
 
BinDateTime< Iterator > date
 
qi::rule< Iterator, fipa::acl::UserdefParam()> userDefinedMessageParameter
 
qi::rule< Iterator, std::string()> parameterName
 
qi::rule< Iterator, std::string()> parameterValue
 
NullTerminatedString< Iterator > comments
 
BinNumber< Iterator > payloadLength
 
NullTerminatedString< Iterator > payloadEncoding
 
Any< Iterator > transportBehaviour
 
qi::rule< Iterator, boost::uint_least32_t()> envLen
 
Len16< Iterator > len16
 
Len32< Iterator > len32
 
qi::rule< Iterator, boost::uint_least32_t()> jumboEnvelope
 
qi::rule< Iterator, std::string()> aclRepresentation
 
qi::rule< Iterator, std::string()> userDefinedACLRepresentation
 
NullTerminatedString< Iterator > nullTerminatedString
 
NullTerminatedString< Iterator > keyword
 
qi::rule< Iterator > baseMsgId
 
qi::rule< Iterator > extMsgId
 
BinExpression< Iterator > binExpression
 
Url< Iterator > url
 
EnvelopeAgentIdentifier< Iterator > agentIdentifier
 
qi::rule< Iterator, std::vector< fipa::acl::AgentID >) > agentIdentifierSequence
 
qi::rule< Iterator, std::vector< fipa::acl::AgentID >) > intendedReceiver
 
qi::rule< Iterator, fipa::acl::UserDefinedParameter() > userDefinedParameter
 
qi::rule< Iterator, std::string() > payload
 

Detailed Description

template<typename Iterator>
struct fipa::acl::bitefficient::Envelope< Iterator >

Definition at line 199 of file grammar_bitefficient_envelope.h.

Constructor & Destructor Documentation

◆ Envelope()

template<typename Iterator >
fipa::acl::bitefficient::Envelope< Iterator >::Envelope ( )
inline

Definition at line 201 of file grammar_bitefficient_envelope.h.

201  : Envelope::base_type(message_envelope_rule, "Envelope-bitefficient_grammar")
202  {
203  using qi::byte_;
204  namespace label = qi::labels;
205 
206  message_envelope_rule = *extEnvelope [ phoenix::at_c<1>(label::_val) = label::_1 ]
207  >> baseEnvelope [ phoenix::at_c<0>(label::_val) = label::_1 ]
208  >> payload [ phoenix::at_c<2>(label::_val) = label::_1]
209 
210  ;
211 
212  baseEnvelope = baseEnvelopeHeader [ label::_a = label::_1 ]
213  >> *parameter [ label::_a = mergeBaseEnvelope(label::_a, label::_1)]
214  >> endOfEnvelope [ label::_val = label::_a ]
215  ;
216 
217  extEnvelope = extEnvelopeHeader [ label::_a = label::_1 ]
218  >> *parameter [ label::_a = mergeBaseEnvelope(label::_a, label::_1)]
219  >> endOfEnvelope [ label::_val = label::_a ]
220  ;
221 
223  >> envLen [ phoenix::at_c<4>(label::_val) = label::_1 ]
224  >> aclRepresentation [ phoenix::at_c<2>(label::_val) = label::_1 ]
225  >> date [ phoenix::at_c<6>(label::_val) = convertToBaseTime(label::_1) ]
226  ;
227 
229  >> envLen [ phoenix::at_c<4>(label::_val) = label::_1 ]
230  >> receivedObject [ phoenix::at_c<8>(label::_val) = label::_1 ]
231  ;
232 
234 
235  jumboEnvelope = byte_(0x00) >> byte_(0x00)
236  >> len32 [ label::_val = label::_1 ]
237  ;
238 
239  baseMsgId = byte_(0xfe) [ label::_val = 0xfe ];
240  extMsgId = byte_(0xfd) [ label::_val = 0xfd ];
241 
242  agentIdentifierSequence = *agentIdentifier [ phoenix::push_back(label::_val, label::_1) ]
243  >> endOfCollection
244  ;
245 
246  parameter = predefinedParameter [ label::_val = label::_1 ]
247  | customParameterList [ phoenix::at_c<10>(label::_val) = label::_1 ]
248  ;
249 
250  // only synthesize attribute is a list to facilitate adding to BaseEnvelope
251  customParameterList = userDefinedMessageParameter [ phoenix::push_back(label::_val, label::_1) ]
252  ;
253 
254  userDefinedMessageParameter = byte_(0x00)
255  >> parameterName [ phoenix::at_c<0>(label::_val) = label::_1 ]
256  >> parameterValue [ phoenix::at_c<1>(label::_val) = label::_1 ]
257  ;
258 
259  predefinedParameter = byte_(0x02) >> agentIdentifierSequence [ phoenix::at_c<0>(label::_val) = label::_1 ]
260  | byte_(0x03) >> agentIdentifier [ phoenix::at_c<1>(label::_val) = label::_1 ]
261  | byte_(0x04) >> aclRepresentation [ phoenix::at_c<2>(label::_val) = label::_1 ]
262  | byte_(0x05) >> comments [ phoenix::at_c<3>(label::_val) = convertToString(label::_1) ]
263  | byte_(0x06) >> payloadLength [ phoenix::at_c<4>(label::_val) = convertStringToNumber(label::_1) ]
264  | byte_(0x07) >> payloadEncoding [ phoenix::at_c<5>(label::_val) = convertToString(label::_1) ]
265  // // date is not set here
266  | byte_(0x09) >> intendedReceiver [ phoenix::at_c<7>(label::_val) = label::_1 ]
267  | byte_(0x0a) >> receivedObject [ phoenix::at_c<8>(label::_val) = label::_1 ]
268  | byte_(0x0b) >> transportBehaviour [ phoenix::at_c<9>(label::_val) = label::_1 ]
269  ;
270 
272  | byte_(0x10) [ label::_val = representation::TypeTxt[representation::BITEFFICIENT] ] // [FIPA00069]
273  | byte_(0x11) [ label::_val = representation::TypeTxt[representation::STRING_REP] ]// [FIPA00070]
274  | byte_(0x12) [ label::_val = representation::TypeTxt[representation::XML] ] // [FIPA00071]
275  ;
276 
278 
279  userDefinedACLRepresentation = byte_(0x00)
280  >> nullTerminatedString [ label::_val = convertToString(label::_1) ];
281 
282  payload = *byte_ [ label::_val += label::_1 ];
283 
284  //FIPA_DEBUG_RULE(date);
285  }
qi::rule< Iterator, fipa::acl::ACLBaseEnvelope()> extEnvelopeHeader
qi::rule< Iterator, fipa::acl::ACLBaseEnvelope(), qi::locals< fipa::acl::ACLBaseEnvelope > > extEnvelope
qi::rule< Iterator, boost::uint_least32_t()> jumboEnvelope
qi::rule< Iterator, fipa::acl::ACLBaseEnvelope()> baseEnvelopeHeader
NullTerminatedString< Iterator > comments
qi::rule< Iterator, fipa::acl::ACLEnvelope()> message_envelope_rule
qi::rule< Iterator, std::string() > payload
phoenix::function< convertStringToNumberImpl > convertStringToNumber
phoenix::function< convertToStringImpl > convertToString
qi::rule< Iterator, std::string()> parameterValue
qi::rule< Iterator, std::string()> userDefinedACLRepresentation
qi::rule< Iterator, std::vector< fipa::acl::AgentID >) > intendedReceiver
qi::rule< Iterator, fipa::acl::ACLBaseEnvelope() > predefinedParameter
const std::string TypeTxt[]
Definition: types.h:28
qi::rule< Iterator, std::string()> parameterName
qi::rule< Iterator, boost::uint_least32_t()> envLen
qi::rule< Iterator, std::vector< fipa::acl::AgentID >) > agentIdentifierSequence
phoenix::function< mergeBaseEnvelopeImpl > mergeBaseEnvelope
qi::rule< Iterator, fipa::acl::UserdefinedParameterList() > customParameterList
phoenix::function< convertToBaseTimeImpl > convertToBaseTime
qi::rule< Iterator, std::string()> aclRepresentation
NullTerminatedString< Iterator > nullTerminatedString
qi::rule< Iterator, fipa::acl::UserdefParam()> userDefinedMessageParameter
EnvelopeAgentIdentifier< Iterator > agentIdentifier
qi::rule< Iterator, fipa::acl::ACLBaseEnvelope()> parameter
NullTerminatedString< Iterator > payloadEncoding
qi::rule< Iterator, fipa::acl::ACLBaseEnvelope(), qi::locals< fipa::acl::ACLBaseEnvelope > > baseEnvelope

Member Data Documentation

◆ aclRepresentation

template<typename Iterator >
qi::rule<Iterator, std::string()> fipa::acl::bitefficient::Envelope< Iterator >::aclRepresentation

Definition at line 317 of file grammar_bitefficient_envelope.h.

◆ agentIdentifier

template<typename Iterator >
EnvelopeAgentIdentifier<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::agentIdentifier

Definition at line 328 of file grammar_bitefficient_envelope.h.

◆ agentIdentifierSequence

template<typename Iterator >
qi::rule<Iterator, std::vector<fipa::acl::AgentID>) > fipa::acl::bitefficient::Envelope< Iterator >::agentIdentifierSequence

Definition at line 329 of file grammar_bitefficient_envelope.h.

◆ baseEnvelope

template<typename Iterator >
qi::rule<Iterator, fipa::acl::ACLBaseEnvelope(), qi::locals<fipa::acl::ACLBaseEnvelope> > fipa::acl::bitefficient::Envelope< Iterator >::baseEnvelope

Definition at line 295 of file grammar_bitefficient_envelope.h.

◆ baseEnvelopeHeader

template<typename Iterator >
qi::rule<Iterator, fipa::acl::ACLBaseEnvelope()> fipa::acl::bitefficient::Envelope< Iterator >::baseEnvelopeHeader

Definition at line 294 of file grammar_bitefficient_envelope.h.

◆ baseMsgId

template<typename Iterator >
qi::rule<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::baseMsgId

Definition at line 323 of file grammar_bitefficient_envelope.h.

◆ binExpression

template<typename Iterator >
BinExpression<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::binExpression

Definition at line 325 of file grammar_bitefficient_envelope.h.

◆ comments

template<typename Iterator >
NullTerminatedString<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::comments

Definition at line 307 of file grammar_bitefficient_envelope.h.

◆ customParameterList

template<typename Iterator >
qi::rule<Iterator, fipa::acl::UserdefinedParameterList() > fipa::acl::bitefficient::Envelope< Iterator >::customParameterList

Definition at line 289 of file grammar_bitefficient_envelope.h.

◆ date

template<typename Iterator >
BinDateTime<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::date

Definition at line 301 of file grammar_bitefficient_envelope.h.

◆ endOfCollection

template<typename Iterator >
EndOfCollection<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::endOfCollection

Definition at line 298 of file grammar_bitefficient_envelope.h.

◆ endOfEnvelope

template<typename Iterator >
EndOfCollection<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::endOfEnvelope

Definition at line 297 of file grammar_bitefficient_envelope.h.

◆ envLen

template<typename Iterator >
qi::rule<Iterator, boost::uint_least32_t()> fipa::acl::bitefficient::Envelope< Iterator >::envLen

Definition at line 312 of file grammar_bitefficient_envelope.h.

◆ extEnvelope

template<typename Iterator >
qi::rule<Iterator, fipa::acl::ACLBaseEnvelope(), qi::locals<fipa::acl::ACLBaseEnvelope> > fipa::acl::bitefficient::Envelope< Iterator >::extEnvelope

Definition at line 292 of file grammar_bitefficient_envelope.h.

◆ extEnvelopeHeader

template<typename Iterator >
qi::rule<Iterator, fipa::acl::ACLBaseEnvelope()> fipa::acl::bitefficient::Envelope< Iterator >::extEnvelopeHeader

Definition at line 293 of file grammar_bitefficient_envelope.h.

◆ extMsgId

template<typename Iterator >
qi::rule<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::extMsgId

Definition at line 324 of file grammar_bitefficient_envelope.h.

◆ intendedReceiver

template<typename Iterator >
qi::rule<Iterator, std::vector<fipa::acl::AgentID>) > fipa::acl::bitefficient::Envelope< Iterator >::intendedReceiver

Definition at line 330 of file grammar_bitefficient_envelope.h.

◆ jumboEnvelope

template<typename Iterator >
qi::rule<Iterator, boost::uint_least32_t()> fipa::acl::bitefficient::Envelope< Iterator >::jumboEnvelope

Definition at line 315 of file grammar_bitefficient_envelope.h.

◆ keyword

template<typename Iterator >
NullTerminatedString<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::keyword

Definition at line 321 of file grammar_bitefficient_envelope.h.

◆ len16

template<typename Iterator >
Len16<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::len16

Definition at line 313 of file grammar_bitefficient_envelope.h.

◆ len32

template<typename Iterator >
Len32<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::len32

Definition at line 314 of file grammar_bitefficient_envelope.h.

◆ message_envelope_rule

template<typename Iterator >
qi::rule<Iterator, fipa::acl::ACLEnvelope()> fipa::acl::bitefficient::Envelope< Iterator >::message_envelope_rule

Definition at line 291 of file grammar_bitefficient_envelope.h.

◆ nullTerminatedString

template<typename Iterator >
NullTerminatedString<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::nullTerminatedString

Definition at line 320 of file grammar_bitefficient_envelope.h.

◆ parameter

template<typename Iterator >
qi::rule<Iterator, fipa::acl::ACLBaseEnvelope()> fipa::acl::bitefficient::Envelope< Iterator >::parameter

Definition at line 296 of file grammar_bitefficient_envelope.h.

◆ parameterName

template<typename Iterator >
qi::rule<Iterator, std::string()> fipa::acl::bitefficient::Envelope< Iterator >::parameterName

Definition at line 304 of file grammar_bitefficient_envelope.h.

◆ parameterValue

template<typename Iterator >
qi::rule<Iterator, std::string()> fipa::acl::bitefficient::Envelope< Iterator >::parameterValue

Definition at line 305 of file grammar_bitefficient_envelope.h.

◆ payload

template<typename Iterator >
qi::rule<Iterator, std::string() > fipa::acl::bitefficient::Envelope< Iterator >::payload

Definition at line 333 of file grammar_bitefficient_envelope.h.

◆ payloadEncoding

template<typename Iterator >
NullTerminatedString<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::payloadEncoding

Definition at line 309 of file grammar_bitefficient_envelope.h.

◆ payloadLength

template<typename Iterator >
BinNumber<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::payloadLength

Definition at line 308 of file grammar_bitefficient_envelope.h.

◆ predefinedParameter

template<typename Iterator >
qi::rule<Iterator, fipa::acl::ACLBaseEnvelope() > fipa::acl::bitefficient::Envelope< Iterator >::predefinedParameter

Definition at line 288 of file grammar_bitefficient_envelope.h.

◆ receivedObject

template<typename Iterator >
ReceivedObject<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::receivedObject

Definition at line 300 of file grammar_bitefficient_envelope.h.

◆ transportBehaviour

template<typename Iterator >
Any<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::transportBehaviour

Definition at line 310 of file grammar_bitefficient_envelope.h.

◆ url

template<typename Iterator >
Url<Iterator> fipa::acl::bitefficient::Envelope< Iterator >::url

Definition at line 326 of file grammar_bitefficient_envelope.h.

◆ userDefinedACLRepresentation

template<typename Iterator >
qi::rule<Iterator, std::string()> fipa::acl::bitefficient::Envelope< Iterator >::userDefinedACLRepresentation

Definition at line 318 of file grammar_bitefficient_envelope.h.

◆ userDefinedMessageParameter

template<typename Iterator >
qi::rule<Iterator, fipa::acl::UserdefParam()> fipa::acl::bitefficient::Envelope< Iterator >::userDefinedMessageParameter

Definition at line 303 of file grammar_bitefficient_envelope.h.

◆ userDefinedParameter

template<typename Iterator >
qi::rule<Iterator, fipa::acl::UserDefinedParameter() > fipa::acl::bitefficient::Envelope< Iterator >::userDefinedParameter

Definition at line 331 of file grammar_bitefficient_envelope.h.


The documentation for this struct was generated from the following file: