diff options
author | Loek Le Blansch <loek@pipeframe.xyz> | 2024-05-28 12:02:05 +0200 |
---|---|---|
committer | Loek Le Blansch <loek@pipeframe.xyz> | 2024-05-28 12:02:05 +0200 |
commit | 8894d20ff0d1c1dde69879a21e756e01bcfa5262 (patch) | |
tree | dfbf2a354fbfbb4b87232de0d45e5642ee555a9c | |
parent | b6abd84b9930ab398f0402058e56a480e80799cc (diff) |
add readme ot i2ctcp folder
-rw-r--r-- | i2ctcp/readme.md | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/i2ctcp/readme.md b/i2ctcp/readme.md new file mode 100644 index 0000000..d5bfe6d --- /dev/null +++ b/i2ctcp/readme.md @@ -0,0 +1,25 @@ +# i2ctcp (I<sup>2</sup>C over TCP) + +This folder includes protocol (de)serialization functions for sending and +receiving I<sup>2</sup>C messages over TCP. These functions are used by the +[main controller](../main) and the [puzzle box client (pbc)](../client). This +folder does not include any puzzle bus specific code, and the headers for +puzbus are in the [shared](../shared) folder instead. + +[MessagePack][msgpack] (specifically the [mpack][mpack] implementation) is used +for the actual serialization/deserializtion, and the functions in this folder +act as helpers for parsing from chunked data streams. + +To use these functions, include the following statement in your CMakeLists.txt: +```cmake +include(../i2ctcp/include.cmake) +``` + +The functions are available by `#include`ing the `i2ctcpv1.h` header, and are +extensively documented using Doxygen-style comments. + +[msgpack]: https://msgpack.org/ +[mpack]: https://github.com/ludocode/mpack/ + + + |