id: digital_correlate_access_code_tag_xx
label: Correlate Access Code - Tag
flags: [ python, cpp ]

parameters:
-   id: type
    label: IO Type
    dtype: enum
    options: [byte, float]
    option_attributes:
        fcn: [bb, ff]
    hide: part
-   id: access_code
    label: Access Code
    dtype: string
    default: '101010'
-   id: threshold
    label: Threshold
    dtype: int
-   id: tagname
    label: Tag Name
    dtype: string

inputs:
-   domain: stream
    dtype: ${ type }

outputs:
-   domain: stream
    dtype: ${ type }

templates:
    imports: from gnuradio import digital
    make: digital.correlate_access_code_tag_${type.fcn}(${access_code}, ${threshold},
        ${tagname})
    callbacks:
    - set_access_code(${access_code})
    - set_threshold(${threshold})
    - set_tagname(${tagname})

cpp_templates:
    includes: ['#include <gnuradio/digital/correlate_access_code_tag_${type.fcn}.h>']
    declarations: 'digital::correlate_access_code_tag_${type.fcn}::sptr ${id};'
    make: |-
        this->${id} = digital::correlate_access_code_tag_${type.fcn}::make(
            ${access_code},
            ${threshold},
            ${tagname});
    link: ['gnuradio::gnuradio-digital']
    callbacks:
    - set_access_code(${access_code})
    - set_threshold(${threshold})
    - set_tagname(${tagname})

file_format: 1
