00001 #ifndef _WINC_NIDSIMAGE
00002 #define _WINC_NIDSIMAGE
00003
00004 #include <WXP/Date.h>
00005 #include <WXP/Domain.h>
00006 #include <WXP/Filename.h>
00007 #include <WXP/Grid.h>
00008 #include <WXP/Image.h>
00009 #include <WXP/NidsInfo.h>
00010
00011 namespace WXP {
00012 class NidsImage {
00013 int cradius;
00014 int ramp_cut;
00015 int ramp_len;
00016 float thres[200];
00017 int mix[100];
00018 int snow[100];
00019 int nthres;
00020 int clear_air;
00021 int interp;
00022 int type;
00023 int mode;
00024
00025 NidsInfo info;
00026 Domain domain;
00027 Date date;
00028 int nbin;
00029 float *data;
00030 int data_size;
00031
00032 public:
00033 NidsImage();
00034 NidsImage( const char *str );
00035 ~NidsImage();
00036 int init();
00037 int setParam( const char *str );
00038 int setRamp( int cut, int len );
00039 inline int getRampCut(){ return ramp_cut; };
00040 inline int getRampLen(){ return ramp_len; };
00041 int setThres( const char *str );
00042 int setClearAirUse( int val );
00043 inline int getClearAirUse(){ return clear_air; };
00044 int getMode();
00045 int getIndex( float val );
00046 int readSite( Filename &filename );
00047 int addSite( Image &image );
00048 int addSite( Filename &filename, Image &image );
00049 int setImage( Filename &filename, Image &image );
00050 int applyMask(Image &image, Grid &mask);
00051 int print();
00052 int printSite();
00053
00054 enum Type {
00055 RADIAL,
00056 RASTOR
00057 };
00058 };
00059 }
00060 #endif