Intorduces new structures instead of nlohmann::json
OLinkContent - to pass arguments or values - appears in the interface of sinks, sources, and nodes
and OLinkMessage - used internally
Also introduces IMessageSerializer which can be set to serialize and deserialize message, adds default serializer for nlohmann json. It is set with a write function to a nodes.
Introduces OLinkContent serializer functions in separate namespace, the idea is that in case of using custom serializer, user writes all the functions in the new namespace and uses sub-namespace and same structures, to change in code for different serializer the alias for namespace needs to be changed.
TODO
[ ] Still some tests are failing (something with serialization ints in message 🤔 )
[ ] The performance tests are not re-generated (and performance was not re-checked, but I expect it to be similar or slightly worse for now, as creating message is done with push_back not allocating all at once)
[ ] The Qt example is not fixed
Closes #
📑 Description
✅ Checks
[ ] My pull request adheres to the code style of this project
Intorduces new structures instead of nlohmann::json OLinkContent - to pass arguments or values - appears in the interface of sinks, sources, and nodes and OLinkMessage - used internally
Also introduces IMessageSerializer which can be set to serialize and deserialize message, adds default serializer for nlohmann json. It is set with a write function to a nodes. Introduces OLinkContent serializer functions in separate namespace, the idea is that in case of using custom serializer, user writes all the functions in the new namespace and uses sub-namespace and same structures, to change in code for different serializer the alias for namespace needs to be changed.
TODO
Closes #
📑 Description
✅ Checks
ℹ Additional Information