Source code for tad.edata

# src/tad/data/edata.py
from __future__ import annotations

from abc import ABC
from typing import Any, Optional, Sequence

from .adata import AData


[docs] class EData(AData, ABC): """ Abstract base class for experimental data sources. EData adds minimal experimental-specific metadata (like a source filename), but remains backend-agnostic (it does not force SpikeInterface). """ def __init__( self, fsample: float, channel_ids: Sequence[Any], electrode_labels: Optional[Sequence[Any]] = None, mask: Optional[Sequence[bool]] = None, fname: Optional[str] = None, recording_system: Optional[str] = None, ) -> None: super().__init__( fsample=fsample, channel_ids=channel_ids, electrode_labels=electrode_labels, mask=mask, ) self.fname: Optional[str] = fname self.recording_system: Optional[str] = recording_system # Optional backend-specific object (SpikeInterface Recording, etc.) self.recording: Any = None