package com.example.livingai.domain.ml

import android.graphics.Bitmap
import android.graphics.Rect

/**
 * Frame-specific data for one inference cycle.
 */
data class FrameData(
    val imageBitmap: Bitmap?,
    val segmentationBox: Rect?,
    val segmentationMaskBitmap: Bitmap?,

    // Optional ARCore depth inputs
    val depthMapMeters: FloatArray?,     // row-major R* C
    val depthWidth: Int = 0,
    val depthHeight: Int = 0,
    val depthConfidence: FloatArray? = null,

    // IMU orientation
    val imuPitchDegrees: Float = 0f,
    val imuRollDegrees: Float = 0f,
    val imuYawDegrees: Float = 0f,

    val cameraRotationDegrees: Int = 0,
    val timestampMs: Long = System.currentTimeMillis(),

    //relative
    val imageWidth: Int = 0,
    val imageHeight: Int = 0,
    val medianDepth: Float? = null
)
