im_lib.h
Go to the documentation of this file.00001 /** \file
00002 * \brief Library Management and Main Documentation
00003 *
00004 * See Copyright Notice in this file.
00005 * $Id: im_lib.h,v 1.6 2005/12/13 18:58:44 scuri Exp $
00006 */
00007
00008 #ifndef __IM_LIB_H
00009 #define __IM_LIB_H
00010
00011 #if defined(__cplusplus)
00012 extern "C" {
00013 #endif
00014
00015
00016 /** \defgroup lib Library Management
00017 * \ingroup util
00018 * \par
00019 * Usefull definitions for about dialogs and
00020 * for checking the compiled version with the linked version for dynamic libraries.
00021 * \par
00022 * See \ref im_lib.h
00023 * @{
00024 */
00025 #define IM_AUTHOR "Antonio Scuri"
00026 #define IM_COPYRIGHT "Copyright (C) 1994-2005 Tecgraf/PUC-Rio and PETROBRAS S/A"
00027 #define IM_VERSION "3.1.0"
00028 #define IM_VERSION_DATE "2005/12/12"
00029 /** @} */
00030
00031 /** Library release number used in the compilation time. \n
00032 * You can compare this with the value returned by \ref imVersionNumber.
00033 * \ingroup lib */
00034 #define IM_VERSION_NUMBER 301000
00035
00036 /** Returns the library current version.
00037 *
00038 * \verbatim im.Version() -> version: string [in Lua 5] \endverbatim
00039 * \ingroup lib */
00040 const char* imVersion(void);
00041
00042 /** Returns the library current version release date.
00043 *
00044 * \verbatim im.VersionDate() -> date: string [in Lua 5] \endverbatim
00045 * \ingroup lib */
00046 const char* imVersionDate(void);
00047
00048 /** Returns the library current version number.
00049 *
00050 * \verbatim im.VersionNumber() -> version: number [in Lua 5] \endverbatim
00051 * \ingroup lib */
00052 int imVersionNumber(void);
00053
00054
00055 #if defined(__cplusplus)
00056 }
00057 #endif
00058
00059
00060 /*! \mainpage IM
00061 * <CENTER>
00062 * <H3> Image Representation, Storage, Capture and Processing </H3>
00063 * Tecgraf: Computer Graphics Technology Group, PUC-Rio, Brazil \n
00064 * http://www.tecgraf.puc-rio.br/im \n
00065 * mailto:[email protected]
00066 * </CENTER>
00067 *
00068 * \section over Overview
00069 * \par
00070 * IM is a toolkit for Digital Imaging.
00071 * \par
00072 * It provides support for image capture, several image file formats and many image processing operations.
00073 * \par
00074 * Image representation includes scientific data types (like IEEE floating point data)
00075 * and attributes (or metadata like GeoTIFF and Exif tags).
00076 * Animation, video and volumes are supported as image sequences,
00077 * but there is no digital audio support.
00078 * \par
00079 * The main goal of the library is to provide a simple API and abstraction
00080 * of images for scientific applications.
00081 * \par
00082 * The toolkit API is written in C.
00083 * The core library source code is implemented in C++ and it is very portable,
00084 * it can be compiled in Windows and UNIX with no modifications.
00085 * New image processing operations can be implemented in C or in C++.
00086 * \par
00087 * IM is free software, can be used for public and commercial applications.
00088 * \par
00089 * This work was developed at Tecgraf/PUC-Rio
00090 * by means of the partnership with PETROBRAS/CENPES.
00091 *
00092 * \section author Author
00093 * \par
00094 * Basic Software Group @ Tecgraf/PUC-Rio
00095 * - Antonio Scuri [email protected]
00096 *
00097 * \section copyright Copyright Notice
00098 \verbatim
00099
00100 ****************************************************************************
00101 * Copyright (C) 1994-2004 Tecgraf/PUC-Rio and PETROBRAS S/A. *
00102 * All rights reserved. *
00103 * *
00104 * Permission is hereby granted, free of charge, to any person obtaining *
00105 * a copy of this software and associated documentation files (the *
00106 * "Software"), to deal in the Software without restriction, including *
00107 * without limitation the rights to use, copy, modify, merge, publish, *
00108 * distribute, sublicense, and/or sell copies of the Software, and to *
00109 * permit persons to whom the Software is furnished to do so, subject to *
00110 * the following conditions: *
00111 * *
00112 * The above copyright notice and this permission notice shall be *
00113 * included in all copies or substantial portions of the Software. *
00114 * *
00115 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, *
00116 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
00117 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
00118 * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY *
00119 * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, *
00120 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE *
00121 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
00122 ****************************************************************************
00123 \endverbatim
00124 */
00125
00126
00127 /** \defgroup imagerep Image Representation
00128 * \par
00129 * See \ref im.h
00130 */
00131
00132
00133 /** \defgroup file Image Storage
00134 * \par
00135 * See \ref im.h
00136 */
00137
00138
00139 /** \defgroup format File Formats
00140 * \par
00141 * See \ref im.h
00142 *
00143 * Internal Predefined File Formats:
00144 * \li "BMP" - Windows Device Independent Bitmap
00145 * \li "PCX" - ZSoft Picture
00146 * \li "GIF" - Graphics Interchange Format
00147 * \li "TIFF" - Tagged Image File Format
00148 * \li "RAS" - Sun Raster File
00149 * \li "SGI" - Silicon Graphics Image File Format
00150 * \li "JPEG" - JPEG File Interchange Format
00151 * \li "LED" - IUP image in LED
00152 * \li "TGA" - Truevision Targa
00153 * \li "RAW" - RAW File
00154 * \li "PNM" - Netpbm Portable Image Map
00155 * \li "ICO" - Windows Icon
00156 * \li "PNG" - Portable Network Graphic Format
00157 *
00158 * Other Supported File Formats:
00159 * \li "JP2" - JPEG-2000 JP2 File Format
00160 * \li "AVI" - Windows Audio-Video Interleaved RIFF
00161 * \li "WMV" - Windows Media Video Format
00162 *
00163 * Some Known Compressions:
00164 * \li "NONE" - No Compression.
00165 * \li "RLE" - Run Lenght Encoding.
00166 * \li "LZW" - Lempel, Ziff and Welsh.
00167 * \li "JPEG" - Join Photographics Experts Group.
00168 * \li "DEFLATE" - LZ77 variation (ZIP)
00169 *
00170 * \ingroup file */
00171
00172
00173 /* Library Names Convention
00174 *
00175 * Global Functions and Types - "im[Object][Action]" using first capitals (imFileOpen)
00176 * Local Functions and Types - "i[Object][Action]" using first capitals (iTIFFGetCompIndex)
00177 * Local Static Variables - same as local functions and types (iFormatCount)
00178 * Local Static Tables - same as local functions and types with "Table" suffix (iTIFFCompTable)
00179 * Variables and Members - no prefix, all lower case (width)
00180 * Defines and Enumerations - all capitals (IM_ERR_NONE)
00181 *
00182 */
00183
00184
00185 #endif