summaryrefslogtreecommitdiff
path: root/include/im_lib.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/im_lib.h')
-rw-r--r--include/im_lib.h191
1 files changed, 191 insertions, 0 deletions
diff --git a/include/im_lib.h b/include/im_lib.h
new file mode 100644
index 0000000..80330cc
--- /dev/null
+++ b/include/im_lib.h
@@ -0,0 +1,191 @@
+/** \file
+ * \brief Library Management and Main Documentation
+ *
+ * See Copyright Notice in this file.
+ */
+
+#ifndef __IM_LIB_H
+#define __IM_LIB_H
+
+#if defined(__cplusplus)
+extern "C" {
+#endif
+
+
+/** \defgroup lib Library Management
+ * \ingroup util
+ * \par
+ * Usefull definitions for about dialogs and
+ * for comparing the compiled version with the linked version of the library.
+ * \par
+ * \verbatim im._AUTHOR [in Lua 5] \endverbatim
+ * \verbatim im._COPYRIGHT [in Lua 5] \endverbatim
+ * \verbatim im._VERSION [in Lua 5] \endverbatim
+ * \verbatim im._VERSION_DATE [in Lua 5] \endverbatim
+ * \verbatim im._VERSION_NUMBER [in Lua 5] \endverbatim
+ * \verbatim im._DESCRIPTION [in Lua 5] \endverbatim
+ * \verbatim im._NAME [in Lua 5] \endverbatim
+ * \par
+ * See \ref im_lib.h
+ * @{
+ */
+#define IM_AUTHOR "Antonio Scuri"
+#define IM_COPYRIGHT "Copyright (C) 1994-2008 Tecgraf, PUC-Rio."
+#define IM_VERSION "3.4.0"
+#define IM_VERSION_NUMBER 304000
+#define IM_VERSION_DATE "2008/10/14"
+#define IM_DESCRIPTION "Image Representation, Storage, Capture and Processing"
+#define IM_NAME "IM - An Imaging Toolkit"
+/** @} */
+
+
+/** Returns the library current version. Returns the definition IM_VERSION.
+ *
+ * \verbatim im.Version() -> version: string [in Lua 5] \endverbatim
+ * \ingroup lib */
+const char* imVersion(void);
+
+/** Returns the library current version release date. Returns the definition IM_VERSION_DATE.
+ *
+ * \verbatim im.VersionDate() -> date: string [in Lua 5] \endverbatim
+ * \ingroup lib */
+const char* imVersionDate(void);
+
+/** Returns the library current version number. Returns the definition IM_VERSION_NUMBER. \n
+ * Can be compared in run time with IM_VERSION_NUMBER to compare compiled and linked versions of the library.
+ *
+ * \verbatim im.VersionNumber() -> version: number [in Lua 5] \endverbatim
+ * \ingroup lib */
+int imVersionNumber(void);
+
+
+#if defined(__cplusplus)
+}
+#endif
+
+
+/*! \mainpage IM
+ * <CENTER>
+ * <H3> Image Representation, Storage, Capture and Processing </H3>
+ * Tecgraf: Computer Graphics Technology Group, PUC-Rio, Brazil \n
+ * http://www.tecgraf.puc-rio.br/im \n
+ * mailto:im@tecgraf.puc-rio.br
+ * </CENTER>
+ *
+ * \section over Overview
+ * \par
+ * IM is a toolkit for Digital Imaging.
+ * \par
+ * It provides support for image capture, several image file formats and many image processing operations.
+ * \par
+ * Image representation includes scientific data types (like IEEE floating point data)
+ * and attributes (or metadata like GeoTIFF and Exif tags).
+ * Animation, video and volumes are supported as image sequences,
+ * but there is no digital audio support.
+ * \par
+ * The main goal of the library is to provide a simple API and abstraction
+ * of images for scientific applications.
+ * \par
+ * The toolkit API is written in C.
+ * The core library source code is implemented in C++ and it is very portable,
+ * it can be compiled in Windows and UNIX with no modifications.
+ * New image processing operations can be implemented in C or in C++.
+ * \par
+ * IM is free software, can be used for public and commercial applications.
+ * \par
+ * This work was developed at Tecgraf/PUC-Rio
+ * by means of the partnership with PETROBRAS/CENPES.
+ *
+ * \section author Author
+ * \par
+ * Basic Software Group @ Tecgraf/PUC-Rio
+ * - Antonio Scuri scuri@tecgraf.puc-rio.br
+ *
+ * \section copyright Copyright Notice
+\verbatim
+
+****************************************************************************
+Copyright (C) 1994-2008 Tecgraf, PUC-Rio.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+****************************************************************************
+\endverbatim
+ */
+
+
+/** \defgroup imagerep Image Representation
+ * \par
+ * See \ref im.h
+ */
+
+
+/** \defgroup file Image Storage
+ * \par
+ * See \ref im.h
+ */
+
+
+/** \defgroup format File Formats
+ * \par
+ * See \ref im.h
+ *
+ * Internal Predefined File Formats:
+ * \li "BMP" - Windows Device Independent Bitmap
+ * \li "PCX" - ZSoft Picture
+ * \li "GIF" - Graphics Interchange Format
+ * \li "TIFF" - Tagged Image File Format
+ * \li "RAS" - Sun Raster File
+ * \li "SGI" - Silicon Graphics Image File Format
+ * \li "JPEG" - JPEG File Interchange Format
+ * \li "LED" - IUP image in LED
+ * \li "TGA" - Truevision Targa
+ * \li "RAW" - RAW File
+ * \li "PNM" - Netpbm Portable Image Map
+ * \li "ICO" - Windows Icon
+ * \li "PNG" - Portable Network Graphic Format
+ *
+ * Other Supported File Formats:
+ * \li "JP2" - JPEG-2000 JP2 File Format
+ * \li "AVI" - Windows Audio-Video Interleaved RIFF
+ * \li "WMV" - Windows Media Video Format
+ *
+ * Some Known Compressions:
+ * \li "NONE" - No Compression.
+ * \li "RLE" - Run Lenght Encoding.
+ * \li "LZW" - Lempel, Ziff and Welsh.
+ * \li "JPEG" - Join Photographics Experts Group.
+ * \li "DEFLATE" - LZ77 variation (ZIP)
+ *
+ * \ingroup file */
+
+
+/* Library Names Convention
+ *
+ * Global Functions and Types - "im[Object][Action]" using first capitals (imFileOpen)
+ * Local Functions and Types - "i[Object][Action]" using first capitals (iTIFFGetCompIndex)
+ * Local Static Variables - same as local functions and types (iFormatCount)
+ * Local Static Tables - same as local functions and types with "Table" suffix (iTIFFCompTable)
+ * Variables and Members - no prefix, all lower case (width)
+ * Defines and Enumerations - all capitals (IM_ERR_NONE)
+ *
+ */
+
+
+#endif