% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/respiration-ceemdan-kalman.R
\name{extract_gazepoint_respiration_ceemdan}
\alias{extract_gazepoint_respiration_ceemdan}
\title{Extract respiration proxy using a CEEMDAN-style bridge}
\usage{
extract_gazepoint_respiration_ceemdan(
  dat,
  signal_col,
  time_col = "CNT",
  group_cols = NULL,
  sampling_rate = NULL,
  respiration_band = c(0.1, 0.6),
  scales = c(5, 15, 30, 60, 120),
  external_fun = NULL
)
}
\arguments{
\item{dat}{A data frame.}

\item{signal_col}{Numeric PPG/ECG-derived signal column.}

\item{time_col}{Numeric time column.}

\item{group_cols}{Optional grouping columns.}

\item{sampling_rate}{Optional sampling rate in Hz.}

\item{respiration_band}{Frequency band in Hz used to select respiration-like
components.}

\item{scales}{Moving-average scales used by the fallback decomposition.}

\item{external_fun}{Optional function with arguments \code{x}, \code{time}, and
\code{sampling_rate}, returning either a numeric vector or a list/data frame of
components.}
}
\value{
A list with \code{overview}, \code{component_table}, \code{respiration_timeseries},
\code{summary}, and \code{settings}.
}
\description{
Extracts respiration-like components from PPG or ECG-derived respiratory
proxy signals. If \code{external_fun} is supplied, it is used as the CEEMDAN
backend. Otherwise, the function uses a dependency-light multiscale
decomposition fallback and labels the result accordingly.
}
\details{
This function does not claim to reproduce full CEEMDAN unless a validated
external CEEMDAN function is supplied.
}
