Main Page | Modules | Class List | File List | Class Members | File Members

image_channel.h

Go to the documentation of this file.
00001 
00014 /* This library is free software; you can redistribute it and/or
00015    modify it under the terms of the GNU Lesser General Public
00016    License as published by the Free Software Foundation; either
00017    version 2.1 of the License, or (at your option) any later version.
00018 
00019    This library is distributed in the hope that it will be useful,
00020    but WITHOUT ANY WARRANTY; without even the implied warranty of
00021    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00022    Lesser General Public License for more details.
00023 
00024    You should have received a copy of the GNU Lesser General Public
00025    License along with this library; if not, write to the Free Software
00026    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00027 */
00028 
00029 #ifndef _GAN_IMAGE_CHANNEL_H
00030 #define _GAN_IMAGE_CHANNEL_H
00031 
00032 #include <gandalf/image/image_defs.h>
00033 
00034 #ifdef __cplusplus
00035 extern "C" {
00036 #endif
00037 
00051 typedef enum
00052 {
00054    GAN_INTENSITY_CHANNEL,
00055 
00057    GAN_RED_CHANNEL, GAN_GREEN_CHANNEL, GAN_BLUE_CHANNEL,
00058 
00060    GAN_ALPHA_CHANNEL,
00061 
00063    GAN_X_CHANNEL,
00064 
00066    GAN_Y_CHANNEL,
00067 
00069    GAN_Z_CHANNEL,
00070 
00072    GAN_ALL_COLOUR_CHANNELS,
00073 
00075    GAN_ALL_CHANNELS
00076 } Gan_ImageChannelType;
00077 
00078  Gan_Image *gan_image_extract_channel_q ( const Gan_Image *source,
00079                                                      Gan_ImageChannelType channel,
00080                                                      unsigned r0,     unsigned c0,
00081                                                      unsigned height, unsigned width,
00082                                                      Gan_Image *dest );
00083  Gan_Bool   gan_image_insert_channel ( const Gan_Image *source,
00084                                                   Gan_ImageChannelType schannel,
00085                                                   Gan_Image *dest,
00086                                                   Gan_ImageChannelType dchannel );
00087  Gan_Bool gan_image_fill_channel_const ( Gan_Image *image,
00088                                                     Gan_ImageChannelType channel,
00089                                                     Gan_Pixel *pixel );
00090  Gan_Bool gan_image_get_minimum_channel_value ( Gan_Image *image,
00091                                                            Gan_Image *mask,
00092                                                            Gan_ImageChannelType channel,
00093                                                            Gan_Pixel *minval );
00094  Gan_Bool gan_image_get_maximum_channel_value ( Gan_Image *image,
00095                                                            Gan_Image *mask,
00096                                                            Gan_ImageChannelType channel,
00097                                                            Gan_Pixel *maxval );
00098  Gan_Image* gan_image_threshold_channel_q ( const Gan_Image *source,
00099                                                        const Gan_Image *mask,
00100                                                        Gan_ImageChannelType channel,
00101                                                        float threshold,
00102                                                        Gan_Image *dest );
00103 
00119  Gan_Image *gan_image_extract_channel_s ( const Gan_Image *source,
00120                                          Gan_ImageChannelType channel,
00121                                          unsigned r0,     unsigned c0,
00122                                          unsigned height, unsigned width );
00123 
00135  Gan_Image *gan_image_fill_channel_zero ( Gan_Image *image,
00136                                                      Gan_ImageChannelType channel );
00137 
00152  Gan_Image* gan_image_threshold_channel_s ( const Gan_Image *source,
00153                                                        const Gan_Image *mask,
00154                                                        Gan_ImageChannelType channel,
00155                                                        float threshold );
00156 
00165 #ifdef __cplusplus
00166 }
00167 #endif
00168 
00169 #endif /* #ifndef _GAN_IMAGE_CHANNEL_H */

Generated on Fri Mar 17 12:44:47 2006 by  doxygen 1.3.9.1