All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.jaiimageio.jpeg2000.J2KImageReadParam Maven / Gradle / Ivy

Go to download

JPEG2000 support for Java Advanced Imaging Image I/O Tools API core. This module is licensed under the [JJ2000 license](LICENSE.txt) and is therefore NOT compatible with the GPL 3 license. It should be compatible with the LGPL 2.1 license.

There is a newer version: 1.4.0
Show newest version
/*
 * $RCSfile: J2KImageReadParam.java,v $
 *
 * 
 * Copyright (c) 2005 Sun Microsystems, Inc. All  Rights Reserved.
 * 
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met: 
 * 
 * - Redistribution of source code must retain the above copyright 
 *   notice, this  list of conditions and the following disclaimer.
 * 
 * - Redistribution in binary form must reproduce the above copyright
 *   notice, this list of conditions and the following disclaimer in 
 *   the documentation and/or other materials provided with the
 *   distribution.
 * 
 * Neither the name of Sun Microsystems, Inc. or the names of 
 * contributors may be used to endorse or promote products derived 
 * from this software without specific prior written permission.
 * 
 * This software is provided "AS IS," without a warranty of any 
 * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND 
 * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, 
 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
 * EXCLUDED. SUN MIDROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL 
 * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF 
 * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
 * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR 
 * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
 * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
 * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
 * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGES. 
 * 
 * You acknowledge that this software is not designed or intended for 
 * use in the design, construction, operation or maintenance of any 
 * nuclear facility. 
 *
 * $Revision: 1.3 $
 * $Date: 2006/09/29 19:25:32 $
 * $State: Exp $
 */
package com.github.jaiimageio.jpeg2000;

import javax.imageio.ImageReadParam;

/**
 * A subclass of ImageReadParam for reading images in
 * the JPEG 2000 format.
 *
 * 

The decoding parameters for JPEG 2000 are listed below: * *

* * * * * * * * * * *
JPEG 2000 Plugin Decoding Parameters
Parameter Name Description
decodingRateSpecifies the decoding rate in bits per pixel (bpp) where the * number of pixels is related to the image's original size (Note: * this parameter is not affected by resolution). * The default is Double.MAX_VALUE. * It means decoding with the encoding rate. *
resolutionSpecifies the resolution level wanted for the decoded image * (0 means the lowest available resolution, the resolution * level gives an image with the original dimension). If the given index * is greater than the number of available resolution levels of the * compressed image, the decoded image has the lowest available * resolution (among all tile-components). This parameter affects only * the inverse wavelet transform and not the number of bytes read by the * codestream parser, which depends only on decodingRate. * The default value, -1, means to use the resolution level at encoding. *
*/ public class J2KImageReadParam extends ImageReadParam { /** Specifies the decoding rate in bits per pixel (bpp) where the * number of pixels is related to the image's original size * (Note: this number is not affected by resolution). */ private double decodingRate = Double.MAX_VALUE; /** Specifies the resolution level wanted for the decoded image * (0 means the lowest available resolution, the resolution * level gives an image with the original dimension). If the given index * is greater than the number of available resolution levels of the * compressed image, the decoded image has the lowest available * resolution (among all tile-components). This parameter * affects only the inverse wavelet transform but not the number * of bytes read by the codestream parser, which * depends only on decodingRate. */ private int resolution = -1; /** Constructs a default instance of J2KImageReadParam. */ public J2KImageReadParam() { super(); } /** * Sets decodingRate. * * @param rate the decoding rate in bits per pixel. * @see #getDecodingRate() */ public void setDecodingRate(double rate) { this.decodingRate = rate; } /** * Gets decodingRate. * * @return the decoding rate in bits per pixel. * @see #setDecodingRate(double) */ public double getDecodingRate() { return decodingRate; } /** * Sets resolution. * * @param resolution the resolution level with 0 being * the lowest available. * @see #getResolution() */ public void setResolution(int resolution) { this.resolution = Math.max(resolution, -1); } /** * Gets resolution. * * @return the resolution level with 0 being * the lowest available. * @see #setResolution(int) */ public int getResolution() { return resolution; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy