@photivra/engine 0.6.0 → 1.0.0
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.
- package/AGENTS.md +674 -0
- package/CHANGELOG.md +186 -0
- package/CITATION.cff +1 -1
- package/CONTRIBUTING.md +76 -0
- package/DCO +33 -0
- package/NODE_SUPPORT.md +37 -0
- package/NOTICE +2 -0
- package/README.md +138 -71
- package/SECURITY.md +55 -0
- package/THIRD_PARTY.md +63 -0
- package/dist/camera/equivalent-focal-length.d.ts +9 -0
- package/dist/camera/equivalent-focal-length.d.ts.map +1 -1
- package/dist/camera/equivalent-focal-length.js +9 -0
- package/dist/camera/equivalent-focal-length.js.map +1 -1
- package/dist/camera/field-of-view.d.ts +13 -0
- package/dist/camera/field-of-view.d.ts.map +1 -1
- package/dist/camera/field-of-view.js +13 -0
- package/dist/camera/field-of-view.js.map +1 -1
- package/dist/camera/projected-object-size.d.ts +8 -0
- package/dist/camera/projected-object-size.d.ts.map +1 -1
- package/dist/camera/projected-object-size.js +8 -0
- package/dist/camera/projected-object-size.js.map +1 -1
- package/dist/capture/capture-export-metadata.d.ts +60 -0
- package/dist/capture/capture-export-metadata.d.ts.map +1 -0
- package/dist/capture/capture-export-metadata.js +62 -0
- package/dist/capture/capture-export-metadata.js.map +1 -0
- package/dist/capture/environment-raw-producer.d.ts +55 -0
- package/dist/capture/environment-raw-producer.d.ts.map +1 -0
- package/dist/capture/environment-raw-producer.js +88 -0
- package/dist/capture/environment-raw-producer.js.map +1 -0
- package/dist/capture/export-jpeg.d.ts +12 -0
- package/dist/capture/export-jpeg.d.ts.map +1 -0
- package/dist/capture/export-jpeg.js +126 -0
- package/dist/capture/export-jpeg.js.map +1 -0
- package/dist/capture/export-tiff.d.ts +45 -0
- package/dist/capture/export-tiff.d.ts.map +1 -0
- package/dist/capture/export-tiff.js +129 -0
- package/dist/capture/export-tiff.js.map +1 -0
- package/dist/capture/focus-control.d.ts +210 -0
- package/dist/capture/focus-control.d.ts.map +1 -0
- package/dist/capture/focus-control.js +664 -0
- package/dist/capture/focus-control.js.map +1 -0
- package/dist/capture/linear-encoding.d.ts +59 -0
- package/dist/capture/linear-encoding.d.ts.map +1 -0
- package/dist/capture/linear-encoding.js +98 -0
- package/dist/capture/linear-encoding.js.map +1 -0
- package/dist/capture/photographic-export.d.ts +135 -0
- package/dist/capture/photographic-export.d.ts.map +1 -0
- package/dist/capture/photographic-export.js +273 -0
- package/dist/capture/photographic-export.js.map +1 -0
- package/dist/capture/raw-frame-limits.d.ts +12 -0
- package/dist/capture/raw-frame-limits.d.ts.map +1 -0
- package/dist/capture/raw-frame-limits.js +13 -0
- package/dist/capture/raw-frame-limits.js.map +1 -0
- package/dist/capture/raw-frame-reconstruction.d.ts +48 -0
- package/dist/capture/raw-frame-reconstruction.d.ts.map +1 -0
- package/dist/capture/raw-frame-reconstruction.js +146 -0
- package/dist/capture/raw-frame-reconstruction.js.map +1 -0
- package/dist/capture/release-sequence.d.ts +120 -0
- package/dist/capture/release-sequence.d.ts.map +1 -0
- package/dist/capture/release-sequence.js +446 -0
- package/dist/capture/release-sequence.js.map +1 -0
- package/dist/capture/sensor-raw-frame.d.ts +34 -0
- package/dist/capture/sensor-raw-frame.d.ts.map +1 -0
- package/dist/capture/sensor-raw-frame.js +106 -0
- package/dist/capture/sensor-raw-frame.js.map +1 -0
- package/dist/capture/sensor-raw-producer.d.ts +51 -0
- package/dist/capture/sensor-raw-producer.d.ts.map +1 -0
- package/dist/capture/sensor-raw-producer.js +235 -0
- package/dist/capture/sensor-raw-producer.js.map +1 -0
- package/dist/capture/simulated-capture.d.ts +125 -0
- package/dist/capture/simulated-capture.d.ts.map +1 -0
- package/dist/capture/simulated-capture.js +248 -0
- package/dist/capture/simulated-capture.js.map +1 -0
- package/dist/color/capture-color.d.ts +73 -0
- package/dist/color/capture-color.d.ts.map +1 -0
- package/dist/color/capture-color.js +145 -0
- package/dist/color/capture-color.js.map +1 -0
- package/dist/color/sensor-color-development.d.ts +23 -0
- package/dist/color/sensor-color-development.d.ts.map +1 -0
- package/dist/color/sensor-color-development.js +56 -0
- package/dist/color/sensor-color-development.js.map +1 -0
- package/dist/color/white-balance.d.ts +175 -0
- package/dist/color/white-balance.d.ts.map +1 -0
- package/dist/color/white-balance.js +606 -0
- package/dist/color/white-balance.js.map +1 -0
- package/dist/composition/image-formation-plan.d.ts +481 -0
- package/dist/composition/image-formation-plan.d.ts.map +1 -0
- package/dist/composition/image-formation-plan.js +2499 -0
- package/dist/composition/image-formation-plan.js.map +1 -0
- package/dist/composition/plan-consumer.d.ts +53 -0
- package/dist/composition/plan-consumer.d.ts.map +1 -0
- package/dist/composition/plan-consumer.js +119 -0
- package/dist/composition/plan-consumer.js.map +1 -0
- package/dist/core/calculation-result.d.ts.map +1 -1
- package/dist/core/calculation-result.js +6 -0
- package/dist/core/calculation-result.js.map +1 -1
- package/dist/core/canonical-json.d.ts +18 -0
- package/dist/core/canonical-json.d.ts.map +1 -0
- package/dist/core/canonical-json.js +44 -0
- package/dist/core/canonical-json.js.map +1 -0
- package/dist/core/configuration-error.d.ts +6 -0
- package/dist/core/configuration-error.d.ts.map +1 -1
- package/dist/core/configuration-error.js +6 -0
- package/dist/core/configuration-error.js.map +1 -1
- package/dist/core/evidence-provenance.d.ts +6 -0
- package/dist/core/evidence-provenance.d.ts.map +1 -1
- package/dist/core/evidence-provenance.js +7 -0
- package/dist/core/evidence-provenance.js.map +1 -1
- package/dist/core/image-formation.d.ts +9 -3
- package/dist/core/image-formation.d.ts.map +1 -1
- package/dist/core/image-formation.js +29 -5
- package/dist/core/image-formation.js.map +1 -1
- package/dist/core/owned-data.d.ts +25 -0
- package/dist/core/owned-data.d.ts.map +1 -0
- package/dist/core/owned-data.js +34 -0
- package/dist/core/owned-data.js.map +1 -0
- package/dist/core/record-validation.d.ts +17 -0
- package/dist/core/record-validation.d.ts.map +1 -0
- package/dist/core/record-validation.js +44 -0
- package/dist/core/record-validation.js.map +1 -0
- package/dist/core/scientific-assurance.d.ts +101 -0
- package/dist/core/scientific-assurance.d.ts.map +1 -0
- package/dist/core/scientific-assurance.js +301 -0
- package/dist/core/scientific-assurance.js.map +1 -0
- package/dist/core/spectral-composition.d.ts +106 -0
- package/dist/core/spectral-composition.d.ts.map +1 -0
- package/dist/core/spectral-composition.js +334 -0
- package/dist/core/spectral-composition.js.map +1 -0
- package/dist/core/spectral.d.ts +34 -0
- package/dist/core/spectral.d.ts.map +1 -0
- package/dist/core/spectral.js +57 -0
- package/dist/core/spectral.js.map +1 -0
- package/dist/core/validation.d.ts +6 -0
- package/dist/core/validation.d.ts.map +1 -1
- package/dist/core/validation.js +6 -0
- package/dist/core/validation.js.map +1 -1
- package/dist/core/version.d.ts +14 -0
- package/dist/core/version.d.ts.map +1 -0
- package/dist/core/version.js +15 -0
- package/dist/core/version.js.map +1 -0
- package/dist/equipment/exposure-capabilities.d.ts +125 -0
- package/dist/equipment/exposure-capabilities.d.ts.map +1 -0
- package/dist/equipment/exposure-capabilities.js +391 -0
- package/dist/equipment/exposure-capabilities.js.map +1 -0
- package/dist/equipment/generic-tier-assets.d.ts +82 -0
- package/dist/equipment/generic-tier-assets.d.ts.map +1 -0
- package/dist/equipment/generic-tier-assets.js +119 -0
- package/dist/equipment/generic-tier-assets.js.map +1 -0
- package/dist/equipment/generic-tier-presets.d.ts +57 -0
- package/dist/equipment/generic-tier-presets.d.ts.map +1 -0
- package/dist/equipment/generic-tier-presets.js +122 -0
- package/dist/equipment/generic-tier-presets.js.map +1 -0
- package/dist/equipment/iso-capabilities.d.ts +143 -0
- package/dist/equipment/iso-capabilities.d.ts.map +1 -0
- package/dist/equipment/iso-capabilities.js +578 -0
- package/dist/equipment/iso-capabilities.js.map +1 -0
- package/dist/equipment/metering-capabilities.d.ts +58 -0
- package/dist/equipment/metering-capabilities.d.ts.map +1 -0
- package/dist/equipment/metering-capabilities.js +151 -0
- package/dist/equipment/metering-capabilities.js.map +1 -0
- package/dist/equipment/release-capabilities.d.ts +33 -0
- package/dist/equipment/release-capabilities.d.ts.map +1 -0
- package/dist/equipment/release-capabilities.js +176 -0
- package/dist/equipment/release-capabilities.js.map +1 -0
- package/dist/exposure/exposure-duration-control.d.ts +72 -0
- package/dist/exposure/exposure-duration-control.d.ts.map +1 -0
- package/dist/exposure/exposure-duration-control.js +161 -0
- package/dist/exposure/exposure-duration-control.js.map +1 -0
- package/dist/exposure/exposure-mode-resolver.d.ts +637 -0
- package/dist/exposure/exposure-mode-resolver.d.ts.map +1 -0
- package/dist/exposure/exposure-mode-resolver.js +1905 -0
- package/dist/exposure/exposure-mode-resolver.js.map +1 -0
- package/dist/exposure/exposure.d.ts +8 -0
- package/dist/exposure/exposure.d.ts.map +1 -1
- package/dist/exposure/exposure.js +8 -0
- package/dist/exposure/exposure.js.map +1 -1
- package/dist/exposure/flash.d.ts +179 -0
- package/dist/exposure/flash.d.ts.map +1 -0
- package/dist/exposure/flash.js +644 -0
- package/dist/exposure/flash.js.map +1 -0
- package/dist/exposure/metering-scene-radiance.d.ts +72 -0
- package/dist/exposure/metering-scene-radiance.d.ts.map +1 -0
- package/dist/exposure/metering-scene-radiance.js +222 -0
- package/dist/exposure/metering-scene-radiance.js.map +1 -0
- package/dist/exposure/metering-target.d.ts +67 -0
- package/dist/exposure/metering-target.d.ts.map +1 -0
- package/dist/exposure/metering-target.js +265 -0
- package/dist/exposure/metering-target.js.map +1 -0
- package/dist/exposure/metering-temporal.d.ts +76 -0
- package/dist/exposure/metering-temporal.d.ts.map +1 -0
- package/dist/exposure/metering-temporal.js +210 -0
- package/dist/exposure/metering-temporal.js.map +1 -0
- package/dist/exposure/metering.d.ts +124 -0
- package/dist/exposure/metering.d.ts.map +1 -0
- package/dist/exposure/metering.js +422 -0
- package/dist/exposure/metering.js.map +1 -0
- package/dist/exposure/program-line.d.ts +29 -0
- package/dist/exposure/program-line.d.ts.map +1 -0
- package/dist/exposure/program-line.js +126 -0
- package/dist/exposure/program-line.js.map +1 -0
- package/dist/index.d.ts +87 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +85 -6
- package/dist/index.js.map +1 -1
- package/dist/motion/camera-rotation.d.ts +16 -0
- package/dist/motion/camera-rotation.d.ts.map +1 -1
- package/dist/motion/camera-rotation.js +16 -0
- package/dist/motion/camera-rotation.js.map +1 -1
- package/dist/motion/capture-rotation-inverse-mapping.d.ts +13 -0
- package/dist/motion/capture-rotation-inverse-mapping.d.ts.map +1 -1
- package/dist/motion/capture-rotation-inverse-mapping.js +13 -0
- package/dist/motion/capture-rotation-inverse-mapping.js.map +1 -1
- package/dist/motion/capture-rotation-temporal-quadrature.d.ts +15 -0
- package/dist/motion/capture-rotation-temporal-quadrature.d.ts.map +1 -1
- package/dist/motion/capture-rotation-temporal-quadrature.js +15 -0
- package/dist/motion/capture-rotation-temporal-quadrature.js.map +1 -1
- package/dist/motion/capture-rotation-trajectory.d.ts +15 -0
- package/dist/motion/capture-rotation-trajectory.d.ts.map +1 -1
- package/dist/motion/capture-rotation-trajectory.js +15 -0
- package/dist/motion/capture-rotation-trajectory.js.map +1 -1
- package/dist/motion/capture-translation-parallax-temporal-quadrature.d.ts +119 -0
- package/dist/motion/capture-translation-parallax-temporal-quadrature.d.ts.map +1 -0
- package/dist/motion/capture-translation-parallax-temporal-quadrature.js +263 -0
- package/dist/motion/capture-translation-parallax-temporal-quadrature.js.map +1 -0
- package/dist/motion/extended-object-projection.d.ts +175 -0
- package/dist/motion/extended-object-projection.d.ts.map +1 -0
- package/dist/motion/extended-object-projection.js +402 -0
- package/dist/motion/extended-object-projection.js.map +1 -0
- package/dist/motion/projected-motion.d.ts +11 -0
- package/dist/motion/projected-motion.d.ts.map +1 -1
- package/dist/motion/projected-motion.js +11 -0
- package/dist/motion/projected-motion.js.map +1 -1
- package/dist/optics/aperture.d.ts +9 -0
- package/dist/optics/aperture.d.ts.map +1 -1
- package/dist/optics/aperture.js +9 -0
- package/dist/optics/aperture.js.map +1 -1
- package/dist/optics/circle-of-confusion.d.ts +8 -0
- package/dist/optics/circle-of-confusion.d.ts.map +1 -1
- package/dist/optics/circle-of-confusion.js +8 -0
- package/dist/optics/circle-of-confusion.js.map +1 -1
- package/dist/optics/complex-pupil-psf.d.ts +128 -0
- package/dist/optics/complex-pupil-psf.d.ts.map +1 -0
- package/dist/optics/complex-pupil-psf.js +462 -0
- package/dist/optics/complex-pupil-psf.js.map +1 -0
- package/dist/optics/depth-of-field.d.ts +18 -0
- package/dist/optics/depth-of-field.d.ts.map +1 -1
- package/dist/optics/depth-of-field.js +29 -4
- package/dist/optics/depth-of-field.js.map +1 -1
- package/dist/optics/diffraction.d.ts +8 -0
- package/dist/optics/diffraction.d.ts.map +1 -1
- package/dist/optics/diffraction.js +8 -0
- package/dist/optics/diffraction.js.map +1 -1
- package/dist/optics/focus-breathing.d.ts +13 -0
- package/dist/optics/focus-breathing.d.ts.map +1 -1
- package/dist/optics/focus-breathing.js +13 -0
- package/dist/optics/focus-breathing.js.map +1 -1
- package/dist/optics/focus-state.d.ts +47 -0
- package/dist/optics/focus-state.d.ts.map +1 -0
- package/dist/optics/focus-state.js +78 -0
- package/dist/optics/focus-state.js.map +1 -0
- package/dist/optics/front-of-lens-filter.d.ts +114 -0
- package/dist/optics/front-of-lens-filter.d.ts.map +1 -0
- package/dist/optics/front-of-lens-filter.js +468 -0
- package/dist/optics/front-of-lens-filter.js.map +1 -0
- package/dist/optics/illumination-vignetting.d.ts +9 -0
- package/dist/optics/illumination-vignetting.d.ts.map +1 -1
- package/dist/optics/illumination-vignetting.js +9 -0
- package/dist/optics/illumination-vignetting.js.map +1 -1
- package/dist/optics/lateral-chromatic-aberration.d.ts +11 -0
- package/dist/optics/lateral-chromatic-aberration.d.ts.map +1 -1
- package/dist/optics/lateral-chromatic-aberration.js +11 -0
- package/dist/optics/lateral-chromatic-aberration.js.map +1 -1
- package/dist/optics/lens-psf-profile.d.ts +217 -0
- package/dist/optics/lens-psf-profile.d.ts.map +1 -0
- package/dist/optics/lens-psf-profile.js +823 -0
- package/dist/optics/lens-psf-profile.js.map +1 -0
- package/dist/optics/polygon-diffraction.d.ts +67 -0
- package/dist/optics/polygon-diffraction.d.ts.map +1 -0
- package/dist/optics/polygon-diffraction.js +145 -0
- package/dist/optics/polygon-diffraction.js.map +1 -0
- package/dist/optics/profile-contract.d.ts +42 -0
- package/dist/optics/profile-contract.d.ts.map +1 -0
- package/dist/optics/profile-contract.js +92 -0
- package/dist/optics/profile-contract.js.map +1 -0
- package/dist/optics/psf-foundation.d.ts +16 -3
- package/dist/optics/psf-foundation.d.ts.map +1 -1
- package/dist/optics/psf-foundation.js +28 -15
- package/dist/optics/psf-foundation.js.map +1 -1
- package/dist/optics/radial-distortion.d.ts +18 -0
- package/dist/optics/radial-distortion.d.ts.map +1 -1
- package/dist/optics/radial-distortion.js +18 -0
- package/dist/optics/radial-distortion.js.map +1 -1
- package/dist/optics/scene-to-sensor-irradiance.d.ts +213 -0
- package/dist/optics/scene-to-sensor-irradiance.d.ts.map +1 -0
- package/dist/optics/scene-to-sensor-irradiance.js +662 -0
- package/dist/optics/scene-to-sensor-irradiance.js.map +1 -0
- package/dist/optics/scene-to-sensor-quadrature.d.ts +63 -0
- package/dist/optics/scene-to-sensor-quadrature.d.ts.map +1 -0
- package/dist/optics/scene-to-sensor-quadrature.js +82 -0
- package/dist/optics/scene-to-sensor-quadrature.js.map +1 -0
- package/dist/optics/sensor-environment-query.d.ts +60 -0
- package/dist/optics/sensor-environment-query.d.ts.map +1 -0
- package/dist/optics/sensor-environment-query.js +50 -0
- package/dist/optics/sensor-environment-query.js.map +1 -0
- package/dist/optics/sensor-psf-quadrature.d.ts +70 -0
- package/dist/optics/sensor-psf-quadrature.d.ts.map +1 -0
- package/dist/optics/sensor-psf-quadrature.js +101 -0
- package/dist/optics/sensor-psf-quadrature.js.map +1 -0
- package/dist/optics/sensor-psf-support.d.ts +20 -0
- package/dist/optics/sensor-psf-support.d.ts.map +1 -0
- package/dist/optics/sensor-psf-support.js +13 -0
- package/dist/optics/sensor-psf-support.js.map +1 -0
- package/dist/optics/stray-light.d.ts +91 -0
- package/dist/optics/stray-light.d.ts.map +1 -0
- package/dist/optics/stray-light.js +110 -0
- package/dist/optics/stray-light.js.map +1 -0
- package/dist/optics/thin-lens.d.ts +8 -0
- package/dist/optics/thin-lens.d.ts.map +1 -1
- package/dist/optics/thin-lens.js +8 -0
- package/dist/optics/thin-lens.js.map +1 -1
- package/dist/output/capture-corrected-sdr.d.ts +49 -0
- package/dist/output/capture-corrected-sdr.d.ts.map +1 -0
- package/dist/output/capture-corrected-sdr.js +149 -0
- package/dist/output/capture-corrected-sdr.js.map +1 -0
- package/dist/output/capture-geometry.d.ts.map +1 -1
- package/dist/output/capture-geometry.js +8 -0
- package/dist/output/capture-geometry.js.map +1 -1
- package/dist/output/capture-sdr.d.ts +49 -0
- package/dist/output/capture-sdr.d.ts.map +1 -0
- package/dist/output/capture-sdr.js +90 -0
- package/dist/output/capture-sdr.js.map +1 -0
- package/dist/output/crop.d.ts +6 -0
- package/dist/output/crop.d.ts.map +1 -1
- package/dist/output/crop.js +6 -0
- package/dist/output/crop.js.map +1 -1
- package/dist/output/geometric-transforms.d.ts +137 -0
- package/dist/output/geometric-transforms.d.ts.map +1 -0
- package/dist/output/geometric-transforms.js +225 -0
- package/dist/output/geometric-transforms.js.map +1 -0
- package/dist/output/lens-corrections.d.ts +121 -0
- package/dist/output/lens-corrections.d.ts.map +1 -0
- package/dist/output/lens-corrections.js +210 -0
- package/dist/output/lens-corrections.js.map +1 -0
- package/dist/output/sdr-rendering.d.ts +81 -0
- package/dist/output/sdr-rendering.d.ts.map +1 -0
- package/dist/output/sdr-rendering.js +106 -0
- package/dist/output/sdr-rendering.js.map +1 -0
- package/dist/output/subject-framing-crop.d.ts +8 -0
- package/dist/output/subject-framing-crop.d.ts.map +1 -1
- package/dist/output/subject-framing-crop.js +8 -0
- package/dist/output/subject-framing-crop.js.map +1 -1
- package/dist/schema/camera.d.ts +6 -0
- package/dist/schema/camera.d.ts.map +1 -1
- package/dist/schema/illumination-spectral.d.ts +51 -0
- package/dist/schema/illumination-spectral.d.ts.map +1 -0
- package/dist/schema/illumination-spectral.js +132 -0
- package/dist/schema/illumination-spectral.js.map +1 -0
- package/dist/schema/illumination-temporal.d.ts +156 -0
- package/dist/schema/illumination-temporal.d.ts.map +1 -0
- package/dist/schema/illumination-temporal.js +554 -0
- package/dist/schema/illumination-temporal.js.map +1 -0
- package/dist/schema/illumination.d.ts +138 -0
- package/dist/schema/illumination.d.ts.map +1 -0
- package/dist/schema/illumination.js +483 -0
- package/dist/schema/illumination.js.map +1 -0
- package/dist/schema/scene-radiance-temporal.d.ts +107 -0
- package/dist/schema/scene-radiance-temporal.d.ts.map +1 -0
- package/dist/schema/scene-radiance-temporal.js +259 -0
- package/dist/schema/scene-radiance-temporal.js.map +1 -0
- package/dist/schema/scene-radiance.d.ts +185 -0
- package/dist/schema/scene-radiance.d.ts.map +1 -0
- package/dist/schema/scene-radiance.js +535 -0
- package/dist/schema/scene-radiance.js.map +1 -0
- package/dist/schema/scene.d.ts +7 -0
- package/dist/schema/scene.d.ts.map +1 -1
- package/dist/schema/validation.d.ts.map +1 -1
- package/dist/schema/validation.js +7 -0
- package/dist/schema/validation.js.map +1 -1
- package/dist/sensor/accumulated-charge.d.ts +199 -0
- package/dist/sensor/accumulated-charge.d.ts.map +1 -0
- package/dist/sensor/accumulated-charge.js +450 -0
- package/dist/sensor/accumulated-charge.js.map +1 -0
- package/dist/sensor/architecture.d.ts +48 -13
- package/dist/sensor/architecture.d.ts.map +1 -1
- package/dist/sensor/architecture.js +58 -16
- package/dist/sensor/architecture.js.map +1 -1
- package/dist/sensor/camera-saturation-capacity.d.ts +138 -0
- package/dist/sensor/camera-saturation-capacity.d.ts.map +1 -0
- package/dist/sensor/camera-saturation-capacity.js +356 -0
- package/dist/sensor/camera-saturation-capacity.js.map +1 -0
- package/dist/sensor/capture-color-sampling-binding.d.ts +1 -0
- package/dist/sensor/capture-color-sampling-binding.d.ts.map +1 -1
- package/dist/sensor/capture-color-sampling-binding.js +14 -0
- package/dist/sensor/capture-color-sampling-binding.js.map +1 -1
- package/dist/sensor/capture-mode-timing.d.ts +63 -0
- package/dist/sensor/capture-mode-timing.d.ts.map +1 -0
- package/dist/sensor/capture-mode-timing.js +270 -0
- package/dist/sensor/capture-mode-timing.js.map +1 -0
- package/dist/sensor/capture-mode.d.ts.map +1 -1
- package/dist/sensor/capture-mode.js +13 -0
- package/dist/sensor/capture-mode.js.map +1 -1
- package/dist/sensor/color-sampling.d.ts.map +1 -1
- package/dist/sensor/color-sampling.js +19 -0
- package/dist/sensor/color-sampling.js.map +1 -1
- package/dist/sensor/constant-rate-temporal-integration.d.ts +126 -0
- package/dist/sensor/constant-rate-temporal-integration.d.ts.map +1 -0
- package/dist/sensor/constant-rate-temporal-integration.js +382 -0
- package/dist/sensor/constant-rate-temporal-integration.js.map +1 -0
- package/dist/sensor/dark-current.d.ts +169 -0
- package/dist/sensor/dark-current.d.ts.map +1 -0
- package/dist/sensor/dark-current.js +427 -0
- package/dist/sensor/dark-current.js.map +1 -0
- package/dist/sensor/environment-photo-signal.d.ts +123 -0
- package/dist/sensor/environment-photo-signal.d.ts.map +1 -0
- package/dist/sensor/environment-photo-signal.js +186 -0
- package/dist/sensor/environment-photo-signal.js.map +1 -0
- package/dist/sensor/eqe-electron-rate.d.ts +107 -0
- package/dist/sensor/eqe-electron-rate.d.ts.map +1 -0
- package/dist/sensor/eqe-electron-rate.js +561 -0
- package/dist/sensor/eqe-electron-rate.js.map +1 -0
- package/dist/sensor/eqe-local-exposure.d.ts +65 -0
- package/dist/sensor/eqe-local-exposure.d.ts.map +1 -0
- package/dist/sensor/eqe-local-exposure.js +84 -0
- package/dist/sensor/eqe-local-exposure.js.map +1 -0
- package/dist/sensor/eqe-temporal-exposure.d.ts +55 -0
- package/dist/sensor/eqe-temporal-exposure.d.ts.map +1 -0
- package/dist/sensor/eqe-temporal-exposure.js +62 -0
- package/dist/sensor/eqe-temporal-exposure.js.map +1 -0
- package/dist/sensor/exposure-window.d.ts +14 -0
- package/dist/sensor/exposure-window.d.ts.map +1 -1
- package/dist/sensor/exposure-window.js +14 -0
- package/dist/sensor/exposure-window.js.map +1 -1
- package/dist/sensor/iso-signal-chain.d.ts +148 -0
- package/dist/sensor/iso-signal-chain.d.ts.map +1 -0
- package/dist/sensor/iso-signal-chain.js +411 -0
- package/dist/sensor/iso-signal-chain.js.map +1 -0
- package/dist/sensor/local-exposure-binding.d.ts +87 -0
- package/dist/sensor/local-exposure-binding.d.ts.map +1 -0
- package/dist/sensor/local-exposure-binding.js +214 -0
- package/dist/sensor/local-exposure-binding.js.map +1 -0
- package/dist/sensor/optical-stack.d.ts.map +1 -1
- package/dist/sensor/optical-stack.js +17 -0
- package/dist/sensor/optical-stack.js.map +1 -1
- package/dist/sensor/photon-energy.d.ts +97 -0
- package/dist/sensor/photon-energy.d.ts.map +1 -0
- package/dist/sensor/photon-energy.js +390 -0
- package/dist/sensor/photon-energy.js.map +1 -0
- package/dist/sensor/physical-charge-capacity.d.ts +130 -0
- package/dist/sensor/physical-charge-capacity.d.ts.map +1 -0
- package/dist/sensor/physical-charge-capacity.js +345 -0
- package/dist/sensor/physical-charge-capacity.js.map +1 -0
- package/dist/sensor/pixel-pitch.d.ts +6 -0
- package/dist/sensor/pixel-pitch.d.ts.map +1 -1
- package/dist/sensor/pixel-pitch.js +6 -0
- package/dist/sensor/pixel-pitch.js.map +1 -1
- package/dist/sensor/radiometry-readiness.d.ts +10 -0
- package/dist/sensor/radiometry-readiness.d.ts.map +1 -1
- package/dist/sensor/radiometry-readiness.js +10 -0
- package/dist/sensor/radiometry-readiness.js.map +1 -1
- package/dist/sensor/raw-readout.d.ts +314 -0
- package/dist/sensor/raw-readout.d.ts.map +1 -0
- package/dist/sensor/raw-readout.js +914 -0
- package/dist/sensor/raw-readout.js.map +1 -0
- package/dist/sensor/raw-reconstruction.d.ts +170 -0
- package/dist/sensor/raw-reconstruction.d.ts.map +1 -0
- package/dist/sensor/raw-reconstruction.js +424 -0
- package/dist/sensor/raw-reconstruction.js.map +1 -0
- package/dist/sensor/readout-exposure-linkage.d.ts +12 -0
- package/dist/sensor/readout-exposure-linkage.d.ts.map +1 -1
- package/dist/sensor/readout-exposure-linkage.js +12 -0
- package/dist/sensor/readout-exposure-linkage.js.map +1 -1
- package/dist/sensor/readout-timing.d.ts +13 -0
- package/dist/sensor/readout-timing.d.ts.map +1 -1
- package/dist/sensor/readout-timing.js +13 -0
- package/dist/sensor/readout-timing.js.map +1 -1
- package/dist/sensor/response-application-compatibility.d.ts +136 -0
- package/dist/sensor/response-application-compatibility.d.ts.map +1 -0
- package/dist/sensor/response-application-compatibility.js +408 -0
- package/dist/sensor/response-application-compatibility.js.map +1 -0
- package/dist/sensor/response-operating-range.d.ts +173 -0
- package/dist/sensor/response-operating-range.d.ts.map +1 -0
- package/dist/sensor/response-operating-range.js +672 -0
- package/dist/sensor/response-operating-range.js.map +1 -0
- package/dist/sensor/responsivity-photocurrent.d.ts +158 -0
- package/dist/sensor/responsivity-photocurrent.d.ts.map +1 -0
- package/dist/sensor/responsivity-photocurrent.js +644 -0
- package/dist/sensor/responsivity-photocurrent.js.map +1 -0
- package/dist/sensor/sampling-aperture.d.ts.map +1 -1
- package/dist/sensor/sampling-aperture.js +14 -0
- package/dist/sensor/sampling-aperture.js.map +1 -1
- package/dist/sensor/scene-eqe-temporal-exposure.d.ts +45 -0
- package/dist/sensor/scene-eqe-temporal-exposure.d.ts.map +1 -0
- package/dist/sensor/scene-eqe-temporal-exposure.js +64 -0
- package/dist/sensor/scene-eqe-temporal-exposure.js.map +1 -0
- package/dist/sensor/sensor-geometry.d.ts +12 -0
- package/dist/sensor/sensor-geometry.d.ts.map +1 -1
- package/dist/sensor/sensor-geometry.js +12 -0
- package/dist/sensor/sensor-geometry.js.map +1 -1
- package/dist/sensor/signal-noise.d.ts +10 -0
- package/dist/sensor/signal-noise.d.ts.map +1 -1
- package/dist/sensor/signal-noise.js +10 -0
- package/dist/sensor/signal-noise.js.map +1 -1
- package/dist/sensor/spatial-sample-reduction.d.ts +44 -1
- package/dist/sensor/spatial-sample-reduction.d.ts.map +1 -1
- package/dist/sensor/spatial-sample-reduction.js +51 -5
- package/dist/sensor/spatial-sample-reduction.js.map +1 -1
- package/dist/sensor/spatial-sampling-quadrature.d.ts +24 -0
- package/dist/sensor/spatial-sampling-quadrature.d.ts.map +1 -1
- package/dist/sensor/spatial-sampling-quadrature.js +27 -0
- package/dist/sensor/spatial-sampling-quadrature.js.map +1 -1
- package/dist/sensor/spatio-spectral-reduction.d.ts +187 -0
- package/dist/sensor/spatio-spectral-reduction.d.ts.map +1 -0
- package/dist/sensor/spatio-spectral-reduction.js +373 -0
- package/dist/sensor/spatio-spectral-reduction.js.map +1 -0
- package/dist/sensor/spectral-coverage.d.ts +24 -0
- package/dist/sensor/spectral-coverage.d.ts.map +1 -0
- package/dist/sensor/spectral-coverage.js +86 -0
- package/dist/sensor/spectral-coverage.js.map +1 -0
- package/dist/sensor/spectral-quadrature.d.ts +169 -0
- package/dist/sensor/spectral-quadrature.d.ts.map +1 -0
- package/dist/sensor/spectral-quadrature.js +542 -0
- package/dist/sensor/spectral-quadrature.js.map +1 -0
- package/dist/sensor/spectral-response.d.ts +192 -0
- package/dist/sensor/spectral-response.d.ts.map +1 -0
- package/dist/sensor/spectral-response.js +664 -0
- package/dist/sensor/spectral-response.js.map +1 -0
- package/dist/sensor/temporal-eqe-sum.d.ts +15 -0
- package/dist/sensor/temporal-eqe-sum.d.ts.map +1 -0
- package/dist/sensor/temporal-eqe-sum.js +30 -0
- package/dist/sensor/temporal-eqe-sum.js.map +1 -0
- package/dist/sensor/temporal-photo-signal.d.ts +38 -0
- package/dist/sensor/temporal-photo-signal.d.ts.map +1 -0
- package/dist/sensor/temporal-photo-signal.js +110 -0
- package/dist/sensor/temporal-photo-signal.js.map +1 -0
- package/dist/sensor/temporal-sample-binding.d.ts +6 -0
- package/dist/sensor/temporal-sample-binding.d.ts.map +1 -0
- package/dist/sensor/temporal-sample-binding.js +32 -0
- package/dist/sensor/temporal-sample-binding.js.map +1 -0
- package/dist/simulation/poc-simulation.d.ts.map +1 -1
- package/dist/simulation/poc-simulation.js +34 -11
- package/dist/simulation/poc-simulation.js.map +1 -1
- package/dist/stabilization/camera-shake.d.ts +11 -0
- package/dist/stabilization/camera-shake.d.ts.map +1 -1
- package/dist/stabilization/camera-shake.js +11 -0
- package/dist/stabilization/camera-shake.js.map +1 -1
- package/dist/stabilization/system.d.ts +218 -0
- package/dist/stabilization/system.d.ts.map +1 -0
- package/dist/stabilization/system.js +695 -0
- package/dist/stabilization/system.js.map +1 -0
- package/docs/API_REFERENCE.md +2017 -0
- package/docs/API_STYLE.md +132 -0
- package/docs/ARCHITECTURE.md +134 -24
- package/docs/AUTOMATION_COORDINATION.md +2 -0
- package/docs/CAPTURE_COLOR.md +25 -0
- package/docs/CAPTURE_CORRECTED_SDR.md +25 -0
- package/docs/CAPTURE_EXPORT_METADATA.md +27 -0
- package/docs/CAPTURE_SDR.md +20 -0
- package/docs/DEVELOPERS.md +60 -0
- package/docs/DIGITAL_OPTICS_FOUNDATION.md +69 -0
- package/docs/ENVIRONMENT_RAW_CAPTURE.md +187 -0
- package/docs/EXPORT_ACCEPTANCE.md +133 -0
- package/docs/GENERIC_TIER_PRESETS.md +269 -0
- package/docs/GEOMETRIC_PREPARATION_REUSE.md +141 -0
- package/docs/IMAGE_FORMATION.md +80 -10
- package/docs/LINEAR_CAPTURE_ENCODING.md +25 -0
- package/docs/MOTION_AND_SIGNAL.md +5 -3
- package/docs/NUMERICAL_CORRECTNESS.md +191 -0
- package/docs/PERFORMANCE_BASELINE.md +56 -0
- package/docs/PHOTOGRAPHIC_EXPORT.md +206 -0
- package/docs/PHYSICS_FOUNDATION.md +152 -5
- package/docs/POC_API.md +2 -0
- package/docs/POC_PROJECTION_REUSE.md +124 -0
- package/docs/PROCESSED_OUTPUT.md +157 -0
- package/docs/PRODUCTION_COMPOSITION.md +373 -0
- package/docs/PRODUCTION_ENVIRONMENT_CAPTURE.md +131 -0
- package/docs/PROVENANCE.md +4 -0
- package/docs/PSF_FOUNDATION.md +110 -88
- package/docs/RAW_FRAME_ENVELOPE.md +56 -0
- package/docs/RAW_FRAME_RECONSTRUCTION.md +30 -0
- package/docs/RELEASE_1_0.md +65 -0
- package/docs/RELEASE_AUDIT.md +38 -0
- package/docs/SCENE_RADIANCE_AND_ILLUMINATION.md +298 -0
- package/docs/SCENE_SENSOR_QUADRATURE.md +98 -0
- package/docs/SCENE_SENSOR_TEMPORAL_EXPOSURE.md +86 -0
- package/docs/SCIENTIFIC_ASSURANCE.md +280 -0
- package/docs/SCIENTIFIC_CONFORMANCE.md +83 -0
- package/docs/SDR_RENDERING.md +33 -0
- package/docs/SENSOR_ENVIRONMENT_QUERY.md +86 -0
- package/docs/SENSOR_EQE_LOCAL_EXPOSURE.md +104 -0
- package/docs/SENSOR_EQE_TEMPORAL_EXPOSURE.md +74 -0
- package/docs/SENSOR_PSF_QUADRATURE.md +90 -0
- package/docs/SENSOR_RAW_FRAME.md +20 -0
- package/docs/SENSOR_RAW_PRODUCER.md +77 -0
- package/docs/SIGNAL_CONFORMANCE.md +23 -0
- package/docs/SIMULATED_CAPTURE.md +65 -0
- package/docs/STABILIZATION.md +160 -17
- package/docs/TEMPORAL_PHOTO_RAW.md +83 -0
- package/docs/TIER_ACCEPTANCE.md +129 -0
- package/docs/TIER_PRESET_ACCEPTANCE.md +59 -0
- package/docs/USAGE.md +5050 -1047
- package/docs/V1_COMPOSITION_MAP.md +123 -0
- package/docs/V1_HELPER_REUSE_REVIEW.md +60 -0
- package/docs/V1_PERFORMANCE_DISPOSITION.md +88 -0
- package/docs/api/camera-equivalent-focal-length.md +53 -0
- package/docs/api/camera-field-of-view.md +119 -0
- package/docs/api/camera-projected-object-size.md +54 -0
- package/docs/api/capture-capture-export-metadata.md +107 -0
- package/docs/api/capture-environment-raw-producer.md +56 -0
- package/docs/api/capture-focus-control.md +419 -0
- package/docs/api/capture-linear-encoding.md +99 -0
- package/docs/api/capture-photographic-export.md +172 -0
- package/docs/api/capture-raw-frame-reconstruction.md +87 -0
- package/docs/api/capture-release-sequence.md +252 -0
- package/docs/api/capture-sensor-raw-frame.md +66 -0
- package/docs/api/capture-sensor-raw-producer.md +98 -0
- package/docs/api/capture-simulated-capture.md +179 -0
- package/docs/api/color-capture-color.md +122 -0
- package/docs/api/color-white-balance.md +386 -0
- package/docs/api/composition-image-formation-plan.md +825 -0
- package/docs/api/composition-plan-consumer.md +98 -0
- package/docs/api/core-calculation-result.md +220 -0
- package/docs/api/core-configuration-error.md +19 -0
- package/docs/api/core-image-formation.md +204 -0
- package/docs/api/core-scientific-assurance.md +214 -0
- package/docs/api/core-spectral-composition.md +268 -0
- package/docs/api/core-spectral.md +78 -0
- package/docs/api/core-validation.md +34 -0
- package/docs/api/core-version.md +14 -0
- package/docs/api/equipment-exposure-capabilities.md +270 -0
- package/docs/api/equipment-generic-tier-assets.md +82 -0
- package/docs/api/equipment-generic-tier-presets.md +103 -0
- package/docs/api/equipment-iso-capabilities.md +295 -0
- package/docs/api/equipment-metering-capabilities.md +126 -0
- package/docs/api/equipment-release-capabilities.md +91 -0
- package/docs/api/exports.json +5656 -0
- package/docs/api/exposure-exposure-duration-control.md +115 -0
- package/docs/api/exposure-exposure-mode-resolver.md +966 -0
- package/docs/api/exposure-exposure.md +150 -0
- package/docs/api/exposure-flash.md +327 -0
- package/docs/api/exposure-metering-scene-radiance.md +154 -0
- package/docs/api/exposure-metering-target.md +134 -0
- package/docs/api/exposure-metering-temporal.md +77 -0
- package/docs/api/exposure-metering.md +172 -0
- package/docs/api/exposure-program-line.md +64 -0
- package/docs/api/motion-camera-rotation.md +215 -0
- package/docs/api/motion-capture-rotation-inverse-mapping.md +128 -0
- package/docs/api/motion-capture-rotation-temporal-quadrature.md +127 -0
- package/docs/api/motion-capture-rotation-trajectory.md +132 -0
- package/docs/api/motion-capture-translation-parallax-temporal-quadrature.md +171 -0
- package/docs/api/motion-extended-object-projection.md +312 -0
- package/docs/api/motion-projected-motion.md +60 -0
- package/docs/api/optics-aperture.md +69 -0
- package/docs/api/optics-circle-of-confusion.md +46 -0
- package/docs/api/optics-complex-pupil-psf.md +193 -0
- package/docs/api/optics-depth-of-field.md +92 -0
- package/docs/api/optics-diffraction.md +46 -0
- package/docs/api/optics-focus-breathing.md +119 -0
- package/docs/api/optics-focus-state.md +64 -0
- package/docs/api/optics-front-of-lens-filter.md +263 -0
- package/docs/api/optics-illumination-vignetting.md +95 -0
- package/docs/api/optics-lateral-chromatic-aberration.md +225 -0
- package/docs/api/optics-lens-psf-profile.md +380 -0
- package/docs/api/optics-polygon-diffraction.md +68 -0
- package/docs/api/optics-profile-contract.md +47 -0
- package/docs/api/optics-psf-foundation.md +181 -0
- package/docs/api/optics-radial-distortion.md +194 -0
- package/docs/api/optics-scene-to-sensor-irradiance.md +371 -0
- package/docs/api/optics-scene-to-sensor-quadrature.md +78 -0
- package/docs/api/optics-sensor-environment-query.md +58 -0
- package/docs/api/optics-sensor-psf-quadrature.md +81 -0
- package/docs/api/optics-stray-light.md +109 -0
- package/docs/api/optics-thin-lens.md +53 -0
- package/docs/api/output-capture-corrected-sdr.md +71 -0
- package/docs/api/output-capture-geometry.md +500 -0
- package/docs/api/output-capture-sdr.md +69 -0
- package/docs/api/output-crop.md +47 -0
- package/docs/api/output-geometric-transforms.md +199 -0
- package/docs/api/output-lens-corrections.md +162 -0
- package/docs/api/output-sdr-rendering.md +122 -0
- package/docs/api/output-subject-framing-crop.md +59 -0
- package/docs/api/schema-camera.md +84 -0
- package/docs/api/schema-illumination-spectral.md +77 -0
- package/docs/api/schema-illumination-temporal.md +289 -0
- package/docs/api/schema-illumination.md +246 -0
- package/docs/api/schema-scene-radiance-temporal.md +215 -0
- package/docs/api/schema-scene-radiance.md +415 -0
- package/docs/api/schema-scene.md +105 -0
- package/docs/api/schema-validation.md +25 -0
- package/docs/api/sensor-accumulated-charge.md +273 -0
- package/docs/api/sensor-architecture.md +155 -0
- package/docs/api/sensor-camera-saturation-capacity.md +215 -0
- package/docs/api/sensor-capture-color-sampling-binding.md +323 -0
- package/docs/api/sensor-capture-mode-timing.md +123 -0
- package/docs/api/sensor-capture-mode.md +321 -0
- package/docs/api/sensor-color-sampling.md +228 -0
- package/docs/api/sensor-constant-rate-temporal-integration.md +152 -0
- package/docs/api/sensor-dark-current.md +227 -0
- package/docs/api/sensor-environment-photo-signal.md +77 -0
- package/docs/api/sensor-eqe-electron-rate.md +166 -0
- package/docs/api/sensor-eqe-local-exposure.md +68 -0
- package/docs/api/sensor-eqe-temporal-exposure.md +73 -0
- package/docs/api/sensor-exposure-window.md +183 -0
- package/docs/api/sensor-iso-signal-chain.md +264 -0
- package/docs/api/sensor-local-exposure-binding.md +126 -0
- package/docs/api/sensor-optical-stack.md +211 -0
- package/docs/api/sensor-photon-energy.md +149 -0
- package/docs/api/sensor-physical-charge-capacity.md +196 -0
- package/docs/api/sensor-pixel-pitch.md +41 -0
- package/docs/api/sensor-radiometry-readiness.md +240 -0
- package/docs/api/sensor-raw-readout.md +499 -0
- package/docs/api/sensor-raw-reconstruction.md +260 -0
- package/docs/api/sensor-readout-exposure-linkage.md +172 -0
- package/docs/api/sensor-readout-timing.md +209 -0
- package/docs/api/sensor-response-application-compatibility.md +256 -0
- package/docs/api/sensor-response-operating-range.md +293 -0
- package/docs/api/sensor-responsivity-photocurrent.md +245 -0
- package/docs/api/sensor-sampling-aperture.md +221 -0
- package/docs/api/sensor-scene-eqe-temporal-exposure.md +56 -0
- package/docs/api/sensor-sensor-geometry.md +143 -0
- package/docs/api/sensor-signal-noise.md +75 -0
- package/docs/api/sensor-spatial-sample-reduction.md +186 -0
- package/docs/api/sensor-spatial-sampling-quadrature.md +188 -0
- package/docs/api/sensor-spatio-spectral-reduction.md +217 -0
- package/docs/api/sensor-spectral-coverage.md +33 -0
- package/docs/api/sensor-spectral-quadrature.md +183 -0
- package/docs/api/sensor-spectral-response.md +291 -0
- package/docs/api/sensor-temporal-photo-signal.md +62 -0
- package/docs/api/simulation-poc-simulation.md +364 -0
- package/docs/api/stabilization-camera-shake.md +71 -0
- package/docs/api/stabilization-system.md +442 -0
- package/docs/benchmarks/2026-10-01-main-baseline.json +694 -0
- package/docs/benchmarks/2026-10-02-geometric-preparation-reuse.json +2190 -0
- package/docs/benchmarks/2026-10-02-poc-projection-reuse.json +2423 -0
- package/docs/benchmarks/2026-10-02-v1-environment-gc-profile.json +210 -0
- package/docs/benchmarks/2026-10-02-v1-environment-ordinary.json +187 -0
- package/docs/benchmarks/2026-10-02-v1-geometry-gc-profile.json +756 -0
- package/docs/benchmarks/2026-10-02-v1-geometry-ordinary-1.json +711 -0
- package/docs/benchmarks/2026-10-02-v1-geometry-ordinary-2.json +711 -0
- package/docs/benchmarks/2026-10-02-v1-poc-gc-profile.json +885 -0
- package/docs/benchmarks/2026-10-02-v1-poc-ordinary-1.json +868 -0
- package/docs/benchmarks/2026-10-02-v1-poc-ordinary-2.json +868 -0
- package/docs/examples/production-capture.mjs +34 -0
- package/docs/examples/production-request.json +4613 -0
- package/docs/examples/quick-start.mjs +12 -0
- package/docs/validation/documentation-fragments.json +212 -0
- package/docs/validation/release-audit-inventory.json +1306 -0
- package/docs/validation/tier-acceptance-report-v1.json +2538 -0
- package/package.json +15 -3
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
# sensor/camera-saturation-capacity.ts public contracts
|
|
2
|
+
|
|
3
|
+
Package **1.0.0**, root API **0.116.0**. [Navigation](../API_REFERENCE.md) · [Developer guide](../DEVELOPERS.md). Generated signatures retain independent schema/model versions. Only the exports listed here are root-package contracts; module-local helpers are not supported deep imports.
|
|
4
|
+
|
|
5
|
+
## assessSensorCameraSaturationCapacity
|
|
6
|
+
|
|
7
|
+
Compare dark-corrected expected photo signal with the declared camera response-chain capacity
|
|
8
|
+
without adding dark charge or identifying a hardware clamp.
|
|
9
|
+
|
|
10
|
+
Camera saturation capacity is a dark-corrected photo-signal electron-equivalent limit. It is not
|
|
11
|
+
physical total-charge storage capacity, ADC maximum or evidence of the limiting hardware stage. This
|
|
12
|
+
assessment compares expectations and does not synthesize post-saturation codes.
|
|
13
|
+
|
|
14
|
+
```ts
|
|
15
|
+
export function assessSensorCameraSaturationCapacity(
|
|
16
|
+
input:
|
|
17
|
+
AssessSensorCameraSaturationCapacityInput
|
|
18
|
+
): CalculationResult<SensorCameraSaturationCapacityAssessment>;
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
22
|
+
|
|
23
|
+
## AssessSensorCameraSaturationCapacityInput
|
|
24
|
+
|
|
25
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
26
|
+
|
|
27
|
+
```ts
|
|
28
|
+
export interface AssessSensorCameraSaturationCapacityInput {
|
|
29
|
+
accumulatedCharge:
|
|
30
|
+
SensorAccumulatedChargeComposition;
|
|
31
|
+
saturationProfile:
|
|
32
|
+
SensorCameraSaturationCapacityProfile;
|
|
33
|
+
operatingStateId: string;
|
|
34
|
+
operatingTemperatureC: number;
|
|
35
|
+
}
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## parseSensorCameraSaturationCapacityProfile
|
|
39
|
+
|
|
40
|
+
Validate an untrusted declaration and return the normalized typed contract. Unknown enum values,
|
|
41
|
+
missing required fields and incompatible scientific data fail at this boundary.
|
|
42
|
+
|
|
43
|
+
Camera saturation capacity is a dark-corrected photo-signal electron-equivalent limit. It is not
|
|
44
|
+
physical total-charge storage capacity, ADC maximum or evidence of the limiting hardware stage. This
|
|
45
|
+
assessment compares expectations and does not synthesize post-saturation codes.
|
|
46
|
+
|
|
47
|
+
```ts
|
|
48
|
+
export function parseSensorCameraSaturationCapacityProfile(
|
|
49
|
+
value: unknown
|
|
50
|
+
): SensorCameraSaturationCapacityProfile;
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
54
|
+
|
|
55
|
+
## SensorCameraSaturationCapacityAssessment
|
|
56
|
+
|
|
57
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
58
|
+
|
|
59
|
+
```ts
|
|
60
|
+
export interface SensorCameraSaturationCapacityAssessment {
|
|
61
|
+
saturationProfileId: string;
|
|
62
|
+
completenessProfileId: string;
|
|
63
|
+
colorSamplingProfileId: string;
|
|
64
|
+
channelId: string;
|
|
65
|
+
site: {
|
|
66
|
+
x: number;
|
|
67
|
+
y: number;
|
|
68
|
+
};
|
|
69
|
+
bindingId: string;
|
|
70
|
+
operatingStateId: string;
|
|
71
|
+
operatingTemperatureC: number;
|
|
72
|
+
capacityMeaning:
|
|
73
|
+
"camera-signal-saturation-capacity-electrons";
|
|
74
|
+
signalDomain:
|
|
75
|
+
"dark-corrected-photo-generated-electron-equivalent";
|
|
76
|
+
cameraSignalSaturationCapacityElectrons:
|
|
77
|
+
number;
|
|
78
|
+
expectedPhotoSignalElectronCount:
|
|
79
|
+
number;
|
|
80
|
+
totalExpectedStoredElectronCountDiagnostic:
|
|
81
|
+
number;
|
|
82
|
+
totalStoredChargeUsedForCameraSaturationComparison:
|
|
83
|
+
false;
|
|
84
|
+
expectedSignalToCameraSaturationRatio:
|
|
85
|
+
number;
|
|
86
|
+
expectedSignalHeadroomElectrons:
|
|
87
|
+
number;
|
|
88
|
+
expectedCameraSignalCapacityStatus:
|
|
89
|
+
| "below-capacity"
|
|
90
|
+
| "at-capacity"
|
|
91
|
+
| "above-capacity";
|
|
92
|
+
expectedPhotoSignalExceedsCameraCapacity:
|
|
93
|
+
boolean;
|
|
94
|
+
cameraSaturationCapacityAssessmentPerformed:
|
|
95
|
+
true;
|
|
96
|
+
assessmentMeaning:
|
|
97
|
+
"expected-dark-corrected-photo-signal-vs-camera-saturation-capacity";
|
|
98
|
+
physicalChargeCapacityUsed:
|
|
99
|
+
false;
|
|
100
|
+
limitingSaturationMechanismResolved:
|
|
101
|
+
false;
|
|
102
|
+
analogClippingThresholdModeled:
|
|
103
|
+
false;
|
|
104
|
+
digitalClippingThresholdModeled:
|
|
105
|
+
false;
|
|
106
|
+
adcMaximumCodeUsed:
|
|
107
|
+
false;
|
|
108
|
+
actualStochasticSaturationStateKnown:
|
|
109
|
+
false;
|
|
110
|
+
stochasticSaturationProbabilityAssessed:
|
|
111
|
+
false;
|
|
112
|
+
outputSignalAfterSaturationCalculated:
|
|
113
|
+
false;
|
|
114
|
+
clampApplied: false;
|
|
115
|
+
physicalStoredChargeModified:
|
|
116
|
+
false;
|
|
117
|
+
adcQuantizationApplied: false;
|
|
118
|
+
rawCodeValueProduced: false;
|
|
119
|
+
saturationCapacityUncertaintyPropagated:
|
|
120
|
+
false;
|
|
121
|
+
photoSignalUncertaintyPropagated:
|
|
122
|
+
false;
|
|
123
|
+
componentEvidence: {
|
|
124
|
+
saturationCapacity:
|
|
125
|
+
readonly EvidenceProvenance[];
|
|
126
|
+
measurementMethod:
|
|
127
|
+
readonly EvidenceProvenance[];
|
|
128
|
+
operatingState:
|
|
129
|
+
readonly EvidenceProvenance[];
|
|
130
|
+
siteApproximation:
|
|
131
|
+
readonly EvidenceProvenance[];
|
|
132
|
+
temperatureApproximation:
|
|
133
|
+
readonly EvidenceProvenance[];
|
|
134
|
+
chargeCompleteness:
|
|
135
|
+
SensorAccumulatedChargeComposition["componentEvidence"]["completeness"];
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
## SensorCameraSaturationCapacityProfile
|
|
141
|
+
|
|
142
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
143
|
+
|
|
144
|
+
```ts
|
|
145
|
+
export interface SensorCameraSaturationCapacityProfile {
|
|
146
|
+
schemaVersion: "0.1.0";
|
|
147
|
+
profileId: string;
|
|
148
|
+
colorSamplingProfileId: string;
|
|
149
|
+
channelId: string;
|
|
150
|
+
capacityMeaning:
|
|
151
|
+
"camera-signal-saturation-capacity-electrons";
|
|
152
|
+
signalDomain:
|
|
153
|
+
"dark-corrected-photo-generated-electron-equivalent";
|
|
154
|
+
saturationCapacityElectrons: number;
|
|
155
|
+
scientificStatus:
|
|
156
|
+
SensorSpectralResponseScientificStatus;
|
|
157
|
+
uncertainty:
|
|
158
|
+
SensorSpectralResponseUncertainty;
|
|
159
|
+
evidence:
|
|
160
|
+
readonly EvidenceProvenance[];
|
|
161
|
+
measurementMethodId: string;
|
|
162
|
+
measurementMethodEvidence:
|
|
163
|
+
readonly EvidenceProvenance[];
|
|
164
|
+
siteApplicability:
|
|
165
|
+
SensorCameraSaturationSiteApplicability;
|
|
166
|
+
operatingState: {
|
|
167
|
+
stateId: string;
|
|
168
|
+
evidence:
|
|
169
|
+
readonly EvidenceProvenance[];
|
|
170
|
+
};
|
|
171
|
+
temperatureApplicability:
|
|
172
|
+
SensorCameraSaturationTemperatureApplicability;
|
|
173
|
+
}
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
## SensorCameraSaturationSiteApplicability
|
|
177
|
+
|
|
178
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
179
|
+
|
|
180
|
+
```ts
|
|
181
|
+
export type SensorCameraSaturationSiteApplicability =
|
|
182
|
+
| {
|
|
183
|
+
kind: "exact-site";
|
|
184
|
+
site: {
|
|
185
|
+
x: number;
|
|
186
|
+
y: number;
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
| {
|
|
190
|
+
kind:
|
|
191
|
+
"channel-population-mean-approximation";
|
|
192
|
+
limitation: string;
|
|
193
|
+
evidence:
|
|
194
|
+
readonly EvidenceProvenance[];
|
|
195
|
+
};
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
## SensorCameraSaturationTemperatureApplicability
|
|
199
|
+
|
|
200
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
201
|
+
|
|
202
|
+
```ts
|
|
203
|
+
export type SensorCameraSaturationTemperatureApplicability =
|
|
204
|
+
| {
|
|
205
|
+
kind:
|
|
206
|
+
"exact-reference-temperature";
|
|
207
|
+
temperatureC: number;
|
|
208
|
+
}
|
|
209
|
+
| {
|
|
210
|
+
kind: "not-modeled";
|
|
211
|
+
limitation: string;
|
|
212
|
+
evidence:
|
|
213
|
+
readonly EvidenceProvenance[];
|
|
214
|
+
};
|
|
215
|
+
```
|
|
@@ -0,0 +1,323 @@
|
|
|
1
|
+
# sensor/capture-color-sampling-binding.ts public contracts
|
|
2
|
+
|
|
3
|
+
Package **1.0.0**, root API **0.116.0**. [Navigation](../API_REFERENCE.md) · [Developer guide](../DEVELOPERS.md). Generated signatures retain independent schema/model versions. Only the exports listed here are root-package contracts; module-local helpers are not supported deep imports.
|
|
4
|
+
|
|
5
|
+
## CaptureModeFullFrameSampleIndex
|
|
6
|
+
|
|
7
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
export interface CaptureModeFullFrameSampleIndex {
|
|
11
|
+
/**
|
|
12
|
+
* Zero-based index in the selected mode's full-frame per-frame effective
|
|
13
|
+
* sampling raster. Crop-local coordinates must be translated to absolute
|
|
14
|
+
* full-frame mode indices before calling this API.
|
|
15
|
+
*/
|
|
16
|
+
x: number;
|
|
17
|
+
y: number;
|
|
18
|
+
}
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## ColorSamplingChannelComposition
|
|
22
|
+
|
|
23
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
24
|
+
|
|
25
|
+
```ts
|
|
26
|
+
export type ColorSamplingChannelComposition =
|
|
27
|
+
| {
|
|
28
|
+
kind: "single-channel";
|
|
29
|
+
channelId: string;
|
|
30
|
+
}
|
|
31
|
+
| {
|
|
32
|
+
kind: "mixed-channels";
|
|
33
|
+
channelIds: readonly string[];
|
|
34
|
+
};
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## ColorSamplingChannelSiteCount
|
|
38
|
+
|
|
39
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
40
|
+
|
|
41
|
+
```ts
|
|
42
|
+
export interface ColorSamplingChannelSiteCount {
|
|
43
|
+
channelId: string;
|
|
44
|
+
siteCount: number;
|
|
45
|
+
}
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## ColorSamplingSiteGridDimensions
|
|
49
|
+
|
|
50
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
51
|
+
|
|
52
|
+
```ts
|
|
53
|
+
export interface ColorSamplingSiteGridDimensions {
|
|
54
|
+
widthSites: number;
|
|
55
|
+
heightSites: number;
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## ColorSamplingSiteRect
|
|
60
|
+
|
|
61
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
62
|
+
|
|
63
|
+
```ts
|
|
64
|
+
export interface ColorSamplingSiteRect {
|
|
65
|
+
x: number;
|
|
66
|
+
y: number;
|
|
67
|
+
width: number;
|
|
68
|
+
height: number;
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## GroupedCaptureModeSamplingAnchorDeclaration
|
|
73
|
+
|
|
74
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
75
|
+
|
|
76
|
+
```ts
|
|
77
|
+
export interface GroupedCaptureModeSamplingAnchorDeclaration {
|
|
78
|
+
anchor: "native-effective-raster-top-left";
|
|
79
|
+
evidence: readonly EvidenceProvenance[];
|
|
80
|
+
}
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## NativeEffectiveRasterColorSamplingBindingProfile
|
|
84
|
+
|
|
85
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
86
|
+
|
|
87
|
+
```ts
|
|
88
|
+
export interface NativeEffectiveRasterColorSamplingBindingProfile {
|
|
89
|
+
schemaVersion: "0.1.0";
|
|
90
|
+
bindingId: string;
|
|
91
|
+
colorSamplingProfileId: string;
|
|
92
|
+
/**
|
|
93
|
+
* Exact canonical native effective raster this binding was evidenced for.
|
|
94
|
+
* The binding must not be reused against a different raster merely because
|
|
95
|
+
* another sensor/mode has similar dimensions or a matching aspect ratio.
|
|
96
|
+
*/
|
|
97
|
+
nativeRaster: NativeImageRaster;
|
|
98
|
+
/**
|
|
99
|
+
* Evidence supporting the native-effective-grid ↔ color-site-grid
|
|
100
|
+
* relationship itself.
|
|
101
|
+
*
|
|
102
|
+
* Capture-mode and color-topology facts retain separate provenance.
|
|
103
|
+
*/
|
|
104
|
+
evidence: readonly EvidenceProvenance[];
|
|
105
|
+
relationship: {
|
|
106
|
+
kind: "regular-native-effective-sample-blocks";
|
|
107
|
+
/**
|
|
108
|
+
* Number of abstract color-sampling sites spanned horizontally by one
|
|
109
|
+
* native effective image sample.
|
|
110
|
+
*/
|
|
111
|
+
sitesPerNativeSampleX: number;
|
|
112
|
+
/**
|
|
113
|
+
* Number of abstract color-sampling sites spanned vertically by one
|
|
114
|
+
* native effective image sample.
|
|
115
|
+
*/
|
|
116
|
+
sitesPerNativeSampleY: number;
|
|
117
|
+
/**
|
|
118
|
+
* Both grids are anchored to the same native sensor top-left.
|
|
119
|
+
*
|
|
120
|
+
* This keeps phase absolute across later active crops/orientation.
|
|
121
|
+
*/
|
|
122
|
+
anchor: "shared-native-top-left";
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## NativeEffectiveSampleRect
|
|
128
|
+
|
|
129
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
130
|
+
|
|
131
|
+
```ts
|
|
132
|
+
export interface NativeEffectiveSampleRect {
|
|
133
|
+
x: number;
|
|
134
|
+
y: number;
|
|
135
|
+
width: number;
|
|
136
|
+
height: number;
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
## parseNativeEffectiveRasterColorSamplingBindingProfile
|
|
141
|
+
|
|
142
|
+
Parses the explicit relationship between the canonical native effective image
|
|
143
|
+
raster and the separate native sensor color-sampling-site lattice.
|
|
144
|
+
|
|
145
|
+
This first binding supports only regular rectangular site blocks with a
|
|
146
|
+
shared native top-left anchor. Irregular mappings, sparse exceptions and
|
|
147
|
+
mode-specific declared-effective rasters require later explicit contracts.
|
|
148
|
+
|
|
149
|
+
```ts
|
|
150
|
+
export function parseNativeEffectiveRasterColorSamplingBindingProfile(
|
|
151
|
+
value: unknown
|
|
152
|
+
): NativeEffectiveRasterColorSamplingBindingProfile;
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
156
|
+
|
|
157
|
+
## resolveCaptureModeColorSamplingContributors
|
|
158
|
+
|
|
159
|
+
Resolves which color-sampling sites form the pre-reconstruction structural source region for one selected
|
|
160
|
+
capture-mode effective sample.
|
|
161
|
+
|
|
162
|
+
The mode sample index is always absolute in the selected mode's full-frame
|
|
163
|
+
per-frame raster. The API intentionally does not accept crop-local indices,
|
|
164
|
+
preventing active-crop origins from silently resetting CFA phase.
|
|
165
|
+
|
|
166
|
+
For grouped-native-sample modes, the returned site rectangle covers all
|
|
167
|
+
native effective samples in the declared regular group. This is a structural
|
|
168
|
+
pre-reconstruction association only: the engine reports channel-site counts
|
|
169
|
+
but never claims complete downstream digital-pixel dependency or invents
|
|
170
|
+
signal-combination weights, sum/average semantics, spectral response, or
|
|
171
|
+
photon/electron values.
|
|
172
|
+
|
|
173
|
+
Declared-effective-raster modes fail closed because #68 explicitly says
|
|
174
|
+
their relationship to the native effective grid is not safely expressible as
|
|
175
|
+
simple integer grouping.
|
|
176
|
+
|
|
177
|
+
Inter-frame sensor shifts are preserved as capture-mode metadata only. The
|
|
178
|
+
sensor and CFA move together, so those offsets do not change site channel
|
|
179
|
+
assignment; their optical-registration effect belongs to a later spatial
|
|
180
|
+
sampling/image-formation contract.
|
|
181
|
+
|
|
182
|
+
```ts
|
|
183
|
+
export function resolveCaptureModeColorSamplingContributors(
|
|
184
|
+
input: ResolveCaptureModeColorSamplingContributorsInput
|
|
185
|
+
): ResolvedCaptureModeColorSamplingContributors;
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
189
|
+
|
|
190
|
+
## ResolveCaptureModeColorSamplingContributorsInput
|
|
191
|
+
|
|
192
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
193
|
+
|
|
194
|
+
```ts
|
|
195
|
+
export interface ResolveCaptureModeColorSamplingContributorsInput {
|
|
196
|
+
nativeRaster: NativeImageRaster;
|
|
197
|
+
captureModeProfile: CaptureModeProfile;
|
|
198
|
+
modeId: string;
|
|
199
|
+
colorSamplingProfile: SensorColorSamplingProfile;
|
|
200
|
+
bindingProfile: NativeEffectiveRasterColorSamplingBindingProfile;
|
|
201
|
+
modeSampleIndexFullFrame: CaptureModeFullFrameSampleIndex;
|
|
202
|
+
/**
|
|
203
|
+
* Required for grouped-native-samples modes because #68 declares grouping
|
|
204
|
+
* factors but does not itself prove the grouping phase/origin.
|
|
205
|
+
*/
|
|
206
|
+
groupedSamplingAnchor?: GroupedCaptureModeSamplingAnchorDeclaration;
|
|
207
|
+
}
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
## ResolvedCaptureModeColorSamplingContributors
|
|
211
|
+
|
|
212
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
213
|
+
|
|
214
|
+
```ts
|
|
215
|
+
export interface ResolvedCaptureModeColorSamplingContributors {
|
|
216
|
+
modeId: string;
|
|
217
|
+
colorSamplingProfileId: string;
|
|
218
|
+
modeSampleCoordinateSystem:
|
|
219
|
+
"capture-mode-full-frame-effective-sample-index";
|
|
220
|
+
modeSampleIndexFullFrame: CaptureModeFullFrameSampleIndex;
|
|
221
|
+
modeSampleRaster: {
|
|
222
|
+
pixelWidth: number;
|
|
223
|
+
pixelHeight: number;
|
|
224
|
+
};
|
|
225
|
+
modeSamplingKind:
|
|
226
|
+
| "native-effective-raster"
|
|
227
|
+
| "grouped-native-samples";
|
|
228
|
+
nativeEffectiveSampleRect: NativeEffectiveSampleRect;
|
|
229
|
+
colorSamplingSiteRect: ColorSamplingSiteRect;
|
|
230
|
+
colorSamplingSiteGrid: ColorSamplingSiteGridDimensions;
|
|
231
|
+
totalContributorSites: number;
|
|
232
|
+
channelSiteCounts: readonly ColorSamplingChannelSiteCount[];
|
|
233
|
+
channelComposition: ColorSamplingChannelComposition;
|
|
234
|
+
/**
|
|
235
|
+
* Present only when the selected capture mode groups native effective
|
|
236
|
+
* samples before producing one per-frame effective sample.
|
|
237
|
+
*/
|
|
238
|
+
grouping:
|
|
239
|
+
| {
|
|
240
|
+
groupWidthSamples: SourcedCaptureModeFact<number>;
|
|
241
|
+
groupHeightSamples: SourcedCaptureModeFact<number>;
|
|
242
|
+
combinationDomain?: SourcedCaptureModeFact<CaptureModeSampleCombinationDomain>;
|
|
243
|
+
anchor: "native-effective-raster-top-left";
|
|
244
|
+
anchorEvidence: readonly EvidenceProvenance[];
|
|
245
|
+
}
|
|
246
|
+
| null;
|
|
247
|
+
/**
|
|
248
|
+
* Sensor-shift sequence remains attached to the sensor/capture mode.
|
|
249
|
+
*
|
|
250
|
+
* The sensor and its CFA move together, so these offsets must not be applied
|
|
251
|
+
* as changes to color-site channel assignment.
|
|
252
|
+
*/
|
|
253
|
+
interFrameSensorOffsetsNativeSamples?: SourcedCaptureModeFact<
|
|
254
|
+
readonly CaptureModeSensorOffsetNativeSamples[]
|
|
255
|
+
>;
|
|
256
|
+
sensorShiftChangesColorSiteAssignment: false;
|
|
257
|
+
sensorShiftOpticalRegistration:
|
|
258
|
+
"outside-this-contract";
|
|
259
|
+
structuralSourceStage: "pre-reconstruction";
|
|
260
|
+
completeDownstreamPixelDependencyEstablished: false;
|
|
261
|
+
signalCombinationWeightingEstablished: false;
|
|
262
|
+
spectralResponseEstablished: false;
|
|
263
|
+
physicalPhotodiodeBindingEstablished: false;
|
|
264
|
+
physicalPhotodiodeCountInference: "not-permitted";
|
|
265
|
+
componentEvidence: {
|
|
266
|
+
binding: readonly EvidenceProvenance[];
|
|
267
|
+
colorSamplingProfile: readonly EvidenceProvenance[];
|
|
268
|
+
captureMode: readonly EvidenceProvenance[];
|
|
269
|
+
};
|
|
270
|
+
}
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
## ResolvedNativeEffectiveRasterColorSamplingBinding
|
|
274
|
+
|
|
275
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
276
|
+
|
|
277
|
+
```ts
|
|
278
|
+
export interface ResolvedNativeEffectiveRasterColorSamplingBinding {
|
|
279
|
+
bindingId: string;
|
|
280
|
+
colorSamplingProfileId: string;
|
|
281
|
+
nativeRaster: NativeImageRaster;
|
|
282
|
+
relationshipMeaning:
|
|
283
|
+
| "one-native-effective-sample-to-one-color-site"
|
|
284
|
+
| "one-native-effective-sample-to-rectangular-color-site-block";
|
|
285
|
+
relationship: {
|
|
286
|
+
kind: "regular-native-effective-sample-blocks";
|
|
287
|
+
sitesPerNativeSampleX: number;
|
|
288
|
+
sitesPerNativeSampleY: number;
|
|
289
|
+
anchor: "shared-native-top-left";
|
|
290
|
+
};
|
|
291
|
+
colorSamplingSiteGrid: ColorSamplingSiteGridDimensions;
|
|
292
|
+
totalColorSamplingSites: number;
|
|
293
|
+
nativeImageRasterBindingEstablished: true;
|
|
294
|
+
physicalPhotodiodeBindingEstablished: false;
|
|
295
|
+
physicalPhotodiodeCountInference: "not-permitted";
|
|
296
|
+
spectralResponseEstablished: false;
|
|
297
|
+
componentEvidence: {
|
|
298
|
+
binding: readonly EvidenceProvenance[];
|
|
299
|
+
colorSamplingProfile: readonly EvidenceProvenance[];
|
|
300
|
+
};
|
|
301
|
+
}
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
## resolveNativeEffectiveRasterColorSamplingBinding
|
|
305
|
+
|
|
306
|
+
Validates and resolves the sensor-level binding between NativeImageRaster and
|
|
307
|
+
an exact monochrome/periodic color-sampling topology.
|
|
308
|
+
|
|
309
|
+
Matching dimensions are never treated as proof of a 1:1 relationship. The
|
|
310
|
+
relationship exists only because the caller supplied this evidence-backed
|
|
311
|
+
binding profile.
|
|
312
|
+
|
|
313
|
+
```ts
|
|
314
|
+
export function resolveNativeEffectiveRasterColorSamplingBinding(
|
|
315
|
+
input: {
|
|
316
|
+
nativeRaster: NativeImageRaster;
|
|
317
|
+
colorSamplingProfile: SensorColorSamplingProfile;
|
|
318
|
+
bindingProfile: NativeEffectiveRasterColorSamplingBindingProfile;
|
|
319
|
+
}
|
|
320
|
+
): ResolvedNativeEffectiveRasterColorSamplingBinding;
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# sensor/capture-mode-timing.ts public contracts
|
|
2
|
+
|
|
3
|
+
Package **1.0.0**, root API **0.116.0**. [Navigation](../API_REFERENCE.md) · [Developer guide](../DEVELOPERS.md). Generated signatures retain independent schema/model versions. Only the exports listed here are root-package contracts; module-local helpers are not supported deep imports.
|
|
4
|
+
|
|
5
|
+
## CAPTURE_MODE_TIMING_PROFILE_SCHEMA_VERSION
|
|
6
|
+
|
|
7
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
CAPTURE_MODE_TIMING_PROFILE_SCHEMA_VERSION =
|
|
11
|
+
"0.1.0" as const
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## CaptureModeTimingProfile
|
|
15
|
+
|
|
16
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
17
|
+
|
|
18
|
+
```ts
|
|
19
|
+
export interface CaptureModeTimingProfile {
|
|
20
|
+
schemaVersion:
|
|
21
|
+
typeof CAPTURE_MODE_TIMING_PROFILE_SCHEMA_VERSION;
|
|
22
|
+
profileId: string;
|
|
23
|
+
profileVersion: string;
|
|
24
|
+
captureModeId: string;
|
|
25
|
+
scientificStatus: "approximation";
|
|
26
|
+
scheduleFamily:
|
|
27
|
+
"global-or-uniform-linear-native-scan";
|
|
28
|
+
shutterMechanism:
|
|
29
|
+
CaptureShutterMechanism;
|
|
30
|
+
opening:
|
|
31
|
+
ExposureBoundarySchedule;
|
|
32
|
+
closing:
|
|
33
|
+
ExposureBoundarySchedule;
|
|
34
|
+
readout:
|
|
35
|
+
SensorReadoutTimingDeclaration;
|
|
36
|
+
nonUniformScheduleModeled: false;
|
|
37
|
+
evidence: readonly EvidenceProvenance[];
|
|
38
|
+
limitations: readonly string[];
|
|
39
|
+
}
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## parseCaptureModeTimingProfile
|
|
43
|
+
|
|
44
|
+
Parses timing facts that are explicitly bound to one exact capture mode.
|
|
45
|
+
|
|
46
|
+
Schema 0.1.0 intentionally admits only the timing schedule families already
|
|
47
|
+
owned by #12: simultaneous/global or uniform-linear native scans. Unsupported
|
|
48
|
+
non-uniform/segmented schedules fail closed instead of being approximated.
|
|
49
|
+
|
|
50
|
+
```ts
|
|
51
|
+
export function parseCaptureModeTimingProfile(
|
|
52
|
+
value: unknown
|
|
53
|
+
): CaptureModeTimingProfile;
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
57
|
+
|
|
58
|
+
## resolveCaptureModeTiming
|
|
59
|
+
|
|
60
|
+
Resolves the authoritative exposure/readout timing for one exact capture
|
|
61
|
+
mode and timing-profile identity.
|
|
62
|
+
|
|
63
|
+
Readout timing remains distinct from exposure-boundary timing. No absolute
|
|
64
|
+
readout/exposure synchronization is inferred.
|
|
65
|
+
|
|
66
|
+
```ts
|
|
67
|
+
export function resolveCaptureModeTiming(
|
|
68
|
+
input:
|
|
69
|
+
ResolveCaptureModeTimingInput
|
|
70
|
+
): ResolvedCaptureModeTiming;
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
74
|
+
|
|
75
|
+
## ResolveCaptureModeTimingInput
|
|
76
|
+
|
|
77
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
78
|
+
|
|
79
|
+
```ts
|
|
80
|
+
export interface ResolveCaptureModeTimingInput {
|
|
81
|
+
captureMode:
|
|
82
|
+
ResolvedCaptureMode;
|
|
83
|
+
timingProfile:
|
|
84
|
+
CaptureModeTimingProfile;
|
|
85
|
+
nominalExposureDurationSeconds:
|
|
86
|
+
SourcedCaptureTimingSeconds;
|
|
87
|
+
activeCaptureRect?: RasterRect;
|
|
88
|
+
samplePointsNative?:
|
|
89
|
+
readonly RasterPoint[];
|
|
90
|
+
}
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
## ResolvedCaptureModeTiming
|
|
94
|
+
|
|
95
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
96
|
+
|
|
97
|
+
```ts
|
|
98
|
+
export interface ResolvedCaptureModeTiming {
|
|
99
|
+
schemaVersion:
|
|
100
|
+
typeof CAPTURE_MODE_TIMING_PROFILE_SCHEMA_VERSION;
|
|
101
|
+
timingProfileId: string;
|
|
102
|
+
timingProfileVersion: string;
|
|
103
|
+
captureModeId: string;
|
|
104
|
+
captureModeTimingIdentity:
|
|
105
|
+
"exact-mode-and-profile";
|
|
106
|
+
nativeRaster: NativeImageRaster;
|
|
107
|
+
modeDeclaresTimingDependency:
|
|
108
|
+
boolean;
|
|
109
|
+
scheduleFamily:
|
|
110
|
+
"global-or-uniform-linear-native-scan";
|
|
111
|
+
exposureWindows:
|
|
112
|
+
CaptureExposureWindows;
|
|
113
|
+
readoutTiming:
|
|
114
|
+
SensorReadoutTiming;
|
|
115
|
+
timeReference:
|
|
116
|
+
"first-opening-boundary-phase";
|
|
117
|
+
readoutExposureSynchronization:
|
|
118
|
+
"not-assumed";
|
|
119
|
+
nonUniformScheduleModeled: false;
|
|
120
|
+
evidence: readonly EvidenceProvenance[];
|
|
121
|
+
limitations: readonly string[];
|
|
122
|
+
}
|
|
123
|
+
```
|