#ifndef BMS_DEFSs #define BMS_DEFSs
#define USHORT unsigned short #define UBYTE unsigned char
#include "BMSD_Defs.h" /************************************ * definitions of MeteoeServerTools * ************************************/ /////////////////////////////////////////// // Messages /////////////////////////////////////////// #define WM_BONITO_USER_MESSAGES (WM_USER+6000) //Bonito send messages to your application #define WM_CLIENT_LOGIN (WM_BONITO_USER_MESSAGES+945) //your application announces that it is started now #define WM_CLIENT_LOGOUT (WM_BONITO_USER_MESSAGES+946) //your application announces that it is out of service now #define WM_METEOCOM_LOGIN (WM_BONITO_USER_MESSAGES+950) //the MeteoCom Program announces that it is started now #define WM_METEOCOM_LOGOUT (WM_BONITO_USER_MESSAGES+951) //the MeteoCom Program announces that it is out of service now #define WM_BONITO_PICFILE (WM_BONITO_USER_MESSAGES+960) //start the total refresch of your PictureFilesList (fax images files) #define WM_BONITO_TXTFILE (WM_BONITO_USER_MESSAGES+961) //start the total refresch of your TextFilesList #define WM_BONITO_SYNFILE (WM_BONITO_USER_MESSAGES+965) //start the total refresch of your SynopFilesList #define WM_BONITO_DNL_POS (WM_BONITO_USER_MESSAGES+970) //if download then set dnl progress #define WM_BONITO_DNL_TXT (WM_BONITO_USER_MESSAGES+971) //if download then set dnl progress text #define WM_BONITO_DNL_SUMPOS (WM_BONITO_USER_MESSAGES+972) //if download then set sum progress #define WM_BONITO_DNL_COMPOS (WM_BONITO_USER_MESSAGES+973) //if compute then set compute progress #define WM_BONITO_DNL_QUIT (WM_BONITO_USER_MESSAGES+974) //was download then set the new situation #define WM_BONITO_DNL_ERROR (WM_BONITO_USER_MESSAGES+975) //for download error message --> get ErrorMessages.log #define WM_METEOCOM_COL_CHANGE (WM_BONITO_USER_MESSAGES+980) //start the total refresch of the color matrix #define WM_METEOCOM_DAT_CHANGE (WM_BONITO_USER_MESSAGES+981) //start the total refresch of intern net meteo data reference #define WM_METEOCOM_SCROLL_POS (WM_BONITO_USER_MESSAGES+990) //scroll your slider position /////////////////////////////////////////// // DLL parameter //////////////////////////////////////// typedef struct { char MeteoAccessDir[512]; //the current directory MeteoCom, who the system lives char MeteoColorDir[512]; //the current directory of color register char MeteoDataDir[512]; //the current directory of MeteoCom Data char MeteoExecute[512]; //the current name for execute the MeteoCom char MeteoViewer[512]; //the current name for execute the MeteoViwer char RadioDir[512]; //the current directory for RadioControl char RadioSynopDir[512]; //the current directory of Radio Synopfiles char ImagesDir[512]; //the current directory of Images char TextDir[512]; //the current directory of radio reveived Textes char NetDir[512]; //if this set, then is it a Network installation HWND MeteoComHWND; //intern: the handle to the MeteoCom window HWND MeteoViewerHWND; //intern: the handle to the MeteoViewer window int grid_win_left; //intern: the last used left coordinate int grid_win_top; //intern: the last used top coordinate int grid_win_bottom; //intern: the last used bottom coordinate int grid_win_right; //intern: the last used right coordinate int grid_win_xres; //intern: the last loaded data x-resulution int grid_win_yres; //intern: the last loaded data x-resulution int grid_win_max; //intern: int grid_win_x; //intern: int grid_win_y; //intern: int iso_width[PLANE_MAXTYPE]; //the last array of loaded line width (PLANE_MAXTYPE == 11) int refresch; //non zero force the redraw in the DrawingTools void *tmp; //intern: int meteocom_start; //intern (have meteoCom started or was it self standby) int RadioControlExist; //is 1 if a RadioControl exist short GridSize; //0=small, 1=medium, 2=large short flag; //temperure in farenheit=1; } BMSDLL_DATA; /////////////////////////////////////////// // screen grids - drawings - colors /////////////////////////////////////////// typedef struct { BYTE prmsl; //scaled Pressure in [hPa] 900+prmsl 0 = no data of Pressure BYTE temp; //scaled Temperature in [C] temp-128 0 = no data of Temperature BYTE wtemp; //scaled Water Temp. in [C] temp-128 0 = no data of Water Temperature BYTE btcdc; //scaled Cloud Coverage in [%] btcdc 0 = no Clouds 128=not valid BYTE prcpt; //scaled Precipitation in [mm/h] 0.1 mm prcpt 0 = no Precipitation BYTE weasd; //scaled Snow deep in [cm/h] 1.0 cm weasd 0 = no snow BYTE wind; //wind speed in [m/s] 0.25 * wind wind==0 = no data of wind speed BYTE wdir; //wind direction in [°] 1.40625 * wdir wdir==0 = no data of wind direction BYTE rh; //relative humidity BYTE pflag; //type of precipitation flags ics, snow, rain .... BYTE htsgw; //Sig height of waves in [m] 0.25 * htsgw htsgw==0 = no data of waves height BYTE wvdir; //Dir of wind waves in [°] 1.40625 * wvdir wvdir==0 = no data of waves direction short lon; //lon in minutes of bonito world grid system left=-10800=180W top= -5400=90N short lat; //lat in minutes of bonito world grid system right=10800=180E bottom= 5400=90S short x; //sreen x pixel left = 0 top=0 short y; //sreen y pixel right bottom = positive values }SCREEN_GRID_DATA; typedef CArray<SCREEN_GRID_DATA,SCREEN_GRID_DATA&> ScreenGridData; //matrix of colors of a meteo drawing value //this is in references to SCREEN_GRID_DATA // !!! the size of this matrix must be always a array of 256 x COLOR_MATRIX typedef struct { COLORREF press; // pressure color scale COLORREF airtemp; // temperature color scale COLORREF sfctemp; // water / surface temperature color scale COLORREF wind; // Speed of Wind color scale (in Beaufort) COLORREF clouds; // cloud color scale COLORREF prcpt; // Precipitation color scale COLORREF weasd; // Snow deep color scale COLORREF waves; // wave height color scale COLORREF rh; // Relative humidity color scale COLORREF bathy; // color scale of the bathymetry (sea and land) }COLOR_MATRIX; typedef CArray<COLOR_MATRIX,COLOR_MATRIX&> ColorMatrix;
//the parameter set of symbol dimension typedef struct { //the grid width int GRIDWIDTH; //grid point width = computings resolution (in screen pixel) int GRIDMIDDLE; //the middle dot of the quader int SYMBOLGRID; //symbol grid resolution (in screen pixel) int SYMBOLMIDDEL; //the middle of SYMBOLGRID int SYMBOLHALFMID; //the half middel of SYMBOLGRID int SYMBOLTOP; //symbol top set line for figures //drawing lenghts for a wind direction arrow double ARROW_LEN; //the lenght of the arrow double ARROW_LEN_MID; //the radius of middle point of then arrow double ARROW_WING; //the wing lenght of the arrow //Figures Font Size int FIG_HEIGHT; //the Font.lfHeight of a figures int FIG_WEIGHT; //the Font.lfWeight of a figures // the symbol scale double ObjectScale; //the scale of the symbols - size default use 0.02 /.025 / 0.03 }DRAW_PARA;
/////////////////////////////////////////// // picture, synop and text file lists /////////////////////////////////////////// //Size of a mini picture (BonitoTumb) #define FAX_LPIC_X 128 //bmWidth #define FAX_LPIC_Y 102 //bmHeight #define FAX_LPIC_W 384 //bmWidthBytes = FAX_LPIC_X*3 #define FAX_LPIC_P 1 //bmPlanes #define FAX_LPIC_B 24 //bmBitsPixel #define FAX_DATA_LEN 39168 //FAX_LPIC_X*FAX_LPIC_Y*3 typedef struct { char filepath[1024]; char filename[248]; char itemname[248]; char sortname[248]; int sat; int channel; int sector; int color; time_t filedate; int select; int flag; int filelen; int FavoMark; int Fselect; int Sselect; time_t TrashCleanDate; int height; int width; }PICFILELIST; typedef CArray<PICFILELIST,PICFILELIST&> PictureFileList;
//Text Folders #define FILE_ID_EU 3 //EUROPE #define FILE_ID_EW 5 //WEST.EUROPE #define FILE_ID_EN 7 //NORTH EUROPE #define FILE_ID_MM 9 //MEDITERRA #define FILE_ID_ME 11 //WEST.MEDITERRA #define FILE_ID_MW 13 //EAST.MEDITERRA #define FILE_ID_NO 15 //NORTHSEA #define FILE_ID_BA 17 //BALTIC #define FILE_ID_NV 19 //NAVTEX #define FILE_ID_WA 21 //WARNINGS #define FILE_ID_IN 23 //DIVERSE / INFOS #define FILE_ID_SYN 25 //SYNOP #define FILE_ID_XA 27 //AAXX #define FILE_ID_XB 29 //BBXX #define FILE_ID_NZ 40 //Notizes //RED label for Warnings #define WFILE_ID_EU 41 //EUROPE #define WFILE_ID_EW 42 //WEST.EUROPE #define WFILE_ID_EN 43 //NORTH EUROPE #define WFILE_ID_MM 44 //MEDITERRA #define WFILE_ID_ME 45 //WEST.MEDITERRA #define WFILE_ID_MW 46 //EAST.MEDITERRA #define WFILE_ID_NO 47 //NORTHSEA #define WFILE_ID_BA 48 //BALTIC #define DIR_ID_RX 1 //RX-LIVE #define DIR_ID_EU 2 //EUROPE #define DIR_ID_EW 4 //WEST.EUROPE #define DIR_ID_EN 6 //NORTH EUROPE #define DIR_ID_MM 8 //MEDITERRA #define DIR_ID_ME 10 //WEST.MEDITERRA #define DIR_ID_MW 12 //EAST.MEDITERRA #define DIR_ID_NO 14 //NORTHSEA #define DIR_ID_BA 16 //BALTIC #define DIR_ID_NV 18 //NAVTEX #define DIR_ID_WA 20 //WARNINGS #define DIR_ID_IN 22 //DIVERSE / INFOS #define DIR_ID_SYN 24 //SYNOP #define DIR_ID_XA 26 //AAXX #define DIR_ID_XB 28 //BBXX #define DIR_ID_L1 30 //1.Radio #define DIR_ID_L2 31 //2.Radio #define DIR_ID_L3 32 //3.Navtex Radio #define DIR_ID_LX 33 //live not active #define DIR_ID_B0 34 //MEM #define DIR_ID_B1 35 //MEM BANK1 #define DIR_ID_B2 36 //MEM BANK2 #define DIR_ID_B3 37 //MEM BANK3 #define DIR_ID_TR 38 //TRASH #define DIR_ID_NZ 39 //Notizes
//Text Types
#define TXT_TYPE_RX 0x80 //"LIVE RX"
#define TXT_TYPE_DR 0x40 //"DIRECTORY"
#define TXT_TYPE_XX 0 //"UNKNOW"
#define TXT_TYPE_WO 1 //"WARNING"
#define TXT_TYPE_FQ 2 //"WEATHER-REPORT"
#define TXT_TYPE_FE 3 //"FORCAST"
#define TXT_TYPE_NO 4 //"NOTICES"
#define TXT_TYPE_SX 5 //"STATION-REPORT"
#define TXT_TYPE_SM 6 //"SYNOP-DATA"
#define TXT_TYPE_SS 7 //"SYNOP-DATA"
#define TXT_TYPE_WW 8 //"NAV-WARNINGS"
#define TXT_TYPE_IN 9 //"INFO"
typedef struct
{
char filepath[256];
char filename[48];
char itemname[32];
char sortname[32];
time_t filedate;
HTREEITEM hItem;
int dirID; //DIR_ID_EU TEXT_FILE_BA, .....
int TreeDirID; //DIR_ID_EU TEXT_FILE_BA, .....
int validtime;
int texttype;
int flag;
int reserve[2];
}RTFFILENAME;
typedef CArray<RTFFILENAME,RTFFILENAME&> TextFileList;
typedef struct
{
char filepath[256];
char apendix[16];
char satname[64];
char text[64];
int home_select;
int mobile_select;
int flag;
int sat;
int sector;
int channel;
int color;
}IMGSYNLIST;
typedef CArray<IMGSYNLIST,IMGSYNLIST&> ImgSynFileList;
///////////////// SYNOP ************ no comment in englich - to complex ****************SYNOP /////////////////
#define K2SIZ 80
#define STSIZ 20
#define SYNOPPRINT 1
#define SYNOPVIEW 0
#define D_CLOUDS (0x00000001)
#define D_TEMP (0x00000002)
#define D_PRESS (0x00000004)
#define D_WIND (0x00000008)
#define R_STATION (0x00010000)
#define R_TEMP (0x00020000)
#define R_PRESS (0x00040000)
#define R_WIND (0x00080000)
#define R_ISOBAR (0x00100000)
#define PARTITION (0x00200000)
//Synopflags
#define SY_LUFTD (0x00010000)
#define SY_TEMP (0x00020000)
#define SY_WOLK (0x00040000)
#define SY_WELL (0x00080000)
#define SY_SONST (0x80000000)
//********************************************************************************
//* Flags, die das Vorhandensein einzelner Messwerte definieren *
//********************************************************************************
#define VALID (0x00000001L) // gültige Meldung
#define NOTAVAIL (0x00000002L) // keine Daten verfügbar
#define HSB (0x00000004L) // horizontale Sichtweite am Boden
#define WRICHT (0x00000008L) // Richtung, aus der der Wind weht
#define WGES (0x00000010L) // Windgeschwindigkeit
#define LTEMP (0x00000020L) // Lufttemperatur
#define TTEMP (0x00000040L) // Taupunkttemperatur
#define RELF (0x00000080L) // relative Luftfeuchtigkeit
#define PSTAT (0x00000100L) // Luftdruck in Stationshöhe
#define PMEER (0x00000200L) // Luftdruck in Meereshöhe
#define PDF (0x00000400L) // Höhe einer Standarddruckfläche
#define LDA (0x00000800L) // Lufdruckänderung letzte 3 Stunden
#define NDS (0x00001000L) // Niederschlagsmenge
#define GGW (0x00002000L) // gegenwärtiges Wetter
#define GGWA (0x00004000L) // gegenwärtiges Wetter von aut.Station
#define WOLKEN (0x00008000L) // Art der Wolken verschiedener Höhen
#define KURS (0x00010000L) // Kurs und Geschwindigkeit des Schiffs
#define MTEMP (0x00020000L) // Meeresoberflächentemperatur
#define WELLE (0x00040000L) // Wellenperiode, -höhe
#define WINDSEE (0x00080000L) // Windseeperiode, -höhe
#define DUENUNG (0x00100000L) // Richtung 1. und 2. Dünung
#define D1WELLE (0x00200000L) // Wellenperiode, -höhe der 1. Dünung
#define D2WELLE (0x00400000L) // Wellenperiode, -höhe der 2. Dünung
#define EISANSATZ (0x00800000L) // Eisansatz an Schiffen
#define TMAX (0x01000000L) // höchste Temperatur d. letzten 12 Std
#define TMIN (0x02000000L) // tiefste Temperatur d. letzten 12 Std
#define TMINB (0x04000000L) // tiefste Bodentemp. der letzten Nacht
#define STIEF (0x08000000L) // Schneetiefe
#define PWOLKEN (0x10000000L) // präzise Angaben zu Wolkentypen
#define UWOLKEN (0x20000000L) // Wolken unterhalb der Station
#define RUFZ (0x40000000L) // Rufzeichen eines Schiffes
typedef struct
{
int wz; // Stations-IndexNbr des Wetterzentrums
int mess; // Stations-IndexNbr der Messstation
DWORD flags; // Synop-Flags
time_t time; // Uhrzeit der Meldung (UTC)
time_t mtime; // Uhrzeit der Messung (UTC)
short lat; // Station/SHIP Latitude in Minuten
short lon; // Station/SHIP Longitude in Minuten
short height; // Station/SHIP Höhe in Meter
short msg; // laufende Nummer der Meldung
short wricht; // Richtung, aus der Wind weht
short ltemp; // Lufttemperatur in 1/10°
short ttemp; // Taupunkttemperatur in 1/10°
short mtemp; // Meeresoberflächentemp. in 1/10°
short tmin; // tiefste Temp. der letzten 12 Std in 1/10°
short tmax; // höchste Temp. der letzten 12 Std in 1/10°
short relf; // relative Luftfeuchtigkeit in %
short pstat; // Luftdruck in Stationshöhe in 1/10 hPa
short pmeer; // Luftdruck in Meereshöhe in 1/10 hPa
short pdf; // Höhe einer Standarddruckfläche in m
short stdf; // Standarddruckfläche in hPa
short lda; // Luftdruckänderung der letzten 3 Std 1/10 hPa
short nds; // Niederschlagsmenge in 1/10 mm
short hwel; // Höhe der Wellen in 0.1 m
short stief; // Schneetiefe in cm (bis 996)
short bojenum; // Seriennummer der Boje
BYTE ctype; // Codetyp
char descmsg[3]; // DBKenner: Text der Meldungsart
char descarea[3]; // DBKenner: Text der geographischen Herkunft
char descext[5]; // DBKenner: Text des erweiterten Kopfes
BYTE range; // Kennzeichnung des Verbreitungsgrades
BYTE wges; // Windgeschwindigkeit, Einheit windbst
char desctyp; // Kennbuchstabe der Meldungsart
char windbst; // Art der Windbestimmung
char ndsk; // Angabe, ob Niederschlagsdaten vorhanden
char twet; // Angabe Stationstyp, Wetter
char twh[3]; // DBKenner: Untergrenze der tiefsten Wolken
char hsb; // horizontale Sichtweite am Boden
char bed; // Bedeckungsgrad mit Wolken
char ldaa; // Art der Luftdruckänderung der letzten 3 Std
char ndsz; // Zeitraum der Niederschlagsmessung
char ggw; // gegenwärtiges Wetter
char wocl; // Art der tiefen Wolken
char wocm; // Art der mittelhohen Wolken
char woch; // Art der hohen Wolken
char wobed; // Bedeckungsgrad mit CL oder CM Wolken
char kurs; // Richtung des Schiffes
char tempo; // Geschwindigkeit des Schiffes
char pwel; // Periode der Wellen in sec
char pwse; // Periode der Windsee in sec
char hwse; // Höhe der Windsee in 0.5 m
char ddir1; // Richtung der 1. Dünung in 10°
char ddir2; // Richtung der 2. Dünung in 10°
char pwd1; // Periode der Wellen 1. Dünung in sec
char hwd1; // Höhe der Wellen 1. Dünung in 0.5 m
char pwd2; // Periode der Wellen 2. Dünung in sec
char hwd2; // Höhe der Wellen 2. Dünung in 0.5 m
char eaa; // Art des Eisansatzes an Schiffen
char ead; // Dicke des Eisansatzes an Schif.in cm
char eac; // Änderung des Eisansatzes an Schiffen
char tminb; // tiefste Bodentemp. letzter Nacht in °
char bozos; // Bodenzustand ohne Schnee / Eisdecke
char bozms; // Bodenzustand mit Schnee / Eisdecke
char pwob[10]; // Bedeckungsgrad PWOLKEN in 1/8
char pwoh[10]; // Höhen der präzisen Wolkentypen
char uwob; // Bedeckungsgrad Wolken unter Station in 1/8
char uwoa; // Art der Wolken unterhalb der Station
char uwoh; // Höhe der Wolkenoberfläche unterhalb der Station
char uwod; // Oberflächenbeschreibung Wolken unterhalb der Station
char shipreg; // Region + Unterregion Schiffsstandort
char rufz[8]; // Schiffsrufzeichen
} SYN_DATA;
typedef struct
{
int IndexNbr; // Station identifier
short lat; // Station Latitude in Minutes (Y)
short lon; // Station Longitude in Minutes (X)
short height; // Station Height in Meters
char ICAO[5]; // ICAO Airport identifier
char Region[51]; // WMO Region
char Country[81]; // Country or Area
char Station[51]; // Station Name
} SYN_STATION;
#endif
typedef struct
{ //BMSYND = Bonito Meteo Server Synop Data set
int ValidFlags; //what is available
short lat; //Position Latitude in Minutes
short lon; //Position Longitude in Minutes
BMSDATA_SET data; //MeteoServer Data Model
SYN_STATION station; //data of the SynopStation
}BMSD_SYN;
typedef CArray<BMSD_SYN,BMSD_SYN&> BMSDSynopList;
typedef struct { //BMSD_LST = Bonito Meteo Server List = a Array of calculated Data short lat; //Position Latitude in Minutes of the position to get and calculate the data short lon; //Position Longitude in Minutes of tho position to get and calculate the data BMSDATA_SET data; }BMSD_LST; typedef CArray<BMSD_LST,BMSD_LST&> BMSDataList;
//Bonito DetailFlags
//LAY_ = layer / planes / draw fields like arrow fields or temp color planes //FIG_ISO_ = simple lines like isobar or wave line fields //FIG_ = values as figures like grided fields of figures
define LAY_ICE (0x00000002) //color planes of ice fields
#define LAY_STEMP (0x00000004) //color planes of surface temperatur
#define LAY_WTEMP (0x00000008) //color planes of wather temperatur
#define LAY_PRESS (0x00000010) //color planes of pressure
#define LAY_TEMP (0x00000020) //planes of air temperature
#define LAY_SNOW (0x00000040) //color planes of snow
#define LAY_WIND (0x00000080) //planes of wind dirrection arrows
#define LAY_COL_WIND (0x00000100) //planes of colored wind dirrection arrows
#define LAY_WAVE (0x00000200) //colored wave lines planes
#define LAY_RH (0x00000400) //planes of relative huminity
#define LAY_PRECI (0x00000800) //planes of precipitaion
#define LAY_SYMB_PRECI (0x00001000) //sybols of rain, hail or snow
#define LAY_CLOUD_CONV (0x00002000) //planes of convective clouds
#define LAY_CLOUD_BOUND (0x00004000) //planes of boundary clouds
#define LAY_WAVEDIR (0x00008000) //arrows field of wave direction
#define FIG_WAVE (0x00010000) //figure field of height wave
#define FIG_ISO_BAR (0x00020000) //lines as iso bar
#define FIG_ISO_TERM (0x00040000) //lines as iso term
#define FIG_ISO_WAVE (0x00080000) //figure field of height wave
#define FIG_ISO_RH (0x00100000) //iso line of relative huminity
#define FIG_ISO_WTERM (0x00200000) //iso term of wather temperatur
#define FIG_ISO_STERM (0x00400000) //iso term of surface temperatur
#define FIG_PRESS (0x00800000) //figure field of pressure
#define FIG_TEMP (0x01000000) //figure field of air temperature in C°
#define FIG_WIND (0x02000000) //figure field of wind speed in beaufort
#define FIG_RH (0x04000000) //figure field of relative huminity
#define FIG_PRECI (0x08000000) //figure field of precipitation
#define FIG_WTEMP (0x10000000) //figure field of wather temperatur
#define FIG_STEMP (0x20000000) //figure field of surface temperatur
#define FIG_SNOW (0x40000000) //figure field of snow deep
#define LAY_CLOUDS (0x80000000) //layer LAY_CLOUD_CONV & LAY_CLOUD_BOUND
#define SYNOP_ONOFF (0x10000000) //draw synop symbols
#define SYNOP_GRID (0x01000000) //draw grided or original position
#define SYNOP_PRESS (0x00000010)
#define SYNOP_TEMP (0x00000020)
#define SYNOP_CLOUDS (0x00000040)
#define SYNOP_WIND (0x00000080)
//Bonito Messages Service for (one or combination of this)
#define BONITO_PIC_SERVICE 0x1000 //only for picture (fax) service
#define BONITO_TXT_SERVICE 0x2000 //only for text (rtty) service
#define BONITO_SYN_SERVICE 0x4000 //only for synop service
#define BONITO_MET_SERVICE 0x8000 //only for internet meteo service
//BONITO_PIC_SERVICE|BONITO_TXT_SERVICE .....picture and text service
//BONITO_PIC_SERVICE|BONITO_TXT_SERVICE|BONITO_SYN_SERVICE ..... synop, picture and text service
//MeteoCom Message for FileActions
#define TXTFILE_REFRESH 0x1002 //refresh your list of text files
#define PICFILE_REFRESH 0x2002 //refresh your list of pictures
#define PICFILE_DELETE 0x2004 //a picture was deleted
#define PICFILE_SELCHG 0x2008 //selected, indicated picture was changed
#define SYNFILE_REFRESH 0x4002 //refresh your list of text files
#define MC_COL_CHANGE 0x8002 //refresh your color of the meteo layer
#define MC_ISO_CHANGE 0x8004 //refresh your iso-line drawings
#define MC_DAT_CHANGE 0x8008 //refresh your data references
#define DAT_CHANGE_MET 0x0001 //downloaded meteo data changed
#define DAT_CHANGE_IMG 0x0002 //downloaded images data changed
#define DAT_CHANGE_SYN 0x0003 //downloaded synop data changed
#define DAT_CHANGE_TXT 0x0004 //received text data changed
#define DAT_CHANGE_RXSYN 0x0005 //received synop data changed
#define DAT_CHANGE_FAX 0x0006 //received images data changed
#define DAT_CHANGED -1 //directrory deleted
//intern Message
#define METEOCOM_LOGIN 0x0800
#define METEOCOM_LOGOUT 0x0801
#define PICFILE_MOVED 0x0810
#define PICFILE_RENAME 0x0812
#define PICFILE_ADD 0x0813
#define PICFILE_RELOAD 0x0814
//Picture Folders
#define FDIR_RX 0
#define FDIR_BANK1 1
#define FDIR_BANK2 2
#define FDIR_BANK3 3
#define FDIR_TRASH 4
#define FDIR_SAT 5
#define FDIR_DNL 6
#define FDIR_MAX 7
#endif //BMS_DEFSs