Clean up the Service tables, add incomplete ProtocolDescriptorList attribute to the...
[pub/USBasp.git] / Demos / Host / Incomplete / BluetoothHost / Lib / SDPServices.h
index 5ca010c..61fd593 100644 (file)
@@ -48,6 +48,7 @@
                \r
                #define SDP_ATTRIBUTE_ID_SERVICERECORDHANDLE    0x0000\r
                #define SDP_ATTRIBUTE_ID_SERVICECLASSIDS        0x0001\r
+               #define SDP_ATTRIBUTE_ID_PROTOCOLDESCRIPTORLIST 0x0004\r
                #define SDP_ATTRIBUTE_ID_VERSION                0x0200\r
                #define SDP_ATTRIBUTE_ID_SERVICENAME            0x0100\r
                #define SDP_ATTRIBUTE_ID_SERVICEDESCRIPTION     0x0101\r
                        const void* AttributeTable; /**< Pointer to the UUID's attribute table, located in PROGMEM memory space */\r
                } ServiceTable_t;\r
 \r
-               /** Structure for a list of Data Elements containing UUIDs, for service attributes requiring UUID lists. */\r
-               typedef struct\r
-               {\r
-                       uint8_t Header; /**< Data Element header, should be (SDP_DATATYPE_UUID | SDP_DATASIZE_128Bit) */\r
-                       UUID_t  UUID; /**< UUID to store in the list Data Element */\r
-               } ItemUUID_t;\r
-\r
                /** Structure for a list of Data Elements containing 8-bit integers, for service attributes requiring such lists. */\r
                typedef struct\r
                {\r
                        uint32_t Value; /**< Value to store in the list Data Element */\r
                } Item32Bit_t;\r
 \r
+               /** Structure for a list of Data Elements containing UUIDs, for service attributes requiring UUID lists. */\r
+               typedef struct\r
+               {\r
+                       uint8_t Header; /**< Data Element header, should be (SDP_DATATYPE_UUID | SDP_DATASIZE_128Bit) */\r
+                       UUID_t  UUID; /**< UUID to store in the list Data Element */\r
+               } ItemUUID_t;\r
+               \r
+               /** Structure for a list of Data Elements Sequences containing UUID Data Elements, for service attributes requiring\r
+                *  protocol lists.\r
+                */\r
+               typedef struct\r
+               {\r
+                       uint8_t     Header; /**< Data Element header, should be (SDP_DATATYPE_Sequence | SDP_DATASIZE_Variable8Bit) */\r
+                       uint8_t     Size; /**< Size of the inner Data Element sequence */\r
+                       \r
+                       ItemUUID_t  UUID; /**< UUID to store in the protocol list Data Element sequence */\r
+               } ItemProtocol_t;\r
+               \r
        /* External Variables: */\r
                extern const ServiceAttributeTable_t SDP_Attribute_Table[];\r
                extern const ServiceAttributeTable_t RFCOMM_Attribute_Table[];\r