im_format_jp2.h
Go to the documentation of this file.00001 /** \file
00002 * \brief Register the JP2 Format
00003 *
00004 * See Copyright Notice in im_lib.h
00005 */
00006
00007 #ifndef __IM_FORMAT_JP2_H
00008 #define __IM_FORMAT_JP2_H
00009
00010 #if defined(__cplusplus)
00011 extern "C" {
00012 #endif
00013
00014
00015 /** \defgroup jp2 JP2 - JPEG-2000 JP2 File Format
00016 * \section Description
00017 *
00018 * \par
00019 * ISO/IEC 15444 (2000, 2003)\n
00020 * http://www.jpeg.org/
00021 * \par
00022 * You must link the application with "im_jp2.lib"
00023 * and you must call the function \ref imFormatRegisterJP2 once
00024 * to register the format into the IM core library. \n
00025 * \par
00026 * Access to the JPEG2000 file format uses libJasper version 1.900.1 \n
00027 * http://www.ece.uvic.ca/~mdadams/jasper \n
00028 * Copyright (c) 2001-2006 Michael David Adams. \n
00029 * and GeoJasPer 1.4.0 \n
00030 * Copyright (c) 2003-2007 Dmitry V. Fedorov. \n
00031 * http://www.dimin.net/software/geojasper/ \n
00032 *
00033 * \par
00034 * See \ref im_format_jp2.h
00035 *
00036 * \section Features
00037 *
00038 \verbatim
00039 Data Types: Byte and UShort
00040 Color Spaces: Binary, Gray, RGB, YCbCr, Lab and XYZ
00041 Compressions:
00042 JPEG-2000 - ISO JPEG 2000 [default]
00043 Only one image.
00044 Can have an alpha channel.
00045 Internally the components are always unpacked.
00046 Internally the lines are arranged from top down to bottom.
00047 Handle(1) returns jas_image_t*
00048 Handle(2) returns jas_stream_t*
00049
00050 Attributes:
00051 CompressionRatio IM_FLOAT (1) [write only, example: Ratio=7 just like 7:1]
00052 GeoTIFFBox IM_BYTE (n)
00053 XMLPacket IM_BYTE (n)
00054
00055 Comments:
00056 We read code stream syntax and JP2, but we write always as JP2.
00057 Used definitions EXCLUDE_JPG_SUPPORT,EXCLUDE_MIF_SUPPORT,
00058 EXCLUDE_PNM_SUPPORT,EXCLUDE_RAS_SUPPORT,
00059 EXCLUDE_BMP_SUPPORT,EXCLUDE_PGX_SUPPORT
00060 Changed jas_config.h to match our needs.
00061 New file jas_binfile.c
00062 Changed base/jas_stream.c to export jas_stream_create and jas_stream_initbuf.
00063 Changed jp2/jp2_dec.c and jpc/jpc_cs.c to remove "uint" and "ulong" usage.
00064 The counter is restarted many times, because it has many phases.
00065 \endverbatim
00066 * \ingroup format */
00067
00068 /** Register the JP2 Format
00069 * \ingroup jp2 */
00070 void imFormatRegisterJP2(void);
00071
00072
00073 #if defined(__cplusplus)
00074 }
00075 #endif
00076
00077 #endif