endoreg-db 0.8.2__tar.gz → 0.8.2.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of endoreg-db might be problematic. Click here for more details.
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/.env.example +12 -2
- endoreg_db-0.8.2.2/.git +1 -0
- endoreg_db-0.8.2.2/.github/copilot-instructions.md +39 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/PKG-INFO +2 -2
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/devenv.nix +9 -11
- endoreg_db-0.8.2.2/docs/test_suite_blueprint.md +58 -0
- endoreg_db-0.8.2.2/docs/test_suite_review.md +31 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/helpers/default_objects.py +48 -29
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/import_video.py +5 -3
- endoreg_db-0.8.2.2/endoreg_db/migrations/0003_add_center_display_name.py +30 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/center/center.py +7 -1
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/pdf/raw_pdf.py +31 -26
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/create_from_file.py +26 -4
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file.py +89 -57
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_anonymize.py +2 -1
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_manage_frame_range.py +12 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_io.py +4 -2
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/metadata/sensitive_meta.py +6 -6
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/metadata/video_meta.py +2 -2
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/pdf_import.py +131 -15
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/pseudonym_service.py +1 -1
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/video_import.py +400 -387
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/paths.py +2 -10
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/video/ffmpeg_wrapper.py +67 -4
- endoreg_db-0.8.2.2/endoreg_db/views/anonymization/validate.py +107 -0
- endoreg_db-0.8.2.2/endoreg_db/views/requirement_lookup/lookup_store.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/correction.py +8 -6
- endoreg_db-0.8.2.2/prompts.md +19 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/pyproject.toml +2 -2
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/pytest.ini +2 -1
- endoreg_db-0.8.2.2/scripts/__init__.py +0 -0
- endoreg_db-0.8.2.2/todo.md +29 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/uv.lock +5 -5
- endoreg_db-0.8.2/endoreg_db/services/ollama_api_docs.py +0 -1528
- endoreg_db-0.8.2/endoreg_db/views/anonymization/validate.py +0 -66
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/.devenv-vars.json +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/.envrc +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/.github/ISSUE_TEMPLATE/label-request.yml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/.gitignore +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/.gitmodules +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/.pylintrc +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/.python-version +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/.vscode/settings.json +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/CONFIGURATION_GUIDE.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/loadbasedata0.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/loadbasedata1.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/loadbasedata2.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/loadbasedata3.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/loadbasedata4.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/loadbasedata4b.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/loadbasedata5.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/shell0.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/shell1.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/shell2.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/shell3.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/shell3b.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/Images/testscreenshort.png +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/LICENSE +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/README.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/celery_app.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/changelogs/changelog-0.6.4.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/changelogs/changelog-0.8.1.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/conf/db.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/conf/db_pwd +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/conf/example.env +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/conf_template/db.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/conf_template/default.env +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/config/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/config/settings/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/config/settings/base.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/config/settings/dev.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/config/settings/prod.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/config/settings/test.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/config.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/dev/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/dev/cg.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/dev/dev_settings.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/dev/dev_settings_root.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/dev/explore_legacy_frames.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/dev/test_model.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/dev/video_utils.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/devenv.lock +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/devenv.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/devlog/00 - bleeding-risk.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/devlog/01 - model_documentation.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/devlog/02 - patient_model_manual.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/devlog/03 - requirement_model_manual.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/doc_settings.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/docs/Makefile +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/docs/VIDEO_CORRECTION_MODULES.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/docs/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/docs/make.bat +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/docs/source/conf.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/docs/source/index.rst +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/docs/source/models.rst +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/docs/source/tests.rst +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg-db.code-workspace +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/admin.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/api/serializers/finding_descriptions.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/api/views/finding_descriptions.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/api_urls.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/apps.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/assets/dummy_model.ckpt +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/codemods/readme.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/codemods/rename_datetime_fields.py +0 -0
- {endoreg_db-0.8.2/endoreg_db/factories → endoreg_db-0.8.2.2/endoreg_db/config}/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/config/env.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/ai_model/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/ai_model_label/label/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/ai_model_label/label/polyp_classification.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/ai_model_label/label-set/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/ai_model_label/label-set/polyp_classifications.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/ai_model_label/label-type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/ai_model_meta/default_multilabel_classification.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/ai_model_type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/ai_model_video_segmentation_label/base_segmentation.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/ai_model_video_segmentation_labelset/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/rule/00_patient_lab_sample_add_default_value.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/rule/01_patient-set-age.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/rule/01_patient-set-gender.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/rule/11_create_patient_lab_sample.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/rule/12_create-patient_medication-anticoagulation.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/rule/13_create-patient_medication_schedule-anticoagulation.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/rule/19_create_patient.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/rule_type/base_types.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/rule_value/.init +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/rule_value_type/base_types.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/template/base.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/template_type/pre_endoscopy.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/tmp/_rule_value +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/tmp/rule/01_atrial_fibrillation.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/tmp/rule/02_create_object.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/case_template/tmp/template/atrial_fibrillation_low_risk.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/center/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/center_resource/green_endoscopy_dashboard_CenterResource.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/center_shift/ukw.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/center_waste/green_endoscopy_dashboard_CenterWaste.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/contraindication/bleeding.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/db_summary.csv +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/db_summary.xlsx +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/disease/cardiovascular.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/disease/hepatology.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/disease/misc.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/disease/renal.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/disease_classification/chronic_kidney_disease.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/disease_classification/coronary_vessel_disease.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/disease_classification_choice/chronic_kidney_disease.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/disease_classification_choice/coronary_vessel_disease.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/distribution/date/patient.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/distribution/multiple_categorical/.init +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/distribution/numeric/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/distribution/single_categorical/patient.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/emission_factor/green_endoscopy_dashboard_EmissionFactor.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/endoscope/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/endoscope_type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/endoscopy_processor/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/event/cardiology.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/event/neurology.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/event/surgery.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/event/thrombembolism.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/examination/examinations/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/examination/time/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/examination/time-type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/examination/type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/examination_indication/endoscopy.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/examination_indication_classification/endoscopy.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/examination_indication_classification_choice/endoscopy.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/examination_requirement_set/colonoscopy.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding/anatomy_colon.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding/colonoscopy.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding/colonoscopy_bowel_prep.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding/complication.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding/examination_setting.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding/medication_related.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding/outcome.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_bowel_preparation.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_jnet.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_kudo.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_lesion_circularity.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_lesion_planarity.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_lesion_size.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_lesion_surface.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_location.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_lst.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_nice.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_paris.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_sano.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/colonoscopy_summary.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/complication_generic.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/examination_setting_generic.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/histology_colo.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/intervention_required.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/medication_related.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification/visualized.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/bowel_preparation.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colon_lesion_circularity_default.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colon_lesion_jnet.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colon_lesion_kudo.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colon_lesion_lst.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colon_lesion_nice.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colon_lesion_paris.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colon_lesion_planarity_default.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colon_lesion_sano.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colon_lesion_surface_intact_default.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colonoscopy_location.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colonoscopy_not_complete_reason.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colonoscopy_size.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/colonoscopy_summary_worst_finding.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/complication_generic_types.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/examination_setting_generic_types.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/histology.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/histology_polyp.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/outcome.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_choice/yes_no_na.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_classification_type/colonoscopy_basic.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_intervention/endoscopy.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_intervention/endoscopy_colonoscopy.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_intervention/endoscopy_egd.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_intervention/endoscopy_ercp.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_intervention/endoscopy_eus_lower.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_intervention/endoscopy_eus_upper.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_intervention_type/endoscopy.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_morphology_classification_type/colonoscopy.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/finding_type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/gender/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/information_source/annotation.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/information_source/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/information_source/endoscopy_guidelines.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/information_source/medication.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/information_source/prediction.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/information_source_type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lab_value/cardiac_enzymes.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lab_value/coagulation.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lab_value/electrolytes.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lab_value/gastrointestinal_function.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lab_value/hematology.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lab_value/hormones.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lab_value/lipids.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lab_value/misc.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lab_value/renal_function.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/log_type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lx_client_tag/base.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lx_client_type/base.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lx_permission/base.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/lx_permission/endoreg.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/material/material.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/medication/anticoagulation.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/medication/tah.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/medication_indication/anticoagulation.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/medication_indication_type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/medication_indication_type/thrombembolism.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/medication_intake_time/base.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/medication_schedule/apixaban.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/medication_schedule/ass.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/medication_schedule/enoxaparin.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/names_first/first_names.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/names_last/last_names.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/network_device/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/network_device_type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/organ/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/patient_lab_sample_type/generic.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/pdf_type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/product/green_endoscopy_dashboard_Product.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/product_group/green_endoscopy_dashboard_ProductGroup.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/product_material/green_endoscopy_dashboard_ProductMaterial.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/product_weight/green_endoscopy_dashboard_ProductWeight.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/profession/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/qualification/endoscopy.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/qualification/m2.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/qualification/outpatient_clinic.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/qualification/sonography.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/qualification_type/base.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/reference_product/green_endoscopy_dashboard_ReferenceProduct.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/report_reader_flag/rkh-histology-generic.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/report_reader_flag/ukw-examination-generic.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/report_reader_flag/ukw-histology-generic.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/age.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/colonoscopy_baseline_austria.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/disease_cardiovascular.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/disease_classification_choice_cardiovascular.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/disease_hepatology.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/disease_misc.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/disease_renal.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/endoscopy_bleeding_risk.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/event_cardiology.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/event_requirements.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/finding_colon_polyp.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/gender.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/lab_value.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement/medication.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement_operator/age.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement_operator/lab_operators.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement_operator/model_operators.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement_set/01_endoscopy_generic.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement_set/colonoscopy_austria_screening.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement_set/endoscopy_bleeding_risk.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement_set_type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/requirement_type/requirement_types.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/resource/green_endoscopy_dashboard_Resource.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/risk/bleeding.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/risk/thrombosis.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/risk_type/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/shift/endoscopy.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/shift/m2.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/shift_type/base.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/tag/requirement_set_tags.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/tmp/chronic_kidney_disease.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/tmp/congestive_heart_failure.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/transport_route/green_endoscopy_dashboard_TransportRoute.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/unit/concentration.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/unit/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/unit/length.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/unit/misc.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/unit/rate.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/unit/time.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/unit/volume.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/unit/weight.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/data/waste/data.yaml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/exceptions.py +0 -0
- {endoreg_db-0.8.2/endoreg_db/helpers → endoreg_db-0.8.2.2/endoreg_db/factories}/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/forms/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/forms/examination_form.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/forms/patient_finding_intervention_form.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/forms/patient_form.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/forms/questionnaires/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/forms/questionnaires/tto_questionnaire.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/forms/settings/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/forms/unit.py +0 -0
- {endoreg_db-0.8.2/endoreg_db/migrations → endoreg_db-0.8.2.2/endoreg_db/helpers}/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/helpers/count_db.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/helpers/data_loader.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/helpers/download_segmentation_model.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/helpers/interact.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/helpers/test_video_helper.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/logger_conf.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/anonymize_video.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/check_auth.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/create_multilabel_model_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/fix_missing_patient_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/fix_video_paths.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/import_fallback_video.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/import_report.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/import_video_with_classification.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/init_default_ai_model.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_ai_model_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_ai_model_label_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_base_db_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_center_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_contraindication_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_disease_classification_choices_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_disease_classification_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_disease_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_distribution_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_endoscope_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_event_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_examination_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_examination_indication_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_finding_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_gender_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_green_endoscopy_wuerzburg_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_information_source.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_lab_value_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_medication_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_name_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_organ_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_pdf_type_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_profession_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_qualification_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_report_reader_flag_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_requirement_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_risk_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_shift_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_tag_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_unit_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/load_user_groups.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/register_ai_model.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/reset_celery_schedule.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/start_filewatcher.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/storage_management.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/summarize_db_content.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/validate_video.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/validate_video_files.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/management/commands/video_validation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/mermaid/Overall_flow_patient_finding_intervention.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/mermaid/anonymized_image_annotation.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/mermaid/binary_classification_annotation.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/mermaid/classification.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/mermaid/examination.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/mermaid/findings.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/mermaid/image_classification.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/mermaid/interventions.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/mermaid/morphology.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/mermaid/patient_creation.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/mermaid/video_segmentation_annotation.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/migrations/0001_initial.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/migrations/0002_add_video_correction_models.py +0 -0
- {endoreg_db-0.8.2/endoreg_db/models/administration/person/names → endoreg_db-0.8.2.2/endoreg_db/migrations}/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/ai/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/ai/active_model.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/ai/ai_model.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/ai/model_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/case/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/case/case.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/case/case_template/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/case/case_template/case_template.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/case/case_template/case_template_rule.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/case/case_template/case_template_rule_value.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/case/case_template/case_template_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/center/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/center/center_product.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/center/center_resource.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/center/center_shift.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/center/center_waste.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/permissions/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/employee/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/employee/employee.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/employee/employee_qualification.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/employee/employee_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/examiner/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/examiner/examiner.py +0 -0
- {endoreg_db-0.8.2/endoreg_db/schemas → endoreg_db-0.8.2.2/endoreg_db/models/administration/person/names}/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/names/first_name.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/names/last_name.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/patient/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/patient/patient.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/person.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/profession/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/user/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/person/user/portal_user_information.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/product/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/product/product.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/product/product_group.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/product/product_material.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/product/product_weight.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/product/reference_product.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/qualification/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/qualification/qualification.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/qualification/qualification_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/shift/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/shift/scheduled_days.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/shift/shift.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/administration/shift/shift_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/label/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/label/annotation/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/label/annotation/image_classification.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/label/annotation/video_segmentation_annotation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/label/label.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/label/label_set.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/label/label_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/label/label_video_segment/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/label/label_video_segment/_create_from_video.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/label/label_video_segment/label_video_segment.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/label/video_segmentation_label.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/label/video_segmentation_labelset.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/frame/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/frame/frame.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/pdf/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/pdf/report_file.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/pdf/report_reader/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/pdf/report_reader/report_reader_config.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/pdf/report_reader/report_reader_flag.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/pipe_1.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/pipe_2.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/refactor_plan.md +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_ai.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_bulk_create_frames.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_create_frame_object.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_delete_frames.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_extract_frames.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_get_frame.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_get_frame_number.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_get_frame_path.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_get_frame_paths.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_get_frame_range.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_get_frames.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_initialize_frames.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames/_mark_frames_extracted_status.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_frames.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_meta/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_meta/get_crop_template.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_meta/get_endo_roi.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_meta/get_fps.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_meta/initialize_video_specs.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_meta/text_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_meta/video_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/media/video/video_file_segments.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/contraindication/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/disease.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/event.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/examination/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/examination/examination.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/examination/examination_indication.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/examination/examination_time.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/examination/examination_time_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/examination/examination_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/finding/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/finding/finding.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/finding/finding_classification.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/finding/finding_intervention.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/finding/finding_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/hardware/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/hardware/endoscope.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/hardware/endoscopy_processor.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/laboratory/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/laboratory/lab_value.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/medication/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/medication/medication.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/medication/medication_indication.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/medication/medication_indication_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/medication/medication_intake_time.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/medication/medication_schedule.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/organ/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/medication_examples.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/patient_disease.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/patient_event.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/patient_examination.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/patient_examination_indication.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/patient_finding.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/patient_finding_classification.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/patient_finding_intervention.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/patient_lab_sample.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/patient_lab_value.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/patient_medication.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/patient/patient_medication_schedule.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/risk/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/risk/risk.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/medical/risk/risk_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/metadata/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/metadata/frame_ocr_result.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/metadata/model_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/metadata/model_meta_logic.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/metadata/pdf_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/metadata/sensitive_meta_logic.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/metadata/video_prediction_logic.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/metadata/video_prediction_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/distribution/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/distribution/base_value_distribution.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/distribution/date_value_distribution.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/distribution/multiple_categorical_value_distribution.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/distribution/numeric_value_distribution.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/distribution/single_categorical_value_distribution.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/emission/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/emission/emission_factor.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/gender.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/information_source.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/material.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/resource.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/tag.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/transport_route.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/unit.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/other/waste.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/requirement/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/requirement/requirement.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/requirement/requirement_evaluation/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/requirement/requirement_evaluation/get_values.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/requirement/requirement_evaluation/operator_evaluation_models.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/requirement/requirement_evaluation/requirement_type_parser.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/requirement/requirement_operator.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/requirement/requirement_set.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/rule/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/rule/rule.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/rule/rule_applicator.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/rule/rule_attribute_dtype.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/rule/rule_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/rule/ruleset.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/state/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/state/abstract.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/state/audit_ledger.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/state/label_video_segment.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/state/raw_pdf.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/state/sensitive_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/state/video.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/upload_job.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/utils.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/video_metadata.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/models/video_processing.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/queries/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/queries/annotations/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/queries/annotations/legacy.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/queries/sanity/__init_.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/renames.yml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/root_urls.py +0 -0
- {endoreg_db-0.8.2/endoreg_db/utils/case_generator → endoreg_db-0.8.2.2/endoreg_db/schemas}/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/schemas/examination_evaluation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/Frames_NICE_and_PARIS_classifications.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/_old/raw_pdf_meta_validation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/_old/raw_video_meta_validation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/_old/video.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/administration/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/administration/ai/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/administration/ai/active_model.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/administration/ai/ai_model.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/administration/ai/model_type.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/administration/center.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/administration/gender.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/anonymization.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/evaluation/examination_evaluation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/examination/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/examination/base.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/examination/dropdown.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/examination_serializer.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/finding/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/finding/finding.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/finding_classification/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/finding_classification/choice.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/finding_classification/classification.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/label/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/label/image_classification_annotation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/label/label.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/label_video_segment/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/label_video_segment/_lvs_create.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/label_video_segment/_lvs_update.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/label_video_segment/_lvs_validate.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/label_video_segment/label_video_segment.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/label_video_segment/label_video_segment_annotation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/label_video_segment/label_video_segment_update.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/meta/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/meta/pdf_file_meta_extraction.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/meta/report_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/meta/sensitive_meta_detail.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/meta/sensitive_meta_update.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/meta/sensitive_meta_verification.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/meta/video_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/misc/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/misc/file_overview.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/misc/stats.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/misc/translatable_field_mix_in.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/misc/upload_job.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/misc/vop_patient_data.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/patient/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/patient/patient.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/patient/patient_dropdown.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/patient_examination/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/patient_examination/patient_examination.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/patient_finding/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/patient_finding/patient_finding.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/patient_finding/patient_finding_classification.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/patient_finding/patient_finding_detail.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/patient_finding/patient_finding_intervention.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/patient_finding/patient_finding_list.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/patient_finding/patient_finding_write.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/pdf/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/pdf/anony_text_validation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/report/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/report/mixins.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/report/report.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/report/report_list.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/report/secure_file_url.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/requirements/requirement_schema.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/requirements/requirement_sets.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/sensitive_meta_serializer.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/video/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/video/segmentation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/video/video_file_brief.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/video/video_file_detail.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/video/video_file_list.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/video/video_metadata.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/serializers/video/video_processing_history.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/anonymization.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/examination_evaluation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/finding_description_service.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/lookup_service.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/lookup_store.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/polling_coordinator.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/requirements_object.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/segment_sync.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/services/storage_aware_video_processor.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/tasks/upload_tasks.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/tasks/video_ingest.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/tasks/video_processing_tasks.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/templates/admin/patient_finding_intervention.html +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/templates/admin/start_examination.html +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/templates/timeline.html +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/anonymization.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/auth.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/classification.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/examination.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/files.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/label_video_segment_validate.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/label_video_segments.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/media.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/patient.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/report.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/requirements.py +0 -0
- /endoreg_db-0.8.2/endoreg_db/utils/links/__init__.py → /endoreg_db-0.8.2.2/endoreg_db/urls/sensitive_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/stats.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/upload.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls/video.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/urls.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/ai/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/ai/get.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/ai/inference_dataset.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/ai/multilabel_classification_net.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/ai/postprocess.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/ai/predict.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/ai/preprocess.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/calc_duration_seconds.py +0 -0
- {endoreg_db-0.8.2/endoreg_db/utils/pipelines → endoreg_db-0.8.2.2/endoreg_db/utils/case_generator}/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/case_generator/case_generator.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/case_generator/lab_sample_factory.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/case_generator/utils.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/check_video_files.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/cropping.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/dataloader.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/dates.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/env.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/extract_specific_frames.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/file_operations.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/fix_video_path_direct.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/frame_anonymization_utils.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/hashs.py +0 -0
- {endoreg_db-0.8.2/endoreg_db/utils/product → endoreg_db-0.8.2.2/endoreg_db/utils/links}/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/links/requirement_link.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/mime_types.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/names.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/ocr.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/parse_and_generate_yaml.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/permissions.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/pipelines/Readme.md +0 -0
- {endoreg_db-0.8.2/endoreg_db/utils/requirement_operator_logic → endoreg_db-0.8.2.2/endoreg_db/utils/pipelines}/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/pipelines/process_video_dir.py +0 -0
- {endoreg_db-0.8.2/scripts → endoreg_db-0.8.2.2/endoreg_db/utils/product}/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/product/sum_emissions.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/product/sum_weights.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/pydantic_models/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/pydantic_models/db_config.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/requirement_helpers.py +0 -0
- /endoreg_db-0.8.2/endoreg_db/views.py → /endoreg_db-0.8.2.2/endoreg_db/utils/requirement_operator_logic/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/requirement_operator_logic/lab_value_operators.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/requirement_operator_logic/model_evaluators.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/translation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/uuid.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/validate_endo_roi.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/validate_subcategory_dict.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/validate_video_detailed.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/video/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/video/extract_frames.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/video/names.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/video/streaming_processor.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/utils/video/video_splitter.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/Frames_NICE_and_PARIS_classifications_views.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/anonymization/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/anonymization/media_management.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/anonymization/overview.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/auth/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/auth/keycloak.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/examination/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/examination/examination.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/examination/examination_manifest_cache.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/examination/get_finding_classification_choices.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/examination/get_finding_classifications.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/examination/get_findings.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/examination/get_instruments.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/examination/get_interventions.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/finding/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/finding/finding.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/finding/get_classifications.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/finding/get_interventions.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/finding_classification/__init__.py +0 -0
- {endoreg_db-0.8.2/endoreg_db/views/patient_finding → endoreg_db-0.8.2.2/endoreg_db/views/finding_classification}/base.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/finding_classification/finding_classification.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/finding_classification/get_classification_choices.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/label/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/label/label.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/label_video_segment/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/label_video_segment/create_lvs_from_annotation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/label_video_segment/get_lvs_by_name_and_video.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/label_video_segment/label_video_segment.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/label_video_segment/label_video_segment_by_label.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/label_video_segment/label_video_segment_detail.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/label_video_segment/update_lvs_from_annotation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/label_video_segment/validate.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/media/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/media/pdf_media.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/media/segments.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/media/sensitive_metadata.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/media/video_media.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/media/video_segments.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/meta/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/meta/available_files_list.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/meta/report_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/meta/sensitive_meta_detail.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/meta/sensitive_meta_list.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/meta/sensitive_meta_verification.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/misc/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/misc/center.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/misc/csrf.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/misc/gender.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/misc/secure_file_serving_view.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/misc/secure_file_url_view.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/misc/secure_url_validate.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/misc/stats.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/misc/translation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/misc/upload_views.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient/patient.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_examination/DEPRECATED_video_backup.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_examination/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_examination/patient_examination.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_examination/patient_examination_create.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_examination/patient_examination_detail.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_examination/patient_examination_list.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_examination/video.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_finding/__init__.py +0 -0
- /endoreg_db-0.8.2/endoreg_db/views/requirement_lookup/lookup.py → /endoreg_db-0.8.2.2/endoreg_db/views/patient_finding/base.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_finding/patient_finding.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_finding/patient_finding_optimized.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_finding_classification/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_finding_classification/pfc_create.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_finding_location/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_finding_location/pfl_create.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_finding_morphology/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/patient_finding_morphology/pfm_create.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/pdf/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/pdf/pdf_media.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/pdf/pdf_stream_views.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/pdf/reimport.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/report/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/report/report_list.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/report/report_with_secure_url.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/report/start_examination.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/requirement/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/requirement/evaluate.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/requirement/lookup.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/requirement/lookup_store.py +0 -0
- /endoreg_db-0.8.2/endoreg_db/views/requirement_lookup/lookup_store.py → /endoreg_db-0.8.2.2/endoreg_db/views/requirement_lookup/lookup.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/stats/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/stats/stats_views.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/__init__.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/reimport.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/segmentation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/task_status.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/timeline.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/video_analyze.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/video_apply_mask.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/video_correction.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/video_download_processed.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/video_examination_viewset.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/video_media.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/video_meta.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/video_processing_history.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/video_remove_frames.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/video_reprocess.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/endoreg_db/views/video/video_stream.py +0 -0
- /endoreg_db-0.8.2/endoreg_db/views/finding_classification/base.py → /endoreg_db-0.8.2.2/endoreg_db/views.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/env_setup.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/export_db.sh +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/hello.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/import_db.sh +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/install_dependencies.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/logger_conf.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/manage.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/models_table.csv +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/models_table.tsv +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/report_reader +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/requirements-cpu.txt +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/requirements-gpu.txt +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/ruff.toml +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/runtests.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/scripts/demo_frame_cleaning.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/scripts/django_setup.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/scripts/make_conf.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/scripts/models_table.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/scripts/requirement_dev.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/scripts/test_performance_demo.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/scripts/video_splitter.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/test_asset_deletion_debug.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/trace_video_deletion.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/translation.py +0 -0
- {endoreg_db-0.8.2 → endoreg_db-0.8.2.2}/wsgi.py +0 -0
|
@@ -10,7 +10,7 @@ TIME_ZONE=Europe/Berlin
|
|
|
10
10
|
# -------------------------------------------------------------------
|
|
11
11
|
# Paths (relative to repo root unless absolute)
|
|
12
12
|
# -------------------------------------------------------------------
|
|
13
|
-
STORAGE_DIR=storage
|
|
13
|
+
STORAGE_DIR=data/storage
|
|
14
14
|
ASSET_DIR=tests/assets
|
|
15
15
|
STATIC_URL=/static/
|
|
16
16
|
MEDIA_URL=/media/
|
|
@@ -86,4 +86,14 @@ TEST_RUN_FRAME_NUMBER=1000
|
|
|
86
86
|
RUST_BACKTRACE=1
|
|
87
87
|
DJANGO_FFMPEG_EXTRACT_FRAME_BATCHSIZE=500
|
|
88
88
|
VIDEO_ALLOW_FPS_FALLBACK=True
|
|
89
|
-
VIDEO_DEFAULT_FPS=50
|
|
89
|
+
VIDEO_DEFAULT_FPS=50
|
|
90
|
+
|
|
91
|
+
# Caching optimization for huggingface, ollama, etc.
|
|
92
|
+
# CAUTION: SETUP ASSUMES LUXNIX USER 'admin' WITH HOME /home/admin
|
|
93
|
+
|
|
94
|
+
HF_HOME=/home/admin/.cache/huggingface
|
|
95
|
+
HF_HUB_CACHE=/home/admin/.cache/huggingface/hub
|
|
96
|
+
HF_HUB_ENABLE_HF_TRANSFER=1
|
|
97
|
+
OLLAMA_KEEP_ALIVE=4h
|
|
98
|
+
OLLAMA_MODELS=/home/admin/.ollama/models
|
|
99
|
+
TRANSFORMERS_CACHE=/home/admin/.cache/huggingface/hub
|
endoreg_db-0.8.2.2/.git
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
gitdir: ../../.git/modules/libs/endoreg-db
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
## Big Picture
|
|
2
|
+
- **Core app**: Django project lives in `endoreg_db/`, `config/settings/*` drive environments via `endoreg_db.config.env`; root URLs mount the entire API under `/api/`.
|
|
3
|
+
- **Domain**: Focus on ingesting and anonymizing endoscopy videos and clinical reports; `services/video_import.py` handles the full pipeline, mirrored by management commands for CLI workflows.
|
|
4
|
+
- **Data layout**: Working assets stay under `storage/` (media root) and `data/` (raw/test fixtures); `endoreg_db/utils/paths.py` centralizes directories—respect existing folder contracts when writing files.
|
|
5
|
+
- **Knowledge base**: Medical vocabularies live in YAML under `endoreg_db/data/`; management commands in `endoreg_db/management/commands/load_*` hydrate models from those files—keep YAML schema changes aligned with the commands.
|
|
6
|
+
- **Async flows**: `celery_app.py` wires Celery but operational imports use Redis Queue (`endoreg_db/tasks/video_ingest.py`); align new background work with that queue unless migrating everything to Celery.
|
|
7
|
+
|
|
8
|
+
## Environment & Tooling
|
|
9
|
+
- **Platform baseline**: Most development happens on NixOS; run `devenv up` (or allow via `direnv`) before any command so the pinned toolchain and `uv` environment from `devenv.nix` activate.
|
|
10
|
+
- **Dev shell**: Once inside the shell, use `devenv task run env:build` to refresh `.env` via `env_setup.py`; the task relies on `.devenv-vars.json` generated during shell entry.
|
|
11
|
+
- **Python entry**: Always call `uv run ...` (e.g. `uv run python manage.py migrate`) so dependencies resolve inside `.devenv/state/venv`.
|
|
12
|
+
- **Settings switch**: `DJANGO_SETTINGS_MODULE` defaults to `config.settings.dev`; tests use `config.settings.test` which persists an SQLite DB at `data/tests/db/test_db.sqlite3`.
|
|
13
|
+
- **External repos**: LX anonymizer support is expected (`lx-anonymizer>=0.8.2.1`); the Nix enter hook can clone it—check this before debugging anonymization failures.
|
|
14
|
+
|
|
15
|
+
## Testing
|
|
16
|
+
- **Test runner**: Prefer `uv run python runtests.py` to execute curated suites; arguments map to subpackages under `tests/` (e.g. `runtests helpers`).
|
|
17
|
+
- **Pytest direct**: For ad-hoc cases run `uv run pytest tests/path::TestClass -k keyword`; `pytest.ini` already points at the Django settings.
|
|
18
|
+
- **Video guards**: GPU/ffmpeg-heavy specs are behind `RUN_VIDEO_TESTS`; default false—set `RUN_VIDEO_TESTS=true` when required assets in `tests/assets/` are available.
|
|
19
|
+
- **Fixtures**: `tests/conftest.py` configures storage dirs and shared fixtures; extend `endoreg_db/factories/` instead of hand-building ORM objects in tests.
|
|
20
|
+
|
|
21
|
+
## Data & Management Commands
|
|
22
|
+
- **Database seed**: `load_base_db_data` (and other `load_*` commands) populate clinical taxonomies from CSVs under `data/` and `models_table.*`.
|
|
23
|
+
- **Knowledge YAML**: Commands like `load_disease_data`, `load_finding_data`, etc. expect curated YAML in `endoreg_db/data/`; keep keys stable and update factories/tests when the YAML schema shifts.
|
|
24
|
+
- **Import scripts**: Video/report ingestion commands delegate to `services/video_import.py` and `services/pdf_import.py`; reuse the service layer when adding new commands.
|
|
25
|
+
- **Backups**: `export_db.sh` and `import_db.sh` wrap Django `dumpdata/loaddata`—update them instead of reinventing backup flows.
|
|
26
|
+
- **Paths**: `env_setup.py` writes `STORAGE_DIR` into `.env`; new code should resolve paths via `endoreg_db.utils.data_paths` or `config.env_path` to stay relocatable.
|
|
27
|
+
|
|
28
|
+
## API & Presentation
|
|
29
|
+
- **Routing**: `endoreg_db/root_urls.py` includes `endoreg_db/urls/`; keep new REST endpoints inside `endoreg_db/api/views` + serializers and register them in `api_urls.py`.
|
|
30
|
+
- **Translations**: `django-modeltranslation` is preloaded (languages `de`/`en`); text fields need `TranslationOptions` under `endoreg_db/models/**/translation*.py`.
|
|
31
|
+
- **Forms/Admin**: Custom admin and form logic lives in `endoreg_db/admin.py` and `endoreg_db/forms/`; follow existing Bootstrap 5 widgets in `endoreg_db/templates/`.
|
|
32
|
+
- **Security**: Sensitive metadata models in `endoreg_db/models/metadata/` use state objects—preserve their transitions (see `VideoImportService._process_frames_and_metadata`).
|
|
33
|
+
|
|
34
|
+
## Observability & Utilities
|
|
35
|
+
- **Logging**: `config/settings/base.py` defines `TEST_LOGGER_NAMES`; use `logging.getLogger(__name__)` so unit tests capture module-level logs consistently.
|
|
36
|
+
- **Pipelines**: `endoreg_db/utils/pipelines/process_video_dir.py` shows the orchestration pattern—refresh model state after `pipe_1/pipe_2` and reuse its helpers for batch jobs.
|
|
37
|
+
- **Permissions**: Storage-aware helpers live in `endoreg_db/utils/permissions.py` and related services—reuse them instead of manual `os.path` checks.
|
|
38
|
+
- **Path hygiene**: File movement bugs usually stem from bypassing `endoreg_db.utils.paths` or `endoreg_db.config.env`; always derive locations from `data_paths[...]`/`env_path(...)` so raw/anonymized video & PDF paths stay consistent.
|
|
39
|
+
- **RQ usage**: Enqueue jobs via `endoreg_db/tasks/video_ingest.enqueue_video_import`; ensure `RQ_REDIS_URL` is configured and Django is initialized before background execution.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: endoreg-db
|
|
3
|
-
Version: 0.8.2
|
|
3
|
+
Version: 0.8.2.2
|
|
4
4
|
Summary: EndoReg Db Django App
|
|
5
5
|
Project-URL: Homepage, https://info.coloreg.de
|
|
6
6
|
Project-URL: Repository, https://github.com/wg-lux/endoreg-db
|
|
@@ -33,7 +33,7 @@ Requires-Dist: gunicorn>=23.0.0
|
|
|
33
33
|
Requires-Dist: icecream>=2.1.4
|
|
34
34
|
Requires-Dist: librosa==0.11.0
|
|
35
35
|
Requires-Dist: llvmlite>=0.44.0
|
|
36
|
-
Requires-Dist: lx-anonymizer[llm,ocr]>=0.8.2
|
|
36
|
+
Requires-Dist: lx-anonymizer[llm,ocr]>=0.8.2.2
|
|
37
37
|
Requires-Dist: moviepy==2.2.1
|
|
38
38
|
Requires-Dist: mypy>=1.16.0
|
|
39
39
|
Requires-Dist: numpy>=2.2.3
|
|
@@ -23,7 +23,6 @@ let
|
|
|
23
23
|
|
|
24
24
|
buildInputs = with pkgs; [
|
|
25
25
|
python312
|
|
26
|
-
python312Packages.tkinter
|
|
27
26
|
stdenv.cc.cc
|
|
28
27
|
tesseract
|
|
29
28
|
glib
|
|
@@ -37,7 +36,6 @@ let
|
|
|
37
36
|
runtimePackages = with pkgs; [
|
|
38
37
|
stdenv.cc.cc
|
|
39
38
|
ffmpeg-headless.bin
|
|
40
|
-
python312Packages.tkinter
|
|
41
39
|
tesseract
|
|
42
40
|
uvPackage
|
|
43
41
|
libglvnd # Add libglvnd for libGL.so.1
|
|
@@ -48,16 +46,16 @@ let
|
|
|
48
46
|
|
|
49
47
|
_module.args.buildInputs = baseBuildInputs;
|
|
50
48
|
|
|
51
|
-
lx-anonymizer-src = pkgs.fetchGit {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
};
|
|
49
|
+
# lx-anonymizer-src = pkgs.fetchGit {
|
|
50
|
+
# url = "https://github.com/wg-lux/lx-anonymizer";
|
|
51
|
+
# ref = "prototype";
|
|
52
|
+
# # If you know the specific revision, it's better to use rev for reproducibility
|
|
53
|
+
# # rev = "abcdef1234567890";
|
|
54
|
+
# };
|
|
57
55
|
|
|
58
|
-
imports = [
|
|
59
|
-
|
|
60
|
-
];
|
|
56
|
+
# imports = [
|
|
57
|
+
# "${lx-anonymizer-src}/devenv.nix"
|
|
58
|
+
# ];
|
|
61
59
|
|
|
62
60
|
in
|
|
63
61
|
{
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# Test Suite Standardization Blueprint (Draft)
|
|
2
|
+
|
|
3
|
+
_Date: 2025-10-18_
|
|
4
|
+
|
|
5
|
+
## Goals
|
|
6
|
+
- Consistent test layout and naming across all domains.
|
|
7
|
+
- Predictable fixture hierarchy that makes scope explicit and minimises global state.
|
|
8
|
+
- Single cache interface with explicit lifecycle for expensive resources (DB seeds, video assets, ML models).
|
|
9
|
+
- Clear integration guidance for new tests and suites.
|
|
10
|
+
|
|
11
|
+
## Directory & Naming Conventions
|
|
12
|
+
- **Top-level folders:** maintain domain grouping (`tests/<domain>/`) but enforce suffixes: `test_*.py` files only.
|
|
13
|
+
- **Class naming:** use `Test<Subject>` for unit-style suites, `<Feature>Tests` reserved for integration/system cases.
|
|
14
|
+
- **Function naming:** `test_<scenario>_<expected>` pattern; leverage parametrization for variant coverage instead of bespoke fixtures.
|
|
15
|
+
- **Helper modules:** move shared builders/factories under `tests/helpers/` with explicit exports through `__all__`.
|
|
16
|
+
|
|
17
|
+
## Fixture Hierarchy
|
|
18
|
+
- **Session scope (`conftest.py` or plugin):**
|
|
19
|
+
- `base_data`: loads taxonomy/seed data exactly once, returns immutable context object.
|
|
20
|
+
- `cache`: provides namespaced cache manager (see Caching Layer) with `get/set/clear` API.
|
|
21
|
+
- `env_settings`: applies test-specific overrides (MEDIA_ROOT, Celery eager) in a context manager.
|
|
22
|
+
- **Module scope:** domain-specific heavy resources (e.g., processed video file) keyed via cache fixture to avoid duplication.
|
|
23
|
+
- **Function scope:** lightweight factories, API clients, data builders; avoid mutating session objects directly.
|
|
24
|
+
- Use `pytest_plugins = ["tests.plugins.cache", "tests.plugins.fixtures"]` to centralise definitions.
|
|
25
|
+
|
|
26
|
+
## Parametrization & Markers
|
|
27
|
+
- Prefer `@pytest.mark.parametrize` over hand-written loops.
|
|
28
|
+
- Define common markers: `slow`, `video`, `integration`, `requires_gpu`. Document skip conditions in `pytest.ini`.
|
|
29
|
+
- Implement marker-aware skip logic in fixtures rather than environment variable spaghetti.
|
|
30
|
+
|
|
31
|
+
## Caching Layer Design
|
|
32
|
+
- Introduce `tests/plugins/cache.py` defining a `CacheManager` with:
|
|
33
|
+
- `get(namespace, key, default=None)` / `set(namespace, key, value)` APIs.
|
|
34
|
+
- Lazy initialisation backed by `functools.lru_cache` for in-memory usage plus optional `diskcache` fallback if available.
|
|
35
|
+
- `invalidate(namespace, key=None)` hooks invoked via pytest `request.addfinalizer` to avoid cross-test leaks.
|
|
36
|
+
- Session-scoped `cache` fixture returns a manager instance; module/functional fixtures request namespaces (`cache.namespace("video")`).
|
|
37
|
+
- Provide helper `cache.memoize(namespace)` decorator to wrap expensive factory functions (e.g., processed video creation).
|
|
38
|
+
- Replace module-level globals (`_base_data_loaded`, `_session_video_file`) by storing state under deterministic keys, e.g. `cache.set("video", "processed_default", value)`.
|
|
39
|
+
- Emit debug logging when cache hits/misses occur during `-vv` runs to aid troubleshooting.
|
|
40
|
+
|
|
41
|
+
## Documentation & Governance
|
|
42
|
+
- Document expectations in `docs/testing/TEST_GUIDELINES.md` (to be created).
|
|
43
|
+
- Add pre-commit lint to fail if non-conforming test module names detected.
|
|
44
|
+
- Establish codeowners for `tests/` to review adherence.
|
|
45
|
+
|
|
46
|
+
## Next Steps
|
|
47
|
+
1. Implement prototype cache manager and fixtures (Step 3 of action plan).
|
|
48
|
+
- Create `tests/plugins/cache.py` and `tests/plugins/__init__.py` exporting `pytest_plugins`.
|
|
49
|
+
- Update `pytest.ini` to register default markers (`slow`, `video`, `integration`, `requires_gpu`).
|
|
50
|
+
- Refactor `tests/conftest.py` to consume the new `cache` fixture and remove global caches.
|
|
51
|
+
2. Migrate `tests/media/video` to new fixture hierarchy as pilot (Step 4).
|
|
52
|
+
- Introduce module-scoped fixtures leveraging `cache.namespace("video")` and ensure cleanup via invalidation hooks.
|
|
53
|
+
- Wire helper modules such as `tests/helpers/optimized_video_fixtures.py` into dedicated namespaces via `configure_cache` to eliminate legacy globals.
|
|
54
|
+
- ✅ Segment CRUD suite now runs against a lightweight cached video stub; validate similar patterns for services tests next.
|
|
55
|
+
- ✅ Base data loader now provisions stub AI model metadata (behind `USE_STUB_MODEL_META=true`) so `load_default_ai_model` no longer copies large checkpoints during fast suites.
|
|
56
|
+
- Current end-to-end runtime still ~660 s; profile durations to locate the next hotspots.
|
|
57
|
+
- Measure runtime improvements and document findings in `docs/testing/TEST_GUIDELINES.md`.
|
|
58
|
+
3. Update developer guide with blueprint summary once pilot validated.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Test Suite Review (2025-10-18)
|
|
2
|
+
|
|
3
|
+
## Module Inventory Snapshot
|
|
4
|
+
- `tests/administration/*`: CRUD/admin scenarios for centers, shifts, qualifications.
|
|
5
|
+
- `tests/assets/*`: Large artefact fixtures (models, JSON) consumed by video/import suites.
|
|
6
|
+
- `tests/dataloader/test_dataloader.py`: Exercises custom dataset ingestion helpers.
|
|
7
|
+
- `tests/environment/test_env.py`: Validates env wiring and settings overrides.
|
|
8
|
+
- `tests/examination/*`: Domain tests for examination models and serializers.
|
|
9
|
+
- `tests/fileserver/*`: Covers WhiteNoise static file handling.
|
|
10
|
+
- `tests/finding/*`: Disease/finding taxonomy loading and serializer behaviour.
|
|
11
|
+
- `tests/helpers/*`: Fixture factories plus integration smoke tests for helper modules.
|
|
12
|
+
- `tests/legacy/*`: Regression coverage for legacy data migration utilities.
|
|
13
|
+
- `tests/media/video/*`: Heavy video import/anonymization flows (long runtime, GPU/ffmpeg dependencies).
|
|
14
|
+
- `tests/models/*`: ORM and state machine regression coverage.
|
|
15
|
+
- `tests/pipelines/*`: Orchestration pipelines and process directory flows.
|
|
16
|
+
- `tests/requirement/*`: Requirement rule matrix validation; high combinatorial count.
|
|
17
|
+
- `tests/services/*`: Service-layer orchestration smoke tests (RQ, anonymizer, imports).
|
|
18
|
+
|
|
19
|
+
## Shared Fixture & Caching Landscape
|
|
20
|
+
- `tests/conftest.py` defines global caches (`_session_cache`, `_session_video_file`, `_base_data_loaded`) implemented via module-level globals; invalidation is implicit and hard to reason about during parametrised runs.
|
|
21
|
+
- Base taxonomy loaders (`load_*`) execute inside `base_db_data` fixture with a function scope guard backed by `global _base_data_loaded`, mixing fixture scopes and custom caching.
|
|
22
|
+
- Video fixtures (`sample_video_file`, `processed_video_file`) key off environment flags (`RUN_VIDEO_TESTS`, `SKIP_EXPENSIVE_TESTS`) with ad-hoc globals; repeated suite invocations in the same process can leak cached state.
|
|
23
|
+
- Session-level DB optimisations (`optimize_database_queries`) execute per-test (autouse) rather than establishing a single shared connection configuration.
|
|
24
|
+
- `_session_cache` remains unused across the suite, and several modules re-create expensive assets (e.g., YAML loads, JSON fixtures) without a shared cache hook.
|
|
25
|
+
|
|
26
|
+
## Pain Points Observed During Full-Suite Runs
|
|
27
|
+
- Environment flag handling (`RUN_VIDEO_TESTS`) is inconsistent: default expression evaluates to `False` even when explicitly enabling, leading to skipped media tests locally but executed in CI.
|
|
28
|
+
- Global caches are not namespaced by test parameters; when parametrised tests mutate cached video objects, downstream tests see dirty state, causing non-deterministic failures in full runs.
|
|
29
|
+
- Multiple suites duplicate fixture logic (e.g., default center/processor creation) instead of relying on `tests.helpers.default_objects`, increasing setup time and risking drift.
|
|
30
|
+
- Several long-running suites (`tests/media/video`, `tests/pipelines`) hit the filesystem repeatedly because cached paths live outside a central storage coordinator; temp directories are re-created per module.
|
|
31
|
+
- Lack of a documented test layout encourages bespoke fixtures per module, making it difficult to standardise teardown behaviour and to introduce suite-wide caching.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import random
|
|
2
|
+
from typing import Optional
|
|
2
3
|
from endoreg_db.models import (
|
|
3
4
|
Center,
|
|
4
5
|
Gender,
|
|
@@ -17,6 +18,7 @@ import shutil
|
|
|
17
18
|
from pathlib import Path
|
|
18
19
|
from django.conf import settings # Import settings
|
|
19
20
|
from django.core.files.storage import default_storage # Import default storage
|
|
21
|
+
from django.db.models.fields.files import FieldFile
|
|
20
22
|
|
|
21
23
|
from endoreg_db.utils import (
|
|
22
24
|
create_mock_patient_name,
|
|
@@ -44,6 +46,10 @@ DEFAULT_INDICATIONS = [
|
|
|
44
46
|
DEFAULT_SEGMENTATION_MODEL_NAME = "image_multilabel_classification_colonoscopy_default"
|
|
45
47
|
|
|
46
48
|
DEFAULT_GENDER = "unknown"
|
|
49
|
+
DEFAULT_PATIENT_FIRST_NAME = "TestFirst"
|
|
50
|
+
DEFAULT_PATIENT_LAST_NAME = "TestLast"
|
|
51
|
+
DEFAULT_PATIENT_GENDER_NAME = "female"
|
|
52
|
+
DEFAULT_PATIENT_BIRTH_DATE = date(1970, 1, 1)
|
|
47
53
|
|
|
48
54
|
def get_information_source_prediction():
|
|
49
55
|
"""
|
|
@@ -170,33 +176,41 @@ def get_default_center() -> Center:
|
|
|
170
176
|
return center
|
|
171
177
|
|
|
172
178
|
def generate_patient(**kwargs) -> Patient:
|
|
173
|
-
"""
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
# Set default values
|
|
185
|
-
gender = kwargs.get("gender", get_random_gender())
|
|
186
|
-
if not isinstance(gender, Gender):
|
|
179
|
+
"""Create a Patient with deterministic defaults unless ``randomize=True`` is supplied."""
|
|
180
|
+
|
|
181
|
+
randomize = kwargs.pop("randomize", False)
|
|
182
|
+
|
|
183
|
+
gender = kwargs.get("gender")
|
|
184
|
+
if gender is None:
|
|
185
|
+
if randomize:
|
|
186
|
+
gender = get_random_gender()
|
|
187
|
+
else:
|
|
188
|
+
gender = Gender.objects.get(name=DEFAULT_PATIENT_GENDER_NAME)
|
|
189
|
+
elif not isinstance(gender, Gender):
|
|
187
190
|
gender = Gender.objects.get(name=gender)
|
|
188
191
|
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
first_name
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
192
|
+
first_name = kwargs.get("first_name")
|
|
193
|
+
last_name = kwargs.get("last_name")
|
|
194
|
+
if first_name is None or last_name is None:
|
|
195
|
+
if randomize:
|
|
196
|
+
generated_first, generated_last = create_mock_patient_name(gender=gender.name)
|
|
197
|
+
else:
|
|
198
|
+
generated_first, generated_last = DEFAULT_PATIENT_FIRST_NAME, DEFAULT_PATIENT_LAST_NAME
|
|
199
|
+
first_name = first_name or generated_first
|
|
200
|
+
last_name = last_name or generated_last
|
|
201
|
+
|
|
202
|
+
dob = kwargs.get("dob")
|
|
203
|
+
if dob is None:
|
|
204
|
+
birth_date = kwargs.get("birth_date", DEFAULT_PATIENT_BIRTH_DATE)
|
|
205
|
+
if isinstance(birth_date, date):
|
|
206
|
+
dob = birth_date
|
|
207
|
+
else:
|
|
208
|
+
dob = date.fromisoformat(str(birth_date))
|
|
209
|
+
|
|
210
|
+
center = kwargs.get("center")
|
|
197
211
|
if center is None:
|
|
198
212
|
center = get_default_center()
|
|
199
|
-
|
|
213
|
+
elif not isinstance(center, Center):
|
|
200
214
|
center = Center.objects.get(name=center)
|
|
201
215
|
|
|
202
216
|
patient = Patient(
|
|
@@ -261,6 +275,7 @@ def get_default_egd_pdf():
|
|
|
261
275
|
shutil.copy(egd_path, temp_file_path)
|
|
262
276
|
|
|
263
277
|
pdf_file = None
|
|
278
|
+
file_field: Optional[FieldFile] = None
|
|
264
279
|
try:
|
|
265
280
|
# Create the PDF record using the temporary file.
|
|
266
281
|
# delete_source=True will ensure temp_file_path is deleted by create_from_file
|
|
@@ -275,8 +290,11 @@ def get_default_egd_pdf():
|
|
|
275
290
|
raise RuntimeError("Failed to create PDF file object")
|
|
276
291
|
|
|
277
292
|
# Use storage API to check existence
|
|
278
|
-
|
|
279
|
-
|
|
293
|
+
file_field = pdf_file.file
|
|
294
|
+
if not isinstance(file_field, FieldFile):
|
|
295
|
+
raise RuntimeError("RawPdfFile.file did not return a FieldFile instance")
|
|
296
|
+
if not default_storage.exists(file_field.path):
|
|
297
|
+
raise RuntimeError(f"PDF file does not exist in storage at {file_field.path}")
|
|
280
298
|
|
|
281
299
|
# Check that the source temp file was deleted
|
|
282
300
|
if temp_file_path.exists():
|
|
@@ -308,10 +326,11 @@ def get_default_egd_pdf():
|
|
|
308
326
|
|
|
309
327
|
# pdf_file.file.path might fail if storage doesn't support direct paths (like S3)
|
|
310
328
|
# Prefer using storage API for checks. Logging path if available.
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
329
|
+
if file_field is not None:
|
|
330
|
+
try:
|
|
331
|
+
logger.info(f"PDF file created: {file_field.name}, Path: {file_field.path}")
|
|
332
|
+
except NotImplementedError:
|
|
333
|
+
logger.info(f"PDF file created: {file_field.name}, Path: (Not available from storage)")
|
|
315
334
|
|
|
316
335
|
|
|
317
336
|
return pdf_file
|
|
@@ -294,10 +294,12 @@ class Command(BaseCommand):
|
|
|
294
294
|
|
|
295
295
|
# Updated to handle new return signature (path, metadata)
|
|
296
296
|
cleaned_video_path, extracted_metadata = frame_cleaner.clean_video(
|
|
297
|
-
Path(video_file_obj.raw_file.path),
|
|
297
|
+
video_path=Path(video_file_obj.raw_file.path),
|
|
298
298
|
video_file_obj=video_file_obj, # Pass VideoFile object to store metadata
|
|
299
|
-
|
|
300
|
-
|
|
299
|
+
device_name=processor_name,
|
|
300
|
+
endoscope_roi=video_file_obj.processor.get_roi_endoscope_image if video_file_obj.processor else None,
|
|
301
|
+
output_path=video_file_obj.get_processed_file_path(),
|
|
302
|
+
technique="mask_overlay" # Use mask overlay technique as default, if not set this will be inferred.
|
|
301
303
|
)
|
|
302
304
|
|
|
303
305
|
# Save the cleaned video using Django's FileField
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
from django.db import migrations, models
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def populate_display_name(apps, schema_editor):
|
|
5
|
+
Center = apps.get_model('endoreg_db', 'Center')
|
|
6
|
+
for center in Center.objects.all():
|
|
7
|
+
if not center.display_name:
|
|
8
|
+
center.display_name = center.name
|
|
9
|
+
center.save(update_fields=['display_name'])
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def reset_display_name(apps, schema_editor):
|
|
13
|
+
Center = apps.get_model('endoreg_db', 'Center')
|
|
14
|
+
Center.objects.update(display_name='')
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Migration(migrations.Migration):
|
|
18
|
+
|
|
19
|
+
dependencies = [
|
|
20
|
+
('endoreg_db', '0002_add_video_correction_models'),
|
|
21
|
+
]
|
|
22
|
+
|
|
23
|
+
operations = [
|
|
24
|
+
migrations.AddField(
|
|
25
|
+
model_name='center',
|
|
26
|
+
name='display_name',
|
|
27
|
+
field=models.CharField(blank=True, default='', max_length=255),
|
|
28
|
+
),
|
|
29
|
+
migrations.RunPython(populate_display_name, reset_display_name),
|
|
30
|
+
]
|
|
@@ -19,6 +19,7 @@ class Center(models.Model):
|
|
|
19
19
|
|
|
20
20
|
# import_id = models.IntegerField(primary_key=True)
|
|
21
21
|
name = models.CharField(max_length=255)
|
|
22
|
+
display_name = models.CharField(max_length=255, blank=True, default="")
|
|
22
23
|
|
|
23
24
|
first_names = models.ManyToManyField(
|
|
24
25
|
to="FirstName",
|
|
@@ -45,8 +46,13 @@ class Center(models.Model):
|
|
|
45
46
|
def natural_key(self) -> tuple[str]:
|
|
46
47
|
return (self.name,)
|
|
47
48
|
|
|
49
|
+
def save(self, *args, **kwargs):
|
|
50
|
+
if not self.display_name:
|
|
51
|
+
self.display_name = self.name
|
|
52
|
+
super().save(*args, **kwargs)
|
|
53
|
+
|
|
48
54
|
def __str__(self) -> str:
|
|
49
|
-
return str(object=self.name)
|
|
55
|
+
return str(object=self.display_name or self.name)
|
|
50
56
|
|
|
51
57
|
def get_first_names(self):
|
|
52
58
|
return self.first_names.all()
|
|
@@ -383,37 +383,42 @@ class RawPdfFile(models.Model):
|
|
|
383
383
|
new_file_name, _uuid = get_uuid_filename(file_path)
|
|
384
384
|
logger.info(f"Generated new filename: {new_file_name}")
|
|
385
385
|
|
|
386
|
-
# Create model instance
|
|
387
|
-
raw_pdf = cls(
|
|
388
|
-
pdf_hash=pdf_hash,
|
|
389
|
-
center=center,
|
|
390
|
-
)
|
|
391
|
-
|
|
392
|
-
# Assign file using Django's File wrapper and save
|
|
386
|
+
# Create model instance via manager so creation can be intercepted/mocked during tests
|
|
393
387
|
try:
|
|
394
388
|
with file_path.open("rb") as f:
|
|
395
389
|
django_file = File(f, name=new_file_name)
|
|
396
|
-
raw_pdf
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
390
|
+
raw_pdf = cls.objects.create(
|
|
391
|
+
pdf_hash=pdf_hash,
|
|
392
|
+
center=center,
|
|
393
|
+
file=django_file,
|
|
394
|
+
)
|
|
395
|
+
|
|
396
|
+
_file = raw_pdf.file
|
|
397
|
+
assert _file is not None
|
|
398
|
+
logger.info(
|
|
399
|
+
"Created and saved new RawPdfFile %s with file %s", raw_pdf.pk, _file.name
|
|
400
|
+
)
|
|
401
|
+
|
|
402
|
+
if not _file.storage.exists(_file.name):
|
|
403
|
+
logger.error(
|
|
404
|
+
"File was not saved correctly to storage path %s after model save.",
|
|
405
|
+
_file.name,
|
|
406
|
+
)
|
|
407
|
+
raise IOError(
|
|
408
|
+
f"File not found at expected storage path after save: {_file.name}"
|
|
409
|
+
)
|
|
410
|
+
|
|
411
|
+
try:
|
|
412
|
+
logger.info("File saved to absolute path: %s", _file.path)
|
|
413
|
+
except NotImplementedError:
|
|
414
|
+
logger.info(
|
|
415
|
+
"File saved to storage path: %s (Absolute path not available from storage)",
|
|
416
|
+
_file.name,
|
|
417
|
+
)
|
|
412
418
|
|
|
413
419
|
except Exception as e:
|
|
414
|
-
logger.error(
|
|
415
|
-
|
|
416
|
-
raise # Re-raise the exception
|
|
420
|
+
logger.error("Error processing or saving file %s for new record: %s", file_path, e)
|
|
421
|
+
raise
|
|
417
422
|
|
|
418
423
|
# Delete source file *after* successful save and verification
|
|
419
424
|
if delete_source:
|
|
@@ -6,7 +6,8 @@ from typing import TYPE_CHECKING, Optional, Type
|
|
|
6
6
|
|
|
7
7
|
# Import the new exceptions from the correct path
|
|
8
8
|
from endoreg_db.exceptions import InsufficientStorageError, TranscodingError
|
|
9
|
-
from ...utils import VIDEO_DIR, TMP_VIDEO_DIR
|
|
9
|
+
from ...utils import VIDEO_DIR, TMP_VIDEO_DIR
|
|
10
|
+
from importlib import import_module
|
|
10
11
|
|
|
11
12
|
if TYPE_CHECKING:
|
|
12
13
|
from endoreg_db.models import VideoFile
|
|
@@ -170,6 +171,22 @@ def atomic_move_with_fallback(src_path: Path, dst_path: Path) -> bool:
|
|
|
170
171
|
raise
|
|
171
172
|
|
|
172
173
|
|
|
174
|
+
def _get_data_paths():
|
|
175
|
+
"""Return the current data_paths mapping (supports patched instances in tests)."""
|
|
176
|
+
utils_module = import_module("endoreg_db.utils")
|
|
177
|
+
return getattr(utils_module, "data_paths")
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
def _get_path(mapping, key, default):
|
|
181
|
+
"""Access mapping by key using __getitem__ so MagicMocks with side effects work."""
|
|
182
|
+
if mapping is None:
|
|
183
|
+
return default
|
|
184
|
+
try:
|
|
185
|
+
return mapping[key]
|
|
186
|
+
except (KeyError, TypeError):
|
|
187
|
+
return default
|
|
188
|
+
|
|
189
|
+
|
|
173
190
|
def _create_from_file(
|
|
174
191
|
cls_model: Type["VideoFile"],
|
|
175
192
|
file_path: Path,
|
|
@@ -199,8 +216,12 @@ def _create_from_file(
|
|
|
199
216
|
|
|
200
217
|
try:
|
|
201
218
|
# Ensure we operate under the canonical video path root
|
|
202
|
-
|
|
203
|
-
|
|
219
|
+
data_paths = _get_data_paths()
|
|
220
|
+
resolved_video_dir = _get_path(data_paths, "video", video_dir)
|
|
221
|
+
video_dir = Path(resolved_video_dir)
|
|
222
|
+
storage_root_default = Path(video_dir).parent
|
|
223
|
+
resolved_storage_root = _get_path(data_paths, "storage", storage_root_default)
|
|
224
|
+
storage_root = Path(resolved_storage_root)
|
|
204
225
|
storage_root.mkdir(parents=True, exist_ok=True)
|
|
205
226
|
|
|
206
227
|
# Check storage capacity before starting any work
|
|
@@ -300,7 +321,8 @@ def _create_from_file(
|
|
|
300
321
|
# 8. Create the VideoFile instance
|
|
301
322
|
logger.info("Creating new VideoFile instance with UUID: %s", uuid_val)
|
|
302
323
|
# Store FileField path relative to storage root including the videos prefix
|
|
303
|
-
|
|
324
|
+
storage_base = Path(_get_path(data_paths, "storage", final_storage_path.parent))
|
|
325
|
+
relative_name = (final_storage_path.relative_to(storage_base)).as_posix()
|
|
304
326
|
video = cls_model(
|
|
305
327
|
uuid=uuid_val,
|
|
306
328
|
raw_file=relative_name,
|