Thanks for replying !
Yeah, but If I do that, I won’t have an Array of Arrays right ?
i.e. I want to have {a:[1,2,3,4], b:[ {c:[1,2,3,4,5]}, {c:[1,2,3,4,5]}]}
structure..
Which means, I need multiple instances of C object. Hence the struct c_object
creation.. If I make CborAttrArrayType
Am not sure that will work.
Please correct me if am wrong.
Thanks,
Aditya Xavier.
> On 13-Aug-2018, at 12:53 PM, marko kiiskila <[email protected]> wrote:
>
> “c" looks like an int array instead of an object. Hope that helps
>
>> On Aug 10, 2018, at 10:06 AM, Aditya Xavier <[email protected]>
>> wrote:
>>
>> Hello !
>>
>>
>> Require some guidance on how to write a CBOR parsing implementation for the
>> following structure.
>>
>> {a:[1,2,3,4], b:[ {c:[1,2,3,4,5]}, {c:[1,2,3,4,5]}]}
>>
>> I tried the following implementation.
>> ———————————————————————————————————————————————————————
>>
>> uint64_t a[5];
>> Int a_count = 0;
>>
>> struct c_object{
>> int c[6];
>> }c_arr_objs[5];
>> int c_obj_count = 0;
>>
>> struct cbor_attr_t c_attrs[] = {
>> {
>> .attribute = “c",
>> .type = CborAttrObjectType,
>> CBORATTR_STRUCT_OBJECT(struct c_object, c),
>> .dflt.integer = 0
>> },
>> {
>> .attribute = NULL
>> }
>> };
>>
>>
>> struct cbor_attr_t root_attrs[] = {
>> {
>> .attribute = “a",
>> .type = CborAttrArrayType,
>> .addr.array.element_type = CborAttrUnsignedIntegerType,
>> .addr.array.arr.uintegers.store = a,
>> .addr.array.count = &a_count,
>> .addr.array.maxlen = sizeof(a) / sizeof(a[0]),
>> .nodefault = true
>> },
>> {
>> .attribute = “b",
>> .type = CborAttrArrayType,
>> CBORATTR_STRUCT_ARRAY(c_arr_objs, c_attrs, &c_obj_count),
>> .nodefault = true
>> },
>> {
>> .attribute = NULL
>> }
>> };
>>
>> ———————————————————————————————————————————————————————
>>
>>
>> I assumed this to work as I have been using the same albeit without ‘c’
>> being a int Array. It works when I use ‘c’ as a Int etc, but not as a int
>> Array,
>>
>> The example :-
>> https://github.com/apache/mynewt-core/blob/master/encoding/cborattr/test/src/testcases/cborattr_decode_object_array.c
>>
>> <https://github.com/apache/mynewt-core/blob/master/encoding/cborattr/test/src/testcases/cborattr_decode_object_array.c>
>>
>> Has a similar implementation for Text String instead of Int Array.
>>
>> Thanks,
>> Aditya Xavier.
>>
>>
>>
>