Messagepack February 13, 2018 | Quick Intro

Messagepack February 13, 2018 | Quick Intro

MessagePack February 13, 2018 | Quick Intro Giovanni Vergine This work is licensed under a Creative Commons Attribution-Share Alike 4.0 (CC BY-SA 4.0) GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries. Copyright © GENIVI Alliance 2018. MessagePack • binary serialization format • supported by over 50 programming languages and environments • No schema/generators • https://msgpack.org/ Json/MsgPack comparison “It's like JSON. but fast and small.” MsgPack JSON -- https://msgpack.org/ Integer Number Nil null Boolean true/false Float Number Array Array Map (any key) Object (str key) String String Byte Array Base64 String 3 | February 13, 2018 | Copyright © GENIVI Alliance 2018 MsgPack C++ types https://github.com/msgpack/msgpack-c/wiki/v2_0_cpp_object 4 | February 13, 2018 | Copyright © GENIVI Alliance 2018 MsgPack “extensions” • An extension is 1 Integer + 1 Byte Array • The Integer represent the kind of types [0-127] • This is for custom types/format • [-128,-1] is reserved for predefined types. • The only one for now is “Timestamp” (-1) Ex. Timestamp: 0xd7 -1 0x00 0x00 0xc6 … fixext-8 Ex. 4-bytes bytearray of custom type 42 with max size 2^16-1 0xc8 0x00 0x04 42 0x01 0x02 0x03 0x04 ext-16 5 | February 13, 2018 | Copyright © GENIVI Alliance 2018 MsgPack • Widely supported by community • C/C++ versions supported by the author himself • Not “really” famous • Easier to use when you have your IDL (e.g. Franca) instead of intermediate step (e.g. generate .proto from .fidl and then call protoc) 6 | February 13, 2018 | Copyright © GENIVI Alliance 2018 Thank you! Links: Spec: https://github.com/msgpack/msgpack/blob/master/spec.md Wiki: https://github.com/msgpack/msgpack-c/wiki Visit GENIVI at http://www.genivi.org or http://projects.genivi.org Contact us: [email protected] This work is licensed under a Creative Commons Attribution-Share Alike 4.0 (CC BY-SA 4.0) GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries. Copyright © GENIVI Alliance 2017..

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    7 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us