LICENSE
README.md
pyproject.toml
src/neurodent/__init__.py
src/neurodent/py.typed
src/neurodent/readers.py
src/neurodent.egg-info/PKG-INFO
src/neurodent.egg-info/SOURCES.txt
src/neurodent.egg-info/dependency_links.txt
src/neurodent.egg-info/requires.txt
src/neurodent.egg-info/top_level.txt
src/neurodent/analysis/__init__.py
src/neurodent/analysis/animal_analyzer.py
src/neurodent/analysis/fragment_analyzer.py
src/neurodent/analysis/long_recording_analyzer.py
src/neurodent/analysis/spike_detection.py
src/neurodent/constants/__init__.py
src/neurodent/constants/analysis.py
src/neurodent/constants/config.py
src/neurodent/constants/mappings.py
src/neurodent/constants/plotting.py
src/neurodent/core/__init__.py
src/neurodent/core/metadata.py
src/neurodent/core/utils/__init__.py
src/neurodent/core/utils/caching.py
src/neurodent/core/utils/dataframe.py
src/neurodent/core/utils/misc.py
src/neurodent/core/utils/naming.py
src/neurodent/core/utils/neighbors.py
src/neurodent/core/utils/paths.py
src/neurodent/core/utils/time.py
src/neurodent/core/utils/units.py
src/neurodent/data/__init__.py
src/neurodent/data/sample/PROVENANCE.md
src/neurodent/data/sample/A10/A10_recording.edf
src/neurodent/data/sample/A10/Cage 2 A10-0_ColMajor.bin
src/neurodent/data/sample/A10/Cage 2 A10-0_Meta.csv
src/neurodent/data/sample/F22/Cage 3 F22-0_ColMajor.bin
src/neurodent/data/sample/F22/Cage 3 F22-0_Meta.csv
src/neurodent/data/sample/F22/F22_recording.edf
src/neurodent/loading/__init__.py
src/neurodent/loading/animal_organizer.py
src/neurodent/loading/ao_build.py
src/neurodent/loading/ao_discovery.py
src/neurodent/loading/ao_timeline.py
src/neurodent/loading/ao_validation.py
src/neurodent/loading/discovery.py
src/neurodent/loading/long_recording_organizer.py
src/neurodent/loading/lro_fragments.py
src/neurodent/loading/lro_loading.py
src/neurodent/loading/lro_merge.py
src/neurodent/loading/lro_persistence.py
src/neurodent/loading/lro_quality.py
src/neurodent/loading/lro_timestamps.py
src/neurodent/loading/recording_metadata.py
src/neurodent/plotting/__init__.py
src/neurodent/plotting/animal.py
src/neurodent/plotting/experiment.py
src/neurodent/plotting/zeitgeber_plotter.py
src/neurodent/results/__init__.py
src/neurodent/results/feature_handlers.py
src/neurodent/results/feature_utils.py
src/neurodent/results/filters.py
src/neurodent/results/frequency_domain_results.py
src/neurodent/results/streaming.py
src/neurodent/results/war_features.py
src/neurodent/results/war_filtering.py
src/neurodent/results/war_lof.py
src/neurodent/results/war_serialization.py
src/neurodent/results/war_spikes.py
src/neurodent/results/window_analysis_result.py
src/neurodent/results/zeitgeber.py
src/neurodent/workflow/__init__.py
src/neurodent/workflow/utils/__init__.py
src/neurodent/workflow/utils/animal_loading.py
src/neurodent/workflow/utils/config.py
src/neurodent/workflow/utils/discovery.py
src/neurodent/workflow/utils/logging.py
src/neurodent/workflow/utils/plotting_helpers.py
tests/test_analysis.py
tests/test_analyze_frag.py
tests/test_animal_loading.py
tests/test_animal_organizer_helpers.py
tests/test_animal_organizer_init.py
tests/test_animal_organizer_manual_datetime_nulls.py
tests/test_animal_organizer_timestamps.py
tests/test_animal_plotter_coverage.py
tests/test_ao_configuration_safety.py
tests/test_ao_discovery_logic.py
tests/test_ao_timestamp_logic.py
tests/test_atomic_io.py
tests/test_band_plot_ordering.py
tests/test_cache_corruption.py
tests/test_caching_complete.py
tests/test_channel_averaging.py
tests/test_channel_standardization.py
tests/test_chunk_size.py
tests/test_constants.py
tests/test_core.py
tests/test_core_coverage.py
tests/test_core_split.py
tests/test_dtype_enforcement.py
tests/test_experiment_plotter_coverage.py
tests/test_extract_channel_names.py
tests/test_feature_comprehensive.py
tests/test_file_discoverer.py
tests/test_filtering_and_timestamps.py
tests/test_frequency_domain_integration.py
tests/test_frequency_domain_results.py
tests/test_frequency_domain_spike_detection.py
tests/test_import_layering.py
tests/test_imports.py
tests/test_intan_units_fix.py
tests/test_integration.py
tests/test_integration_synthetic.py
tests/test_iter_valid_recordings.py
tests/test_joint_session_resolve.py
tests/test_label_management.py
tests/test_lof_evaluation_comprehensive.py
tests/test_lro_merge_timestamps.py
tests/test_manual_datetimes_edge_cases.py
tests/test_manual_timestamps.py
tests/test_matrix_channel_reordering.py
tests/test_merge_repro.py
tests/test_metadata.py
tests/test_mne_unit_extraction.py
tests/test_natural_neighbor.py
tests/test_notch_filtering.py
tests/test_overlapping_animaldays_bug.py
tests/test_overlapping_timestamps_repro.py
tests/test_path_safety.py
tests/test_pipeline_generate_wars.py
tests/test_recording_metadata_serialization.py
tests/test_results_coverage.py
tests/test_run_tests.py
tests/test_sample_data.py
tests/test_save_bad_channels.py
tests/test_si_mode_gain_scaling.py
tests/test_snakemake_workflow_utils.py
tests/test_split_ao.py
tests/test_split_inheritance.py
tests/test_split_recording.py
tests/test_split_recording_func.py
tests/test_split_repro.py
tests/test_timeline_crash.py
tests/test_timeline_file_detection.py
tests/test_timeline_sequencing.py
tests/test_units_roundtrip.py
tests/test_unsigned_conversion.py
tests/test_utils.py
tests/test_verify_zeitgeber_pipeline.py
tests/test_visualization.py
tests/test_visualization_plotting_zeitgeber_plotter.py
tests/test_war_integration.py
tests/test_war_metadata_reenrichment.py
tests/test_warning_deduplication.py
tests/test_workflow_utils.py
tests/test_zeitgeber.py
tests/test_zeitgeber_aliases.py
tests/test_zeitgeber_class.py
tests/test_zeitgeber_semantic.py
tests/test_zeitgeber_timestamp_propagation.py