00001 #ifndef _WINC_GRIDPLOT
00002 #define _WINC_GRIDPLOT
00003
00004 #include <WXP/Date.h>
00005 #include <WXP/Domain.h>
00006 #include <WXP/Drawing.h>
00007 #include <WXP/Filename.h>
00008 #include <WXP/Grid.h>
00009 #include <WXP/GridCont.h>
00010 #include <WXP/GridVect.h>
00011 #include <WXP/Listener.h>
00012 #include <WXP/ModelSpec.h>
00013 #include <WXP/Plot.h>
00014 #include <WXP/String.h>
00015 #include <WXP/Timezone.h>
00016 #include <WXP/VarNameItem.h>
00017
00018 namespace WXP {
00019 class GridPlot : public Drawing, public Listener {
00020 char model[20];
00021 bool map;
00022 int sync;
00023 ModelSpec mspec;
00024 Filename filename;
00025 String param_str;
00026 String color_table;
00027 String color_fill;
00028 String time;
00029 String level;
00030 String variable;
00031 GridCont gplot;
00032 GridVect vplot;
00033 Grid grid;
00034 Timezone tz;
00035 int map_fill;
00036
00037 public:
00038 GridPlot();
00039 GridPlot( const char *param );
00040 int init();
00041 int setParam( const char *str );
00042 int setPath( const char *str );
00043 int setFile( );
00044 int setInput( const char *type );
00045 int setNameConv( const char *name );
00046 int setHour( const char *str );
00047 int setFilename( );
00048 int setFilename( const char *str );
00049 int setFilename( Date &date );
00050 int setFilename( Date &date, const char *param );
00051 int setForeTime( const char *fore );
00052 int getDate( Date &date );
00053 int getInitDate( Date &date );
00054 int getDateOffset();
00055 int getLoopType();
00056 int getNumFrames();
00057 int setModel( const char *str );
00058 inline int setMap( bool val ){ map = val; return 1; };
00059 void callback( const char *ev_str, const char *ev_data, const void *data );
00060 int setColorTable( const char *str );
00061 int setColorFill( const char *str );
00062 int setVariable( const char *str );
00063 inline bool isTypeFill(){ return gplot.isTypeFill(); };
00064 inline int setMapFill( int val ){ map_fill = val; return 1; };
00065 int getDomain( Domain &domain );
00066 inline int getSync(){ return sync; };
00067 int draw( Plot &plot, Grid &grid );
00068 int draw( Plot &plot );
00069 int print();
00070
00071 static int setSpec( VarSpec &vs, VarSpec &vs2 );
00072 };
00073 }
00074 #endif