• Main Page
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

/home/pascal/depot/filedata/src/epr/epr_band.h

00001 /*
00002  * $Id: epr__band_8h_source.html,v 1.11 2013/02/14 16:57:53 pascal Exp $
00003  *
00004  * Copyright (C) 2002 by Brockmann Consult (info@brockmann-consult.de)
00005  *
00006  * This program is free software; you can redistribute it and/or modify it
00007  * under the terms of the GNU General Public License as published by the
00008  * Free Software Foundation. This program is distributed in the hope it will
00009  * be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
00010  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00011  * See the GNU General Public License for more details.
00012  *
00013  * You should have received a copy of the GNU General Public License
00014  * along with this program; if not, write to the Free Software
00015  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
00016  */
00017 
00018 #ifndef EPR_BAND_H_INCL
00019 #define EPR_BAND_H_INCL
00020 
00021 #ifdef __cplusplus
00022 extern "C"
00023 {
00024 #endif
00025 
00026 #include "epr_ptrarray.h"
00027 
00028 #include <stdio.h> /* just to get the ANSI-C type FILE */
00029 
00030 
00039 EPR_EScalingMethod epr_str_to_scaling_method(const char* str);
00040 
00041 
00050 EPR_ESampleModel epr_str_to_sample_offset(const char* str);
00051 
00052 
00061 EPR_SDatasetRef epr_get_ref_struct(EPR_SProductId* product_id, const char* str);
00062 
00063 
00072 float epr_get_scaling_factor(EPR_SProductId* product_id,  const char* str);
00073 float epr_get_scaling_params(EPR_SProductId* product_id,  const char* str);
00074 
00085 int epr_read_band_measurement_data(EPR_SBandId* band_id, int offset_x, int offset_y, EPR_SRaster* raster);
00086 
00097 int epr_read_band_annotation_data(EPR_SBandId* band_id,
00098                        int offset_x,
00099                        int offset_y,
00100                        EPR_SRaster* raster);
00101 
00102 
00118 void decode_line_uchar_1_of_1_to_float   (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00119 void decode_line_ushort_1_of_1_to_float  (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00120 void decode_line_short_1_of_1_to_float   (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00121 void decode_line_short_1_of_2_to_float   (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00122 void decode_line_short_2_of_2_to_float   (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00123 void decode_line_char_1_of_1_to_float    (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00124 void decode_line_uchar_1_of_1_to_uchar   (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00125 void decode_line_uchar_1_of_2_to_uchar   (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00126 void decode_line_uchar_2_of_2_to_uchar   (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00127 void decode_line_ushort_1_of_1_to_ushort (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00128 void decode_line_uchar_1_of_2_to_float   (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00129 void decode_line_uchar_2_of_2_to_float   (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00130 void decode_line_uchar_2_to_f_to_float   (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00131 void decode_line_uchar_3_to_i_to_ulong   (void* sourceArray, EPR_SBandId* band_id, int xo, int raster_width, int s_x, void* raster_buffer, int raster_pos);
00146 void transform_array_short_to_float (void* sourceArray, EPR_SBandId* band_id, float* raster_buffer, uint nel);
00147 void transform_array_ushort_to_float(void* sourceArray, EPR_SBandId* band_id, float* raster_buffer, uint nel);
00148 void transform_array_long_to_float  (void* sourceArray, EPR_SBandId* band_id, float* raster_buffer, uint nel);
00149 void transform_array_ulong_to_float (void* sourceArray, EPR_SBandId* band_id, float* raster_buffer, uint nel);
00150 void transform_array_short_to_short (void* sourceArray, EPR_SBandId* band_id, short* raster_buffer, uint nel);
00151 void transform_array_ushort_to_ushort(void* sourceArray, EPR_SBandId* band_id, ushort* raster_buffer, uint nel);
00152 void transform_array_long_to_long   (void* sourceArray, EPR_SBandId* band_id, long* raster_buffer, uint nel);
00153 void transform_array_ulong_to_ulong (void* sourceArray, EPR_SBandId* band_id, ulong* raster_buffer, uint nel);
00165 void mirror_float_array  (float*  raster_buffer, uint raster_width, uint raster_height);
00166 void mirror_uchar_array  (uchar*  raster_buffer, uint raster_width, uint raster_height);
00167 void mirror_ushort_array (ushort* raster_buffer, uint raster_width, uint raster_height);
00168 void mirror_ulong_array  (ulong*  raster_buffer, uint raster_width, uint raster_height);
00183 float epr_interpolate2D(float wi, float wj, float x00, float x10, float x01, float x11);
00184 
00201 void decode_tiepoint_band(float* sa_beg,
00202                                                   float* sa_end,
00203                                                   ulong samples_per_tie_pt,
00204                                                   uint num_elems,
00205                                                   EPR_SBandId* band_id,
00206                                                   int xo,
00207                                                   float scan_offset_x,
00208                                                   float y_mod,
00209                                                   int raster_width,
00210                                                   int s_x,
00211                                                   float* raster_buffer,
00212                                                   int raster_pos);
00213 typedef void (*EPR_FLineDecoder)(void* sourceArray,
00214                     EPR_SBandId* band_id,
00215                     int xo,
00216                     int raster_width,
00217                     int s_x,
00218                     void* raster_buffer,
00219                     int raster_pos);
00220 
00224 EPR_FLineDecoder select_line_decode_function(EPR_EDataTypeId band_daty, EPR_ESampleModel band_smod, EPR_EDataTypeId daty_id);
00225 
00226 typedef void (*EPR_FArrayTransformer)(void* sourceArray,
00227                                      EPR_SBandId* band_id,
00228                                      float* raster_buffer,
00229                                      uint nel);
00230 
00234 EPR_FArrayTransformer select_transform_array_function(EPR_EDataTypeId band_daty, EPR_EDataTypeId daty_id);
00235 
00244 void epr_zero_invalid_pixels(EPR_SRaster* raster, EPR_SRaster* bm_raster);
00245 
00251 void epr_free_band_id(EPR_SBandId* band_id);
00252 
00253 
00254 
00255 EPR_SPtrArray* epr_create_band_ids(EPR_SProductId* product_id);
00256 
00257 
00258 
00259 #ifdef __cplusplus
00260 } /* extern "C" */
00261 #endif
00262 
00263 #endif
00264 /* #ifndef EPR_BAND_H_INCL */

Generated on Thu Feb 14 2013 17:59:03 for filedata.kdevelop by  doxygen 1.7.1