1 2# Sample with code generation 3 4This sample uses zcbor-generated code to decode 3 instances of a data 5structure. The 3 data structures are created in 3 different ways: 6 71. Converted from YAML using the zcbor script (See [CMakeLists.txt](CMakeLists.txt), [pet1.yml](pet1.yml), and pet1.h). 82. Encoded using the zcbor C API. 93. Encoded using zcbor-generated C code. 10 11The generated code is found in [src](src) and [include](include). 12To regenerate the files, invoke the [CMakeLists.txt](CMakeLists.txt) file with `-DREGENERATE_ZCBOR=Y`. 13 14[pet1.yml](pet1.yml) files contain the first three representations. Changing [pet1.yml](pet1.yml) will change the printed output for the first pet. 15To change the output for the second and third, change the code in [src/main.c](src/main.c). 16 17### To build: 18 19``` 20mkdir build 21cmake . -Bbuild 22make -C build 23``` 24 25### To run: 26 27``` 28build/app 29``` 30 31### Expected output: 32 33> Name: Carrie Cat 34> Birthday: 0x0012003400560078 35> Species: Cat 36> 37> Name: Danny the Dog 38> Birthday: 0x0001020304050607 39> Species: Dog 40> 41> Name: Gary Giraffe 42> Birthday: 0x010203040a0b0c0d 43> Species: Other 44