/* * Geotoolkit - An Open Source Java GIS Toolkit * http://www.geotoolkit.org * * (C) 2015, Geomatys * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. */ package org.geotoolkit.gmlcov.geotiff.xml.v100; import java.util.Objects; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; /** * <p>Java class for parametersType complex type. * * <p>The following schema fragment specifies the expected content contained within this class. * * <pre> * <complexType name="parametersType"> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="compression" type="{http://www.opengis.net/gmlcov/geotiff/1.0}compressionType"/> * <element name="jpeg_quality" type="{http://www.opengis.net/gmlcov/geotiff/1.0}jpeg_qualityType"/> * <element name="predictor" type="{http://www.opengis.net/gmlcov/geotiff/1.0}predictorType"/> * <element name="interleave" type="{http://www.opengis.net/gmlcov/geotiff/1.0}interleaveType"/> * <element name="tiling" type="{http://www.w3.org/2001/XMLSchema}boolean"/> * <element name="tileheight" type="{http://www.opengis.net/gmlcov/geotiff/1.0}tileheightType"/> * <element name="tilewidth" type="{http://www.opengis.net/gmlcov/geotiff/1.0}tilewidthType"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "parametersType", propOrder = { "compression", "jpegQuality", "predictor", "interleave", "tiling", "tileheight", "tilewidth" }) public class ParametersType { @XmlElement(required = true, defaultValue = "None") private CompressionType compression; @XmlElement(name = "jpeg_quality", defaultValue = "75") private int jpegQuality; @XmlElement(required = true, defaultValue = "None") private PredictorType predictor; @XmlElement(required = true, defaultValue = "Pixel") private InterleaveType interleave; private boolean tiling; @XmlElement(required = true) private Integer tileheight; @XmlElement(required = true) private Integer tilewidth; /** * Gets the value of the compression property. * * @return * possible object is * {@link CompressionType } * */ public CompressionType getCompression() { return compression; } /** * Sets the value of the compression property. * * @param value * allowed object is * {@link CompressionType } * */ public void setCompression(CompressionType value) { this.compression = value; } /** * Gets the value of the jpegQuality property. * */ public int getJpegQuality() { return jpegQuality; } /** * Sets the value of the jpegQuality property. * */ public void setJpegQuality(int value) { this.jpegQuality = value; } /** * Gets the value of the predictor property. * * @return * possible object is * {@link PredictorType } * */ public PredictorType getPredictor() { return predictor; } /** * Sets the value of the predictor property. * * @param value * allowed object is * {@link PredictorType } * */ public void setPredictor(PredictorType value) { this.predictor = value; } /** * Gets the value of the interleave property. * * @return * possible object is * {@link InterleaveType } * */ public InterleaveType getInterleave() { return interleave; } /** * Sets the value of the interleave property. * * @param value * allowed object is * {@link InterleaveType } * */ public void setInterleave(InterleaveType value) { this.interleave = value; } /** * Gets the value of the tiling property. * */ public boolean isTiling() { return tiling; } /** * Sets the value of the tiling property. * */ public void setTiling(boolean value) { this.tiling = value; } /** * Gets the value of the tileheight property. * * @return * possible object is * {@link Integer } * */ public Integer getTileheight() { return tileheight; } /** * Sets the value of the tileheight property. * * @param value * allowed object is * {@link Integer } * */ public void setTileheight(Integer value) { this.tileheight = value; } /** * Gets the value of the tilewidth property. * * @return * possible object is * {@link Integer } * */ public Integer getTilewidth() { return tilewidth; } /** * Sets the value of the tilewidth property. * * @param value * allowed object is * {@link Integer } * */ public void setTilewidth(Integer value) { this.tilewidth = value; } @Override public boolean equals(Object o) { if (this == o) { return true; } if (o instanceof ParametersType) { final ParametersType that = (ParametersType) o; return Objects.equals(this.compression, that.compression) && Objects.equals(this.interleave, that.interleave) && Objects.equals(this.jpegQuality, that.jpegQuality) && Objects.equals(this.predictor, that.predictor) && Objects.equals(this.tileheight, that.tileheight) && Objects.equals(this.tilewidth, that.tilewidth) && Objects.equals(this.tiling, that.tiling); } return false; } @Override public int hashCode() { int hash = 5; hash = 29 * hash + Objects.hashCode(this.compression); hash = 29 * hash + this.jpegQuality; hash = 29 * hash + Objects.hashCode(this.predictor); hash = 29 * hash + Objects.hashCode(this.interleave); hash = 29 * hash + (this.tiling ? 1 : 0); hash = 29 * hash + Objects.hashCode(this.tileheight); hash = 29 * hash + Objects.hashCode(this.tilewidth); return hash; } }