1Decoding 2============================= 3 4The following diagram illustrates the relationship among different parts of libcbor from the decoding standpoint. 5 6:: 7 8 ┌──────────────────────────────────────────────────────────────────────────────────────────────┐ 9 │ │ 10 │ Client application │ 11 │ │ 12 │ ┌────────────────────────────────────────────┘ 13 │ │ ↕ 14 │ │ ┌──────────────────────────────────────────┐ 15 │ │ │ │ 16 │ │ │ Manipulation routines │ 17 │ │ │ │ 18 │ ┌─────────────────────────────────────┘ └──────────────────────────────────────────┘ 19 │ │ ↑ ↑ ↑ ↑ 20 │ │ │ │ ┌─────────────╫──────────┬───────────────────┴─┐ 21 │ │ │ CDS │ ║ │ │ 22 │ │ │ │ PDS ║ PDS PDS 23 │ │ ↓ ↓ ↓ ↓ ↓ ↓ 24 │ │ ┌─────────────────┐ ┌────────────────────┐ ┌────────────────────────────┐ 25 │ │ │ │ │ │ │ │ 26 │ │ │ Custom driver │ ↔ │ Streaming driver │ ↔ │ Default driver │ ↔ CD 27 │ │ │ │ │ │ │ │ 28 └───────────┘ └─────────────────┘ └────────────────────┘ └────────────────────────────┘ 29 ↕ ↕ ↕ ↕ 30 ┌──────────────────────────────────────────────────────────────────────────────────────────────┐ 31 │ │ 32 │ Stateless event─driven decoder │ 33 │ │ 34 └──────────────────────────────────────────────────────────────────────────────────────────────┘ 35 36 (PSD = Provided Data Structures, CDS = Custom Data Structures) 37 38This section will deal with the API that is labeled as the "Default driver" in the diagram. That is, routines that 39decode complete libcbor data items 40 41.. doxygenfunction:: cbor_load 42 43Associated data structures 44~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 45 46.. doxygenenum:: cbor_error_code 47 48.. doxygenstruct:: cbor_load_result 49 :members: 50 51.. doxygenstruct:: cbor_error 52 :members: 53 54