diff options
Diffstat (limited to 'doc/source/api/decoding.rst')
-rw-r--r-- | doc/source/api/decoding.rst | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/doc/source/api/decoding.rst b/doc/source/api/decoding.rst new file mode 100644 index 000000000000..e3a41f467a15 --- /dev/null +++ b/doc/source/api/decoding.rst @@ -0,0 +1,53 @@ +Decoding +============================= + +The following diagram illustrates the relationship among different parts of libcbor from the decoding standpoint. + +:: + + ┌──────────────────────────────────────────────────────────────────────────────────────────────┐ + │ │ + │ Client application │ + │ │ + │ ┌────────────────────────────────────────────┘ + │ │ ↕ + │ │ ┌──────────────────────────────────────────┐ + │ │ │ │ + │ │ │ Manipulation routines │ + │ │ │ │ + │ ┌─────────────────────────────────────┘ └──────────────────────────────────────────┘ + │ │ ↑ ↑ ↑ ↑ + │ │ │ │ ┌─────────────╫──────────┬───────────────────┴─┐ + │ │ │ CDS │ ║ │ │ + │ │ │ │ PDS ║ PDS PDS + │ │ ↓ ↓ ↓ ↓ ↓ ↓ + │ │ ┌─────────────────┐ ┌────────────────────┐ ┌────────────────────────────┐ + │ │ │ │ │ │ │ │ + │ │ │ Custom driver │ ↔ │ Streaming driver │ ↔ │ Default driver │ ↔ CD + │ │ │ │ │ │ │ │ + └───────────┘ └─────────────────┘ └────────────────────┘ └────────────────────────────┘ + ↕ ↕ ↕ ↕ + ┌──────────────────────────────────────────────────────────────────────────────────────────────┐ + │ │ + │ Stateless event─driven decoder │ + │ │ + └──────────────────────────────────────────────────────────────────────────────────────────────┘ + + (PSD = Provided Data Structures, CDS = Custom Data Structures) + +This section will deal with the API that is labeled as the "Default driver" in the diagram. That is, routines that +decode complete libcbor data items + +.. doxygenfunction:: cbor_load + +Associated data structures +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. doxygenenum:: cbor_error_code + +.. doxygenstruct:: cbor_load_result + :members: + +.. doxygenstruct:: cbor_error + :members: + |