id: fft_ctrlport_probe_psd
label: Ctrlport Probe PSD
flags: [ python, cpp ]

parameters:
-   id: name
    label: Name
    dtype: string
    default: psd
-   id: desc
    label: Description
    dtype: string
    default: PSD Plot
-   id: len
    label: Length
    dtype: int
    default: '1024'

inputs:
-   domain: stream
    dtype: complex

templates:
    imports: from gnuradio import fft
    make: fft.ctrlport_probe_psd(${name}, ${desc}, ${len})
    callbacks:
    - set_length(${len})

cpp_templates:
    includes: [ '#include <gnuradio/fft/ctrlport_probe_psd.h>' ]
    declarations: 'fft::ctrlport_probe_psd::sptr ${id};'
    make: 'this->${id} = fft::ctrlport_probe_psd::make(${name}, ${desc}, ${len});'
    link: ['gnuradio::gnuradio-fft']
    callbacks:
    - set_length(${len})

documentation: |-
    Place this in a graph to export PSD values to a GRCP port probe.

file_format: 1