package com.qaup.collision.common.model;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class MovementState {
    public GeoPosition position;
    //速度
    public Velocity velocity;
    // 航向（度）
    public double heading;
    // 时间戳（毫秒）
    public long timestamp;
    // 数据质量标记
    public DataQuality dataQuality = DataQuality.UNKNOWN;

    public MovementState(GeoPosition position, Velocity velocity, double heading, long timestamp) {
        this.position = position;
        this.velocity = velocity;
        this.heading = heading;
        this.timestamp = timestamp;
    }

    public enum DataQuality {
        GOOD,       // 数据质量良好
        SUSPICIOUS, // 数据可疑
        BAD,        // 数据质量差
        UNKNOWN     // 未知质量
    }

}
