package net.northking.cctp.upperComputer.driver.agent.command.data;

/**
 * 显示屏幕信息
 */
public class DisplayData {
    /**
     * 屏幕id
     */
    private int id;

    /**
     * 屏幕宽度
     */
    private int width;

    /**
     * 屏幕高度
     */
    private int height;

    /**
     * 物理x轴像素密度
     */
    private float xdpi;

    /**
     * 物理y轴像素密度
     */
    private float ydpi;

    /**
     * 屏幕方向<br>
     * 0/1/2/3:0°，90°，180°，270°旋转
     */
    private int rotation;

    /**
     * 屏幕刷新率
     */
    private float refreshRate;

    /**
     * 显示逻辑密度
     */
    private float density;

    /**
     * 每英寸像素密度
     */
    private int densityDpi;

    /**
     * 属性标识<br>
     * 详见：<a href="https://developer.android.google.cn/reference/android/view/Display#constants_1">https://developer.android.google.cn/reference/android/view/Display#constants_1</a>
     */
    private int flag;

    /**
     * 是否HDR显示模式
     */
    private boolean isHdr;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public int getWidth() {
        return width;
    }

    public void setWidth(int width) {
        this.width = width;
    }

    public int getHeight() {
        return height;
    }

    public void setHeight(int height) {
        this.height = height;
    }

    public float getXdpi() {
        return xdpi;
    }

    public void setXdpi(float xdpi) {
        this.xdpi = xdpi;
    }

    public float getYdpi() {
        return ydpi;
    }

    public void setYdpi(float ydpi) {
        this.ydpi = ydpi;
    }

    public int getRotation() {
        return rotation;
    }

    public void setRotation(int rotation) {
        this.rotation = rotation;
    }

    public float getRefreshRate() {
        return refreshRate;
    }

    public void setRefreshRate(float refreshRate) {
        this.refreshRate = refreshRate;
    }

    public float getDensity() {
        return density;
    }

    public void setDensity(float density) {
        this.density = density;
    }

    public int getDensityDpi() {
        return densityDpi;
    }

    public void setDensityDpi(int densityDpi) {
        this.densityDpi = densityDpi;
    }

    public int getFlag() {
        return flag;
    }

    public void setFlag(int flag) {
        this.flag = flag;
    }

    public boolean isHdr() {
        return isHdr;
    }

    public void setHdr(boolean hdr) {
        isHdr = hdr;
    }

    @Override
    public String toString() {
        return "DisplayData{" +
                "id=" + id +
                ", width=" + width +
                ", height=" + height +
                ", xdpi=" + xdpi +
                ", ydpi=" + ydpi +
                ", rotation=" + rotation +
                ", refreshRate=" + refreshRate +
                ", density=" + density +
                ", densityDpi=" + densityDpi +
                ", flag=" + flag +
                ", isHdr=" + isHdr +
                '}';
    }
}
