diff --git a/IDL/buffer.idl b/IDL/buffer.idl new file mode 100644 index 0000000..46a2a50 --- /dev/null +++ b/IDL/buffer.idl @@ -0,0 +1,66 @@ +typedef sequence OctetBufferAlias; +typedef sequence Uint8BufferAlias; + +@nested +struct DirectBuffersStruct +{ + sequence var_octet_buffer; + sequence var_uint8_buffer; +}; + +@nested +struct AliasBuffersStruct +{ + OctetBufferAlias var_octet_buffer; + Uint8BufferAlias var_uint8_buffer; +}; + +union BufferUnionFirstMember switch (long) +{ + case 0: + sequence var_octet_buffer; + case 1: + long dummy; +}; + +union BufferUnionSecondMember switch (long) +{ + case 0: + long dummy; + case 1: + sequence var_uint8_buffer; +}; + +@nested +struct BufferStructWithUnions +{ + BufferUnionFirstMember first_member; + BufferUnionSecondMember second_member; +}; + +@nested +struct BoundedBuffersStruct +{ + sequence bounded_octet_buffer; + sequence bounded_uint8_buffer; +}; + +@nested +struct BufferCollectionsStruct +{ + sequence var_octet_buffer_array[10]; + sequence var_uint8_buffer_array[10]; + sequence > var_octet_buffer_sequence; + sequence > var_uint8_buffer_sequence; + map > var_octet_buffer_map; + map > var_uint8_buffer_map; +}; + +struct BufferTestStruct +{ + DirectBuffersStruct direct_buffers_struct; + AliasBuffersStruct alias_buffers_struct; + BufferStructWithUnions buffer_struct_with_unions; + BoundedBuffersStruct bounded_buffers_struct; + BufferCollectionsStruct buffer_collections_struct; +};