| {{> header excludeZapComment=true}} |
| |
| #import <Foundation/Foundation.h> |
| #import "MTRCallbackBridgeBase_internal.h" |
| |
| #include <app/data-model/DecodableList.h> |
| #include <app/util/im-client-callbacks.h> |
| #include <app-common/zap-generated/cluster-objects.h> |
| |
| typedef void (*CommandSuccessCallback)(void *, const chip::app::DataModel::NullObjectType &); |
| using CommandSuccessCallbackType = CommandSuccessCallback; |
| typedef void (*DefaultSuccessCallbackType)(void *); |
| |
| typedef void (*VendorIdAttributeCallback)(void *, chip::VendorId); |
| typedef void (*NullableVendorIdAttributeCallback)(void *, const chip::app::DataModel::Nullable<chip::VendorId> &); |
| |
| {{#chip_client_clusters includeAll=true}} |
| {{#chip_cluster_responses}} |
| typedef void (*{{asUpperCamelCase parent.name preserveAcronyms=true}}Cluster{{asUpperCamelCase name preserveAcronyms=true}}CallbackType)(void *, const chip::app::Clusters::{{asUpperCamelCase parent.name}}::Commands::{{asUpperCamelCase name}}::DecodableType &); |
| {{/chip_cluster_responses}} |
| {{/chip_client_clusters}} |
| |
| {{#zcl_clusters}} |
| {{#zcl_enums}} |
| typedef void (*{{asUpperCamelCase parent.name preserveAcronyms=true}}Cluster{{asUpperCamelCase name preserveAcronyms=true}}AttributeCallback)(void *, chip::app::Clusters::{{asUpperCamelCase parent.name}}::{{asType label}}); |
| typedef void (*Nullable{{asUpperCamelCase parent.name preserveAcronyms=true}}Cluster{{asUpperCamelCase name preserveAcronyms=true}}AttributeCallback)(void *, const chip::app::DataModel::Nullable<chip::app::Clusters::{{asUpperCamelCase parent.name}}::{{asType label}}> &); |
| {{/zcl_enums}} |
| {{/zcl_clusters}} |
| |
| {{#chip_client_clusters includeAll=true}} |
| {{#chip_server_cluster_attributes}} |
| {{#if isArray}} |
| typedef void (*{{asUpperCamelCase parent.name preserveAcronyms=true}}{{asUpperCamelCase name preserveAcronyms=true}}ListAttributeCallback)(void * context, {{zapTypeToDecodableClusterObjectType type ns=parent.name isArgument=true}} data); |
| {{else}} |
| {{#if_is_struct type}} |
| typedef void (*{{asUpperCamelCase parent.name preserveAcronyms=true}}{{asUpperCamelCase name preserveAcronyms=true}}StructAttributeCallback)(void *, {{zapTypeToDecodableClusterObjectType type ns=parent.name isArgument=true forceNotOptional=true}}); |
| {{/if_is_struct}} |
| {{#if_is_strongly_typed_bitmap type}} |
| typedef void (*{{asUpperCamelCase parent.name preserveAcronyms=true}}{{asUpperCamelCase name preserveAcronyms=true}}AttributeCallback)(void *, {{zapTypeToDecodableClusterObjectType type ns=parent.name isArgument=true forceNotOptional=true}}); |
| {{/if_is_strongly_typed_bitmap}} |
| {{/if}} |
| {{/chip_server_cluster_attributes}} |
| {{/chip_client_clusters}} |
| |
| {{#>MTRCallbackBridge header="1" partial-type="Status" }}DefaultSuccessCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" partial-type="CommandStatus" }}CommandSuccessCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Octet_String" isNullable=false ns="chip"}}OctetStringAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Octet_String" isNullable=true ns="chip"}}NullableOctetStringAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Char_String" isNullable=false ns="chip"}}CharStringAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Char_String" isNullable=true ns="chip"}}NullableCharStringAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Boolean" isNullable=false ns="chip"}}BooleanAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Boolean" isNullable=true ns="chip"}}NullableBooleanAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int8u" isNullable=false ns="chip"}}Int8uAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int8u" isNullable=true ns="chip"}}NullableInt8uAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int8s" isNullable=false ns="chip"}}Int8sAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int8s" isNullable=true ns="chip"}}NullableInt8sAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int16u" isNullable=false ns="chip"}}Int16uAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int16u" isNullable=true ns="chip"}}NullableInt16uAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int16s" isNullable=false ns="chip"}}Int16sAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int16s" isNullable=true ns="chip"}}NullableInt16sAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int32u" isNullable=false ns="chip"}}Int32uAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int32u" isNullable=true ns="chip"}}NullableInt32uAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int32s" isNullable=false ns="chip"}}Int32sAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int32s" isNullable=true ns="chip"}}NullableInt32sAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int64u" isNullable=false ns="chip"}}Int64uAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int64u" isNullable=true ns="chip"}}NullableInt64uAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int64s" isNullable=false ns="chip"}}Int64sAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Int64s" isNullable=true ns="chip"}}NullableInt64sAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Single" isNullable=false ns="chip"}}FloatAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Single" isNullable=true ns="chip"}}NullableFloatAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Double" isNullable=false ns="chip"}}DoubleAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="Double" isNullable=true ns="chip"}}NullableDoubleAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="vendor_id" isNullable=false ns="chip"}}VendorIdAttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type="vendor_id" isNullable=true ns="chip"}}NullableVendorIdAttributeCallback{{/MTRCallbackBridge}} |
| |
| {{#chip_client_clusters includeAll=true}} |
| {{#chip_server_cluster_attributes}} |
| {{#if isArray}} |
| {{#>MTRCallbackBridge header="1" ns=parent.name }}{{asUpperCamelCase ../../name preserveAcronyms=true}}{{asUpperCamelCase ../name preserveAcronyms=true}}ListAttributeCallback{{/MTRCallbackBridge}} |
| {{else}} |
| {{#if_is_struct type}} |
| {{#>MTRCallbackBridge header="1" ns=parent.name }}{{asUpperCamelCase ../../name preserveAcronyms=true}}{{asUpperCamelCase ../name preserveAcronyms=true}}StructAttributeCallback{{/MTRCallbackBridge}} |
| {{/if_is_struct}} |
| {{#if_is_strongly_typed_bitmap type}} |
| {{#>MTRCallbackBridge header="1" ns=parent.name }}{{asUpperCamelCase ../../name preserveAcronyms=true}}{{asUpperCamelCase ../name preserveAcronyms=true}}AttributeCallback{{/MTRCallbackBridge}} |
| {{/if_is_strongly_typed_bitmap}} |
| {{/if}} |
| {{/chip_server_cluster_attributes}} |
| {{/chip_client_clusters}} |
| |
| {{#chip_client_clusters includeAll=true}} |
| {{#chip_cluster_responses}} |
| {{#>MTRCallbackBridge header="1" partial-type="Command" }}{{asUpperCamelCase ../../name preserveAcronyms=true}}Cluster{{asUpperCamelCase ../name preserveAcronyms=true}}Callback{{/MTRCallbackBridge}} |
| {{/chip_cluster_responses}} |
| {{/chip_client_clusters}} |
| |
| {{#zcl_clusters}} |
| {{#zcl_enums}} |
| {{#>MTRCallbackBridge header="1" type=(asType label) isNullable=false ns=parent.name}}{{asUpperCamelCase parent.name preserveAcronyms=true}}Cluster{{asUpperCamelCase name preserveAcronyms=true}}AttributeCallback{{/MTRCallbackBridge}} |
| {{#>MTRCallbackBridge header="1" type=(asType label) isNullable=true ns=parent.name}}Nullable{{asUpperCamelCase parent.name preserveAcronyms=true}}Cluster{{asUpperCamelCase name preserveAcronyms=true}}AttributeCallback{{/MTRCallbackBridge}} |
| {{/zcl_enums}} |
| {{/zcl_clusters}} |