IM: im_format_raw.h Source File

IM - An Imaging Tool

im_format_raw.h

Go to the documentation of this file.
00001 /** \file
00002  * \brief Initialize the RAW Format Driver
00003  * Header for internal use only.
00004  *
00005  * See Copyright Notice in im_lib.h
00006  * $Id: im_format_raw.h,v 1.1 2005/04/02 22:07:00 scuri Exp $
00007  */
00008 
00009 #ifndef __IM_FORMAT_RAW_H
00010 #define __IM_FORMAT_RAW_H
00011 
00012 #if defined(__cplusplus)
00013 extern "C" {
00014 #endif
00015 
00016 /** \defgroup raw RAW - RAW File
00017  * 
00018  * \par
00019  * The file must be open/created with the functions \ref imFileOpenRaw and \ref imFileNewRaw.
00020  * 
00021  * \section Description
00022  * 
00023  * \par
00024  * Internal Implementation.
00025  * \par
00026  * Supports RAW binary images. You must know image parameters a priori. \n
00027  * You must set the IM_INT attributes "Width", "Height", "ColorMode", "DataType" before the imFileReadImageInfo/imFileWriteImageInfo functions.
00028  * \par
00029  * The data must be in binary form, but can start in an arbitrary offset from the begining of the file, use attribute "StartOffset".
00030  * The default is at 0 offset. 
00031  * \par
00032  * Integer sign and double precision can be converted using attribute "SwitchType". \n
00033  * The conversions will be BYTE<->CHAR, USHORT<->SHORT, INT<->UINT, FLOAT<->DOUBLE.
00034  * \par
00035  * Byte Order can be Little Endian (Intel=1) or Big Endian (Motorola=0), use the attribute "ByteOrder", the default is the current CPU.
00036  * \par
00037  * The lines can be aligned to a BYTE (1), WORD (2) or DWORD (4) boundaries, ue attribute "Padding" with the respective value.
00038  * \par
00039  * See \ref im_raw.h
00040  * 
00041  * \section Features
00042  *
00043 \verbatim
00044     Data Types: <all>
00045     Color Spaces: all, except MAP.
00046     Compressions: 
00047       NONE - no compression 
00048     Can have more than one image, depends on "StartOffset" attribute.
00049     Can have an alpha channel.
00050     Components can be packed or not.
00051     Lines arranged from top down to bottom or bottom up to top.
00052     Handle() returns a imBinFile* pointer.
00053 
00054     Attributes:
00055       Width, Height, ColorMode, DataType IM_INT (1)
00056       StartOffset, SwitchType, ByteOrder, Padding  IM_INT (1)
00057 \endverbatim
00058  * \ingroup format */
00059 imFormat* imFormatInitRAW(void);
00060 
00061 
00062 #if defined(__cplusplus)
00063 }
00064 #endif
00065 
00066 #endif