145 fs = fopen(buff,
"w");
149 MMessageDialog(
"DAS information",
"Problems in opening file",
" Ok ", NULL);
153 sprintf(str,
"####################################################\n");
155 sprintf(str,
"# Configuration file for FTP Setting. #\n");
157 sprintf(str,
"####################################################\n");
159 sprintf(str,
"# FTP Server Address #\n");
165 sprintf(str,
"# FTP User Name #\n");
168 sprintf(str,
"%s\n", DFTP.
ftpuser);
171 sprintf(str,
"# FTP pwd #\n");
174 sprintf(str,
"%s\n", DFTP.
ftppwd);
177 sprintf(str,
"####################################################\n");
184 sprintf(buff,
"The settings for FTP Server have been saved in the file:\n '%s'", str);
204 fd = fopen(buff,
"w");
208 MMessageDialog(
"DAS information",
"Problems in opening file",
" Ok ", NULL);
212 sprintf(buff,
"%s\n", DFTP.
ftpuser);
214 sprintf(buff,
"%s\n", DFTP.
ftppwd);
227 sprintf(COMANDO,
"ftp -i -s:%s %s",buff, DFTP.
ftpserver);
229 er = WinExec(COMANDO, SW_SHOW);
371 void DB_2DPlot(
char *title,
int x,
int y,
int dx,
int dy,
int mode)
387 char ttime[8], timetemp[2];
391 sprintf(fileorigin,
"%s%s", dir, filename);
393 fs = fopen(fileorigin,
"r");
394 if(fs < 0)
return -1;
416 str[t] = (
unsigned char)ch;
421 for (x = 0; x < nx; x++)
424 sscanf(str,
"%s %f %f% %f% ", &ttime, &datatemp.
CCDTemp[x], &datatemp.
CCDPwr[x], &datatemp.
PltPwr[x]);
428 strncpy(timetemp, ttime, 2);
430 strncpy(timetemp, ttime + 3, 2);
432 strncpy(timetemp, ttime + 6, 2);
435 for(y = 0; y < ny; y++)
438 fscanf(fs,
"%f", &datatemp.
pTempMat[x * ny + y] );
445 str[t] = (
unsigned char)ch;
460 int tix = 0, tiy = OMUTEMP.
dimy = 16;
462 char fname[128], dirname[128];
493 if(
MFileBrowseExt(
"Select LOG file",
"*.log", fname, dirname, &prefs))
496 sprintf(buf,
"%s%s", dirname, fname);
502 if (OMUTEMP.
dimx >=5)
507 mx = (
unsigned long) OMUTEMP.
dimx;
509 OMUTEMP.
CCDTemp = (
float *) calloc( mx,
sizeof(
float));
510 OMUTEMP.
CCDPwr = (
float *) calloc( mx,
sizeof(
float));
511 OMUTEMP.
PltPwr = (
float *) calloc( mx,
sizeof(
float));
519 sprintf(buf,
"TEMPERATURE HISTORY - File:%s", fname);
759 char buf[64], str[64];
762 double percentuale, speedhz;
790 sprintf(buf,
"%.1f%%",percentuale);
844 sprintf(buf,
"%d", i);
870 sprintf(buf,
"%.3lf", speedhz);
900 multip = (float)i/2 + 0.5;
902 sprintf(buf,
"%.1lf", multip);
907 sprintf(str,
"%s", buf);
929 if (
id == 0 && snum == 0)
931 if (
id == 0 && snum == 1)
933 if (
id == 1 && snum == 0)
935 if (
id == 1 && snum == 1)
937 if (
id == 2 && snum == 0)
939 if (
id == 2 && snum == 1)
946 sprintf(buf,
"%s",
"Standard");
948 sprintf(buf,
"%s",
"Default");
950 sprintf(buf,
"%s",
"Track");
963 sprintf(buf,
"%s",
"Standard");
968 sprintf(buf,
"%s",
"Default");
973 sprintf(buf,
"%s",
"Track");
979 if (
id == 0 && snum == 0)
981 if (
id == 0 && snum == 1)
983 if (
id == 1 && snum == 0)
985 if (
id == 1 && snum == 1)
987 if (
id == 2 && snum == 0)
989 if (
id == 2 && snum == 1)
1005 unsigned long stbyte = 0;
1009 sprintf(str,
"0x%0x",word);
1010 stbyte = strtol(str, &s, 16);
1013 sts = stbyte & (
unsigned char) pow(2,(
double)(bn));
1045 DAS.
StepM.
OOP[id] &= ~((
unsigned char) pow(2,(
double)(tmp)));
1051 DAS.
StepM.
OOP[id] |= (
unsigned char) pow(2,(
double)(tmp));
1089 Message(
"Unable to read AMS\nPlease check if AMS Switched ON", er);
1115 sprintf(buf,
"Set the power for the motors\n\ 1116 Min = 0.02A; Max = 2.00A.");
1120 sprintf(buf,
"Set the step fraction for the motors\n\ 1121 1/n = 200*n steps/round\n\ 1122 n = 2,4,5,8,10,16,25,32,50,64,125,128,250,256.\n\ 1123 Min = 400 s/r; Max = 51200 s/r");
1129 sprintf(buf,
"Set the number of step used for slope");
1134 sprintf(buf,
"Set the speed of positioning of the motors ( 0.125 - 32 KHz)\n\ 1135 The value is obtained with the formula F2 (Hz) = F1(Hz) * (n + 1);\n n = 0, 1, ... 255. - Hex 00_FF.\n\n\ 1136 (i.e. n=1 --> F2 = 250 Hz)\n\ 1137 WARNING - The formula is valid only if F1 = 125Hz");
1141 sprintf(buf,
"Set the multiplier for the stepper motors.");
1145 sprintf(buf,
"Set and Test the Home for the Motors\n\n - Standard: the stepper rounds counterclockwise with \ 1146 2000 s/r (1/10) and f = 1KHz.\nThe sampling is done 1000 times per second (1KHZ)\n\n\ 1147 - Default: similar to ""Standard"", but using the actual setted stepping and frequency\n\n\ 1148 - Track: the tracking procedure is used.\n The stepper rounds fast since when the optoswitch is found,\n then the stepper\ 1149 inverts the direction and rounds slowly\n since when the status bit change again.\n\n");
1153 sprintf(buf,
"Read the Input port of AMS.");
1159 sprintf(buf,
"Set and Read the Output port of the AMS.\n\n\ 1161 OOP[0] --> Peltier\n\ 1162 OOP[1] --> Fan Peltier\n\ 1163 OOP[2] --> HG Lamp\n\ 1164 OOP[3] --> QJ Lamp\n\ 1165 OOP[4] --> Peltier Power Supply\n\ 1166 OOP[5] --> Hires Power Supply\n\ 1168 OOP[7] --> SPARE\n");
1172 sprintf(buf,
"Set and Read the Output port of the AMS.\n\n\ 1175 OOP[1] - Fan Peltier\n\ 1178 OOP[4] - Peltier Power Supply\n\ 1179 OOP[5] - Hires Power Supply\n\ 1180 OOP[6] - Ext. Shutter or Torque Motor Shutter\n\ 1181 OOP[7] - Ext. Lamp\n\ 1183 OOP[0] - Duty Cycle Peltier\n\ 1203 sprintf(buf,
"Set and Read the Output port of the AMS.\n\n\ 1205 OOP[0] --> Peltier\n\ 1206 OOP[1] --> Fan Peltier\n\ 1207 OOP[2] --> HG Lamp\n\ 1208 OOP[3] --> QJ Lamp\n\ 1209 OOP[4] --> Peltier Power Supply\n\ 1210 OOP[5] --> Hires Power Supply\n\ 1211 OOP[6] --> Ext. Shutter\n\ 1212 OOP[7] --> Ext. Lamp\n");
1218 sprintf(buf,
"Allows for the selection of the Linear or Angular positioning mode\n\ 1219 set the polarity for HOME and WORK Positions.");
1223 sprintf(buf,
"Allows for the selection of the Linear or Angular positioning mode\n\ 1224 set the polarity for HOME and WORK Positions.");
1228 sprintf(buf,
"Allows for the selection of the Linear or Angular positioning mode\n\ 1229 set the polarity for HOME and WORK Positions.");
1233 sprintf(buf,
"Allows for the selection of the Linear or Angular positioning mode\n\ 1234 set the polarity for HOME and WORK Positions.");
1238 sprintf(buf,
"Allows for the selection of the Linear or Angular positioning mode\n\ 1239 set the polarity for HOME and WORK Positions.");
1243 sprintf(buf,
"Allows for the selection of the Linear or Angular positioning mode\n\ 1244 set the polarity for HOME and WORK Positions.");
1248 sprintf(buf,
"Allows for the selection of the Linear or Angular positioning mode\n\ 1249 set the polarity for HOME and WORK Positions.");
1264 unsigned char er = 0;
1265 MOBJECT rowform, colform, rowform1, pb, pbh;
1322 sprintf(buf,
"%d", i);
1336 pbh =
MCreateImagePButtonExt(colform,
"sys\\qmarkyellow.bmp",
"sys\\qmarkblue.bmp",
"",
"sys\\qmarkred.bmp",
"",
"");
1404 sprintf(buf,
"%d", i);
1412 sprintf(buf,
"%d", i);
1429 pbh =
MCreateImagePButtonExt(colform,
"sys\\qmarkyellow.bmp",
"sys\\qmarkblue.bmp",
"",
"sys\\qmarkred.bmp",
"",
"");
1456 const char *lblstring[] = {{
"Mirror"}, {
"Grating"}, {
"Filter Wheel"}, {
"Not Conn."}, {
"Zenith"}, {
"Azimut"}};
1457 const char *helpoutput[] = {{
"Standard - This command search the reference position of the device (Home).\nThe motor moves in the CCW direction until the input port became active.\nThe process is done with 2000 s/r and 1KHz of frequency.\nThe scanning for the end-run is done each 1 ms "},
1458 {
"Default - As the standard command, but with the actual values of step, power and frequancy "},
1459 {
"Fast - The frequency is setted in the program (see AMS User Guide and contact DanBo for modifications)"}};
1532 const char *lblstring[] = {{
"Mirror"}, {
"Grating"}, {
"Filter Wheel"}, {
"Not Conn."}, {
"Zenith"}, {
"Azimut"}};
1533 const char *helpoutput[] = {{
"Standard - This command search the reference position of the device (Home).\nThe motor moves in the CCW direction until the input port became active.\nThe process is done with 2000 s/r and 1KHz of frequency.\nThe scanning for the end-run is done each 1 ms "},
1534 {
"Default - As the standard command, but with the actual values of step, power and frequancy "},
1535 {
"Fast - The frequency is setted in the program (see AMS User Guide and contact DanBo for modifications)"}};
1645 DAS.
Nova.
DigOut &= ~((
unsigned char) pow(2,(
double)(tmp)));
1651 DAS.
Nova.
DigOut |= (
unsigned char) pow(2,(
double)(tmp));
1732 sprintf(str,
" Type the new 'offset' value for the Home position\n then push TAB\n then go to the MAIN PANEL\n then push 'H_Mirr'\n DO NOT PUSH the 'Apply' button to test the new offset!");
1752 sprintf(buf,
"SET NOVA MB");
1823 sprintf(buf,
"%d", i);
1831 sprintf(buf,
"%d", i);
1870 sprintf(buf,
"%d", i);
1881 sprintf(buf,
"%d", i);
1957 sprintf(buf,
"OFFSET");
2013 sprintf(buf,
"AMS%d",amsn+1);
2028 sprintf(buf,
" %d ", amsn);
2103 pbh =
MCreateImagePButtonExt(rowform,
"sys\\qmarkyellow.bmp",
"sys\\qmarkblue.bmp",
"",
"sys\\qmarkred.bmp",
"",
"");
2129 wl[c] = (int) strtod( text, &text );
2192 fs = fopen(buff,
"w");
2193 if(fs == NULL)
return 1;
2195 sprintf(str,
"Geographical Coordinates file for %s station.\n");
2199 sprintf(str,
"%s Station name (3 CHAR)\n",DAS.
DGeo.
s_name);
2202 sprintf(str,
"%.3f Latitude [ 90N, -90S]\n",DAS.
DGeo.
latitude);
2205 sprintf(str,
"%.3f Longitude [ 0, 180 E],[-180 W, 0]\n",DAS.
DGeo.
longitude);
2233 fs = fopen(buff,
"w");
2240 MMessageDialog(
"DAS information",
"Problems in opening file",
" Ok ", NULL);
2244 sprintf(str,
"Geographical Coordinates file.\n");
2246 sprintf(str,
"the format is: \n");
2248 sprintf(str,
"Station name ( Max 3 CHAR)\n");
2250 sprintf(str,
"Latitude[90N,-90S] Longitude[0,180E],[-180W,0] Altitude(m/asl) TimeZone\n");
2398 sprintf(str,
"%s",
" ");
2878 sprintf(str,
"%.3f",f);
2880 if( strcmp(str,buff) ==0 )
2887 sprintf(str,
"%s", pla->
item );
2912 sprintf(str,
"%d",i);
2914 if( strcmp(str,buff) ==0 )
2919 sprintf(str,
"%s", pla->
item );
2939 for(i=starti; i<161; i++)
2942 sprintf(str,
"%d",i);
2944 if( strcmp(str,buff) ==0 )
2950 sprintf(str,
"%s", pla->
item );
3036 sprintf(buf,
"Actual Setting" );
3050 sprintf(buf,
"Stat." );
3057 sprintf(buf,
"Lat." );
3064 sprintf(buf,
"Long." );
3071 sprintf(buf,
"TZ" );
3078 sprintf(buf,
"Alt." );
3209 MObjectSetPopupHelp(pb,
"Apply the selected setting to DAS (and write to file ..GeoCoord.ini)" , 200, 5000);
3220 MObjectSetPopupHelp(pb,
"If a new station has been created store it in ..GeoDB.ini" , 200, 5000);
3273 sprintf(buf,
"Win" );
3280 sprintf(buf,
"Cent.Wl" );
3287 sprintf(buf,
"Steps" );
3297 sprintf(buf,
"%d", i);
3304 sprintf(buf,
"%d",
wl[i]);
3312 sprintf(buf,
"%d",
wav[i]);
3329 sprintf(buf,
"Win" );
3336 sprintf(buf,
"Cent.Wl" );
3343 sprintf(buf,
"Steps" );
3353 sprintf(buf,
"%d", i);
3360 sprintf(buf,
"%d",
wl[i]);
3368 sprintf(buf,
"%d",
wav[i]);
3645 sprintf(buf,
"%.1lf%%",(
double)OMUTHR.
PCPower / 10);
3803 pb =
MCreateImagePButtonExt(tb,
"sys\\qmarkyellow.bmp",
"sys\\qmarkblue.bmp",
"",
"sys\\qmarkred.bmp",
"",
"");
3860 for(i=0; i<512; i++)
3865 sprintf(str,
"%d", t);
3867 if( strcmp(str,buff) ==0 )
3874 sprintf(str,
"%s", pla->
item );
4096 memset (&fbp, 0,
sizeof (fbp));
4110 er =
MFileBrowseExt (
"Select CCD Mask File",
"*.cor", fname, dirname, &fbp);
4121 sprintf (str,
"File: %s, Not FOUND", buf);
4365 sprintf(buf,
"%d",
N_AVG);
5041 sprintf(buf,
"%d",
SZAMax);
5163 sprintf(buf,
"%s",DFTP.
ftpuser);
5184 sprintf(buf,
"%s",DFTP.
ftppwd);
5364 sprintf(buf,
"%.1lf",OMUTHR.
PID_kp);
5374 sprintf(buf,
"%.3lf",OMUTHR.
PID_ki);
5383 sprintf(buf,
"%.4lf",OMUTHR.
PID_kd);
5769 int c = (int) v,i,k;
5770 char buff[64], str[32];
5792 sprintf(str,
"%.d",i);
5794 if( strcmp(str,buff) ==0 )
5799 sprintf(str,
"%s", pla->
item );
5804 sprintf(buff,
"Hour(s)");
5815 for(i=1; i<365; i++)
5817 sprintf(str,
"%.d",i);
5819 if( strcmp(str,buff) ==0 )
5824 sprintf(str,
"%s", pla->
item );
5830 sprintf(buff,
"Day(s)");
6134 for(i=1; i<365; i++)
6136 sprintf(str,
"%.d",i);
6138 if( strcmp(str,buff) ==0 )
6146 sprintf(str,
"%.d",i);
6148 if( strcmp(str,buff) ==0 )
6179 sprintf(str,
"%s", pla->
item );
6225 MOBJECT colform, colform2,colform3,colform4;
6305 for(i=0; i<maxangle; i++)
6307 sprintf(buf,
"%d",i);
6327 for(i=0; i<maxangle; i++)
6329 sprintf(buf,
"%d",i);
6354 for(i=0; i<maxangle; i++)
6356 sprintf(buf,
"%d",i);
6362 sprintf(buf,
"<SZA<");
6377 for(i=0; i<maxangle; i++)
6379 sprintf(buf,
"%d",i);
6399 for(i=0; i<maxangle; i++)
6401 sprintf(buf,
"%d",i);
6420 for(i=0; i<maxangle; i++)
6422 sprintf(buf,
"%d",i);
6446 char buf[64], str[16];
6447 unsigned char lesseq = 242, greateq=241;
6473 sprintf(buf,
"%s",str);
6528 sprintf(buf,
"%s",str);
6990 PROCESS_INFORMATION pi;
7002 memset(&si, 0,
sizeof(si));
7004 si.dwFlags= STARTF_USESHOWWINDOW;
7005 si.wShowWindow = SW_SHOW;
7006 f = CreateProcess(NULL, buff, NULL, NULL,
FALSE, 0, NULL, NULL, &si, &pi);
7044 const char *fontfamily;
7780 sprintf(buf,
"Ch.%d:", i);
void DB_MIGEopmode_CB(MOBJECT o, void *a, void *v)
callback selecting the operation mode for the AltAzPlatform
void MEditDisableEditing(MOBJECT edit)
MOBJECT PID_edt[3]
edit MObjects for PID parameters
MOBJECT tbrb
Table Object for rbuttons.
stepm StepM
Stepper motors parameters structure.
void CONFP_param_page4(int mod, MOBJECT obj)
MOBJECT edtDSZA
edit box for delta SZA
void ADTesterCB(MOBJECT shell, void *od, void *ad)
Test Temperature AD Converter callback.
void MObjectSetBackgroundRGB(MOBJECT obj, int r, int g, int b)
gui Gui
Graphic User Interface Structure.
void ColPickBackForeGCB(MOBJECT o, void *a, void *v)
select if the foreground or background color of the selected object will be picked ...
MOBJECT MCreateTButton(MOBJECT parent, const char *text, MTFont font)
MOBJECT rbFilterType[3]
radio button for SHUTTER type
int WriteEquipini(void)
Write equipment.ini file .
void DB_RadioModeSelCB(MOBJECT o, void *id, void *a_data)
Set the saving mode.
void CONFP_Options(int mod, MOBJECT mo)
MOBJECT MCreatePixmapFromFile(MOBJECT parent, const char *fname)
MTColor MAllocCell(int r, int g, int b)
MOBJECT edmaxlvlar
edit object maximum level for autoranging
int LoadPaletteCB(MOBJECT o, void *o_data, void *a_data)
Callback for LoadTestPalette.
void PB_H_CB(MOBJECT p, void *od, void *ad)
Quick Help Callback.
void ColorAssignCB(MOBJECT o, void *o_data, void *a_data)
const char * close_button
void DB_CellExposeCB(MOBJECT obj, MEvent *pexp, void *a_data)
display selected Color
void DB_AMSposmode_CB(MOBJECT o, void *a, void *v)
callback selecting the positioning mode for stepper motors ( sequential or simulaneaous) ...
MOBJECT MOptionEditGetList(MOBJECT ce)
optionini DOption
Options for DAS execution.
void DB_ChangeColorCellCB(MOBJECT o, MVALUE o_data, void *a_data)
draw the object 'o' with the selected color
int savingmode
Flag to set saving mode: 0=ASCII, 1=Binary.
double alititude
Station altitude.
void MObjectSetShadow(MOBJECT obj, int type, int in, int out)
const char * Mir_Code[]
const char array for the realisation of the Mirrors buttons in the Mirror shell
void edtCCDOffSet_CB(MOBJECT p, LIST_ACT *la, void *ad)
void MSelectObject(MOBJECT f)
void MShellRealize(MOBJECT obj)
void LoadFontCB(MOBJECT obj, void *a, void *data)
This callback tries to load the specified font.
int NAMS
Number of AMSs Devices.
void DB_TempHistCB(MOBJECT o, void *a, void *v)
int TRType
Type of thermo regulation (0=TRTCOOL, 1 = TRTHEAT, 2= TRTBOTH)
void edtDSZA_CB(MOBJECT p, LIST_ACT *la, void *ad)
MOBJECT MCreateEdit(MOBJECT parent, const char *text, int len, MTFont font)
void WDT_CB(MOBJECT p, void *od, void *ad)
MOBJECT SM_multiplier[AMSMAX][2]
double newlatitude[20]
New Station latitude.
MOBJECT edit[5]
Edit Object.
void MObjectSetUnsensitive(MOBJECT obj)
void MBottomAttach(MOBJECT child, int att_type, int off, MOBJECT obj)
#define TORQUEM
Torque Motor.
int HomeMirror(void)
Input Mirror in the reference Position. The Input Mirror reaches the reference Position.
double newlongitude[20]
New Station longitude.
int PCPower
Power to the Peltier for Cooling.
omutemp OMUTEMP
structure for OMU temperatures
int Wl
Flag for the units on the X scale plot.
void WriteFontCB(MOBJECT obj, void *a, void *v)
This callback write on file the selected font (Not implemented yet)
void MTButtonDeactivate(MOBJECT o)
int WritewlstepiniCB(MOBJECT shell, void *od, void *ad)
Write wlstep.ini file .
MOBJECT SM_hometype[AMSMAX][2]
DXL structure. Structure for the serial communication with the AMS adapter.
void MOptionEditSetListCallback(MOBJECT obj, LIST_ACT_CB cb, void *data)
int plotW
Flag for the plot display.
void DB_TestHomeTypeCB(MOBJECT p, void *od, void *ad)
void MPixmapSetImageFile(MOBJECT pixmap, const char *fname)
void MFormSetFocusHighlight(MOBJECT f, int true_false)
MOBJECT rbDSZA[2]
radio button for delta SZA measurements
das structure (contain all the previous structures) .
MOBJECT MDCreateDASConfig(void)
DAS Config shell. Procedure that build the shell for the DAS Config panels. The DAS Config allow for ...
void D_UndoCB(MOBJECT o, void *a, void *v)
Undo the previous color setting operation.
int VMRsf
ViewModifyReloadsystemfile: 0 = ViewModify, 1 = Reload.
void DB_AMSProgBar_CB(MOBJECT o, void *a, void *v)
callback selecting if show or not the progress bar for motor positioning
MOBJECT edtSZA[2]
edit boxes for limits for delta sza measurements (0–> szamin; 1–>sza max)
#define RDAY
double filter wheel
MOBJECT MCreateLabel(MOBJECT parent, const char *text, MTFont font)
Control Panel and push buttons colors .
void DB_Shutter_CB(MOBJECT o, void *a, void *v)
callback selecting if the shutter is installed or not
double latitude
Station latitude.
void MObjectSetResize(MOBJECT obj, int resize_w, int resize_h)
#define DOASMODE
execution for DOAS Processing
const char * DeviceTypeInput[]
const char array for the Device type <-> Input association
void MTButtonActivate(MOBJECT o)
int ReadLogFile(int mod, char *dir, char *filename, int nx, int ny, struct omutemp datatemp)
Read DAS LOG File. .
flag Flag
Structure for different flags.
MOBJECT tbavg
table for avg section
void NovaTypeCB(MOBJECT p, void *od, void *ad)
Callback for NOVA selection.
int darkremove
Flag to set Dark Removal from measurements; motors0 = No Dark Removal, 1 = Dark Removal.
structure for FTP setting
char HOMEDIRECTORY[_MAX_PATH]
int filtertype
type of installed filter module: 0=Simple-SM3, 1=Double-SM3+SM4, 2=simpleplus-SM3+TM) ...
#define DBDEMO
execution in demo mode
void DB_ResetEnable_CB(MOBJECT o, void *a, void *v)
void MObjectAlign(MOBJECT obj, int h_align, int v_align)
int Offset[16]
Offset of the hardware devices (Input Mirror (5), Grating, Filter Wheel...)
void ModifyConfFileCB(MOBJECT o, void *id, void *a_data)
Modification DAS Configuration files Callback Set if the blind pixels will be displayed or not on the...
MOBJECT WDT_edt
edit Mobject for Watch-Dog elapsed time
unsigned short DigOut
Digital Output.
#define NOVA945GSE
NOVA945GSE (SPATRAM2, GASCODNG1, GASCODNG4)
int slope[AMSMAX][2]
Stepper Motors Slope.
void ActEditCB(MOBJECT edit, char *text, void *ed)
Text Application callback Apply to the variables the text typed in various text box and validated by ...
#define NOVA6612G2
NOVA6612G2 (not used in TROPOGAS, LIS, GASCODNG2/3)
MOBJECT OOP[AMSMAX][8]
OptoOutput Port N (N=0,1...,7), for AMSx (x=0,1,...AMSMAX-1)
void MTableFormSetColAlign(MOBJECT form, int col, int al)
void DB_SetXUnitsCB(MOBJECT o, void *id, void *a_data)
Select the X axis Unit mode .
void CONFP_param_page1(int mod, MOBJECT obj)
void PbftpCB(MOBJECT o, void *a, void *v)
void DB_DispBlindPixCB(MOBJECT o, void *id, void *a_data)
Display Blind Pixel Callback Set if the blind pixels will be displayed or not on the plot window...
int HomeGratingFast(int mod)
(Fastest) Grating in the reference Position. The Grating reaches the reference Position. Similar to HomeGrating(void), but faster
void MSListSelectElement(MOBJECT p, long n)
void DB_SetCCDTargetTempCB(MOBJECT o, void *id, void *a_data)
Select the CCD temperature mode .
#define ROTSHUT
Rotating Shutter.
int avgautor
autoranging for averaged measurement, 0 = NO AutoR before average; 1 = AutoR before average; ...
void CONFP_opt_page5(int mod, MOBJECT obj)
MOBJECT MCreateClippedEdit(MOBJECT parent, const char *text, int len, int clip_len, MTFont font)
MOBJECT rbResetEnab[2]
radio button for DAS Reset Enable/Disable
void SetItalicCB(MOBJECT obj, MVALUE a, void *data)
This callback toggles the Italic attribute.
void ReadInputCB(MOBJECT p, void *od, void *ad)
void MObjectSetPopupHelp(MOBJECT obj, const char *str, int delay, int duration)
MOBJECT IOP[AMSMAX][8]
OptoInput Port N (N=0,1...,7), for AMSx (x=0,1,...AMSMAX-1)
void DB_VMRsfCB(MOBJECT o, void *id, void *a_data)
Set the flag for modification or reload of DAS configuration files Set the VMRsf (View Modify Re-load...
int ApplyGeoCB(MOBJECT shell, void *od, void *ad)
void CONFP_opt_ScheMeas(int mod, MOBJECT p)
void MDrawAreaSetResizeCallback(MOBJECT obj, DRAWAREA_PREF_CB cb, void *ad)
void CONFP_AMS_TabSingMotor(int id, int snum, MOBJECT tb1)
void valstedt(MOBJECT edit, EDIT_VAL *ev, void *ii)
float multiplier[AMSMAX][2]
multiplier, > 0 multiplier, < 0 demultiplier
MOBJECT MCreateOptionEdit(MOBJECT parent, const char *text, int len, int clip_len, int nrow, MTFont font)
void MShellUnrealize(MOBJECT obj)
void ApplyChCB(MOBJECT shell, void *od, void *ad)
Apply changes in DAS Config callback.
void CONFP_AMS_IOPort(MOBJECT dtb, int amsn)
void MObjectSetText(MOBJECT obj, const char *text)
void DB_CellResizeCB(MOBJECT obj, DRAWAREA_PREF *pref, void *a_data)
display selected Color
int SZAMax
Maximum SZA for performing measurements.
void CONFP_param_page2(int mod, MOBJECT obj)
int WriteOptioniniCB(MOBJECT shell, void *od, void *ad)
Write Options.ini file .
void DB_ShutterType_CB(MOBJECT o, void *a, void *v)
callback selecting the type of installed shutter
void WDT_Task_CB(MOBJECT o, void *od, void *ad)
int ChkDigIO(unsigned char word, int bitn)
check for digital I/O Status
void CONFP_Param(int mod, MOBJECT mo)
void DB_ResetType_CB(MOBJECT o, void *a, void *v)
d_geo DGeo
struct for Station location
MOBJECT edid
edit for FTP server user
MOBJECT rbDASResPer[2]
radio button for DAS Reset type (HOURs/DAYs)
void CONFP_opt_page4(int mod, MOBJECT obj)
void MShellDestroy(MOBJECT obj)
int MRButtonGetActivationStatus(MOBJECT o)
void UndoFCB(MOBJECT obj, void *a, void *v)
This callback UnDo the font choice (Not implemented yet)
MOBJECT SM_power[AMSMAX][2]
MOBJECT MCreateTableForm(MOBJECT parent, int n_cols)
void MEditEnableEditing(MOBJECT edit)
void DB_RadioDarkCB(MOBJECT o, void *id, void *a_data)
Set the dark removing from the measurements.
void DB_SelOutModeCB(MOBJECT o, void *id, void *a_data)
Select the Output for the Temperature AD Converter .
#define TROPOGAS
TROPOspheric Gas Analyzer Spectrometer.
File Browser Preferences. Used by the Utility functions MFileBowserExt() and MDirBowserExt().
int WriteColorsCB(MOBJECT o, void *a, void *v)
Write selected color in DASSysColor.INI.
MOBJECT rb[21]
Maximum number of station 21.
int hlinebefore
Number of HiddenLines before the central line in Plot.
int timezone
Station timezone.
char s_name[4]
Station name.
void MRButtonSetCallback(MOBJECT button, OBJ_VALUE_CB cb, void *data)
void MTButtonSetCallback(MOBJECT button, OBJ_VALUE_CB cb, void *data)
MOBJECT MCreatePButton(MOBJECT parent, const char *text, MTFont font)
#define FDOUBLE
double filter wheel
void DB_MIGE_CB(MOBJECT o, void *a, void *v)
callback selecting the operation mode for the AltAzPlatform
#define FPLUS
Filter Wheel Torque Motor.
MOBJECT rbMIGEStatus[2]
radio button for MIGE status
int avgmode
Flag to set Averaging mode: 0 = Repeat measurements for fixed number, 1 = Repeat measurements for fix...
int WriteParaminiCB(MOBJECT shell, void *od, void *ad)
Write Param.ini file .
#define TRTHEAT
Thermoregulation mode: heat only.
void FontOBJSelCB(MOBJECT obj, void *a, void *v)
This callback select the object for applying font.
const char * MGetNextFontFamily(void)
MOBJECT MDCreate_2DPlot(char *title)
2DPlot Panel. Procedure that build the shell for the plotting of the LOG files.
int HomeAzimFast(void)
Home for Azimuth Axis.
void MObjectSetFGColorFromParent(MOBJECT obj, int true_false)
#define TRTCOOL
Thermoregulation mode: cool only.
void ReadLine(char *buf, int nc, FILE *f)
Read Line on a file Read one record of nc character on the file f.
void OOP_CB(MOBJECT obj, MVALUE value, void *ad)
void DB_PlotDisplayCB(MOBJECT o, void *id, void *a_data)
Select if the PLOT will be displayed after the measurement .
MOBJECT edServerFTP
edit for FTP server address
void MObjectSetCompositeHeight(MOBJECT obj, int h)
unsigned char OOP[AMSMAX]
2 byte Word for AMS Opto insulated Output Port Status
void MSListClear(MOBJECT p)
MOBJECT MCreateScrollBar(MOBJECT parent, int type, long n, long max)
void DB_EqTypeCB(MOBJECT o, void *a, void *v)
int VBin
CCD Vertical Binning.
int PID_On
PID activation.
paramini structure . It contains some of the parameters defined in the file PARAM.INI .
void MEditSetActCallback(MOBJECT edit, OBJ_STRING_CB cb, void *data)
int CoolPw
CCD Init Power.
int Addr[AMSMAX]
address of AMs
void CONFP_AMS_NOVA(MOBJECT pf)
int LoadDB_DefectPixel(char *buff)
Load Defective pixel mask. Procedure that load the Defective pixel mask in the file {homedir}/config/...
MOBJECT MDCreate2DPlot(char *title, int x, int y, int dx, int dy, int mode)
create the 2D_Plot panel via the MDCreate_2DPlot.
void PBH_CB(MOBJECT p, void *od, void *ad)
void DB_RadDrkSourceCB(MOBJECT o, void *a, void *v)
Set the dark source.
#define SPATRAMPLUS
As SPATRAM plus AltAzimuth platform.
id's for different tasks .
MOBJECT SM_step[AMSMAX][2]
char CONFIGDIREQUIPMENT[_MAX_PATH]
double MaxSZA
Maximum SZA.
const char * MGetCurrentDirectory(void)
MOBJECT MCreateHiddenEdit(MOBJECT parent, const char *text, int len, MTFont font, char shown_char)
void SetBoldCB(MOBJECT obj, MVALUE a, void *data)
This callback toggles the Bold attribute.
int StoreGeoCB(MOBJECT shell, void *od, void *ad)
int NOVA_Out(int novatype, unsigned int out)
Write the NOVA Output port.
void DrawAreaExpFontCB(MOBJECT obj, MEvent *pe, void *data)
This callback draws strings using the selected font.
int emshutter
Presence of the CCD Shutter, emshutter = 1 –> Shutter IS Installed, = 0 –> Shutter NOT Installed...
void FrmNOVA_IO_Test(int mod, MOBJECT obj)
void valwledt(MOBJECT edit, EDIT_VAL *ev, void *ii)
void delay(unsigned long d)
Pauses for a specified number of milliseconds. .
void DB_PlotYAxisCB(MOBJECT o, void *id, void *a_data)
Select the Y axis Unit mode .
MTColor MAllocColor(int r, int g, int b)
int DeltaSZA
= 1 Delta SZA measurements activated, = 0 Continous measurements
void edtDASReset_CB(MOBJECT p, LIST_ACT *la, void *ad)
void ValidateCB(MOBJECT edit, EDIT_VAL *ev, void *ii)
Text Validation callback Validation callback for the text typed in different text box...
void MLabelSetMargin(MOBJECT p, int wm, int hm)
void MEditSetValCallback(MOBJECT edit, EDIT_VAL_CB cb, void *data)
void(* OBJ_EVENT_CB)(MOBJECT obj, MEvent *e, void *ad)
void MRButtonActivate(MOBJECT o)
char ftpuser[32]
FTP server users.
int plotYRange
0 –> full range; 1 –> min/max
MOBJECT MCreateDrawArea(MOBJECT parent, int width, int height)
int resetFreq
frequency of DAS/Windows Reset
MOBJECT edtDASReset
edit box for DAS Reset
void SelDefPixFileCB(MOBJECT o, void *a, void *v)
MOBJECT MCreateColForm(MOBJECT parent)
int MFileBrowseExt(const char *t, const char *ext, char *fname, char *dname, FB_PREFS *prefs)
#define VS25
Uniblitz Shutter VS25.
MOBJECT SM_slope[AMSMAX][2]
void MObjectAddEventNotifyCallback(MOBJECT obj, OBJ_EVENT_CB cb, CARD32 event_mask, void *a_data)
void stedtCB(MOBJECT edit, char *text, void *ed)
double int2hertz(int mod, int k)
void NOVAIn_CB(MOBJECT obj, void *od, void *ad)
void DB_MIGEType_CB(MOBJECT o, void *a, void *v)
void MButtonSetImageMaskByPixel(MOBJECT obj, int x, int y)
MOBJECT lblSZA[3]
labels for delta sza measurements
#define GASCODNG1
GASCODNG 1 (with ATX power supply & HiresIV)
void MDrawAreaSetExposeCallback(MOBJECT obj, OBJ_EVENT_CB cb, void *ad)
MOBJECT SM_pbtesthome[AMSMAX][2]
#define RHOUR
simple filter wheel
#define GASCODNG4
GASCODNG 4.
double cop_perc[AMSMAX][2]
Stepper Motors Power percent.
void DB_RadioFNSelCB(MOBJECT o, void *id, void *a_data)
Set the file name mode.
int newtimezone[20]
Station timezone.
int DeleteGeoCB(MOBJECT shell, void *od, void *ad)
char news_name[20][4]
New Station name.
int TOTTEXP
Total Exposure time in Averaging mode.
void wledtCB(MOBJECT edit, char *text, void *ed)
double newalititude[20]
New Station altitude.
const char * bg_image_file
int amsprogbar
display/hide prograssion bar, 0 = Hide, 1 = display
#define FSIMPLE
simple filter wheel
char ftpserver[32]
FTP server address.
MOBJECT MCreateShell(const char *title, int flags)
int hlineafter
Number of HiddenLines after the central line in Plot.
int MMessageDialog(const char *t, const char *msg, const char *btn1, const char *btn2,...)
structure for OMU temperatures .
int nitem
Number of items of the GeoDB.ini.
void Message(char *str, int er)
Create a message shell for the AMS errors (Debug Use). .
void DB_GeocoordCB(MOBJECT o, void *a, void *v)
int HomeFiltersFast(void)
(Fastest) Fliter wheel in the reference Position. The Fliter wheel reaches the reference Position...
#define SPATRAM3
SPATRAM3.
MOBJECT listReset
list for reset frequency
MOBJECT INP[4]
Input widgets.
MOBJECT MCreateRButton(MOBJECT parent, const char *text, MTFont font)
void DB_MeasMode_CB(MOBJECT o, void *a, void *v)
configpanel ConfigPanel
Configuration panel structure.
double int2perc(int mod, int k)
translate the AMS digit unit in text. The power assigned to the motor trough the AMS, is translated in text
int AMS_wopto(int id, unsigned int w)
write the value on the optoinsulated port write the value on the optoinsulated port.
void AMS_AdvancedCB(MOBJECT o, void *od, void *ad)
void MSListSetSortCallback(MOBJECT obj, STRCMP_CB cb)
void ColObjCB(MOBJECT o, void *a, void *v)
select the object to consider for color picking
Validation data for the EditField Object.
int SetWorkDirMGUIenv(char *buff)
set DAS and MGUI enviroment when the program is launched undirectly (for offlineplot or log or auto o...
void CONFP_opt_page6(int mod, MOBJECT obj)
int mirrorimg[2]
Flag to set the mirroring of the CCD image: 0 = NO Mirroring, 1= YES Mirroring (element 0 for X axis;...
char step_fraz[AMSMAX][2][6]
Stepper Motors Step fraction.
void MTableFormSetRowAlign(MOBJECT form, int row, int al)
void CONFP_AMS_SM_OFFSET(MOBJECT obj, int nams)
void DSZArb_CB(MOBJECT o, void *a, void *v)
void(* OBJ_VALUE_CB)(MOBJECT obj, MVALUE value, void *ad)
#define TRTBOTH
Thermoregulation mode: cool and heat.
void CONFP_AMS(MOBJECT pf, int amsn)
int LoadDB_DispCoeff(void)
Load dispersion parameters. Procedure that load the dispersion parameters from file {homedir}/DOAS/Di...
void MEditSetFilter(MOBJECT edit, int filter, const char *extra_chars)
MOBJECT lblReset
label for reset frequency
void MGetDefaultBackgroundRGB(int *pr, int *pg, int *pb)
void MLabelSetAlignment(MOBJECT p, int align)
int wl[]
WaveLength definition - for SD_Grating.
int pixcorr
Flag to set defective pixel correction: 0=NOT Corrected, 1=Corrected.
MOBJECT ShellConfig
Shell configuration panel.
void CONFP_opt_page3(int mod, MOBJECT obj)
void DB_MirrorImg_CB(MOBJECT o, void *a, void *v)
callback selecting the activation of the mirroring of the CCD image along the X or Y axis ...
void edtSZA_CB(MOBJECT p, LIST_ACT *la, void *ad)
int ftpbackup
Flag to set back up: 0 = NO FTP Back-UP; 1 = Perform FTP Back-UP.
int MPagedFormGetActivePage(MOBJECT form)
Bortul Image Library Structure .
int imgtype
Flag to set Image type: 0=MONOINT, 1=RGB.
void MPagedFormSetActivePage(MOBJECT form, int page)
int flagnewstation
New Station Flag.
MOBJECT rbSHUTType[3]
radio button for SHUTTER type
void CONFP_opt_page1(int mod, MOBJECT obj)
void MFormSetSpacing(MOBJECT p, int offset)
double longitude
Station longitude.
void MPButtonSetCallback(MOBJECT button, MGUI_CB cb, void *data)
void NOVAOut_CB(MOBJECT obj, MVALUE value, void *ad)
int AMS_chkbitsts(int id, int bitn)
check bit status Procedure for the determination of the bit number status.
int measmode
measuring mode: 0 = Single; 1 = Averaged
void TestFontCB(MOBJECT obj, void *a, void *data)
This callback tries to load the specified font.
void MObjectSetCompositeWidth(MOBJECT obj, int w)
MOBJECT rbMIGEtype[5]
radio button for MIGE type
const char * Relais_Code[]
int speed[AMSMAX][2]
Stepper Motors Speed.
const char * filter_label
void CONFP_opt_page2(int mod, MOBJECT obj)
int step[AMSMAX][2]
Stepper Motors Step.
MOBJECT rbCorrPix[2]
radio button for defective CCD Correction
MOBJECT rbSHUTStatus[2]
radio button for SHUTTER status
double speed_Hz[AMSMAX][2]
Stepper Motors Speed [Hz].
double maxtexp
Maximum exposure time (used in Autorange())
int aaopmode
operation mode for the Alt Az Platform, 0 = solar Traxker; 1 = Anti-Solar Tracker; 2 = Free Positioni...
CTYPE void DLL DC_SetUsrGain(int Gain, int Range, int Offset, int Camera)
Procedure that allows you to set the ccd gain. Procedure that allows you to set the ccd gain...
float * AllocFloatMat(int hp, int vp)
char ftppwd[32]
FTP server pwd.
int NOVA_In(int novatype, unsigned int DigIn)
Read the NOVA Input port.
void DB_RadioPixCorrCB(MOBJECT o, void *id, void *a_data)
Set the image Correction flag.
int MSListAddItem(MOBJECT p, const char *item, void *data)
void CONFP_param_page3(int mod, MOBJECT obj)
void listval2fraz(int mod, int val)
Decimal value to ratio value The decimal value indicating the fractioning of the step is translated i...
int smposmode
positioning mode for stepper , 0 = sequential mode; 1 = simoultaneous mode
void CONFP_opt_page7(int mod, MOBJECT obj)
void DB_HomeTypeCB(MOBJECT p, LIST_ACT *la, void *ad)
void DGeoeditCB(MOBJECT edit, EDIT_VAL *ev, void *ii)
int filename
Flag to set file name mode 0=Free choice, 1 = Automatic.
void DB_RadioAvgModeCB(MOBJECT o, void *id, void *a_data)
Set the Averaging mode flag.
MOBJECT edpwd
edit for FTP server pwd
int EqType
Spectrometer Type.
void DB_ImgTypeCB(MOBJECT o, void *id, void *a_data)
Set the Image type.
int HomeZenithFast(void)
Home for Zenith Axis.
void DB_AVGAutoR_CB(MOBJECT o, void *a, void *v)
void ApplyImgCB(MOBJECT shell, void *od, void *ad)
Image type Application callback Apply to the CCD buffer the selected type of image (MONO or RGB) ...
#define NOVA7892
NOVA7892 monoboard (old)
MOBJECT rbMIGEopmode[3]
radio button for MIGE operating mode
int AddStCB(MOBJECT shell, void *od, void *ad)
char CONFIGDIRCOMMON[_MAX_PATH]
unsigned char DigIn
Digital Input.
void DB_FilterType_CB(MOBJECT o, void *a, void *v)
callback selecting the type of installed filter wheel module
void MObjectSetTransparency(MOBJECT obj, CARD8 level)
void MObjectSetForegroundRGB(MOBJECT obj, int r, int g, int b)
int WriteHardwareiniCB(MOBJECT shell, void *od, void *ad)
Write hardware.ini file .
int N_AVG
Number of measurements for Averaging mode in fixed number of meas. mode.
int darksource
Flag to set Dark source: 0 = Blind Pixels, 1 = Full Frame.
int resetEnabled
DAS/Windows reset option (1 = Enabled; 0 = disabled)
int refertemp
Flag to set the reference temp for thermo-regulation: 0 = AVGPINT; 1 = OPTIC; 2 = GRATING...
void FrmStepperHomeMode(int mod, MOBJECT obj)
U32 Platform
(R/W) Platform code Camera platform definitions
long wav[]
Step Number definition - for SD_Grating.
void MShellSetWMCloseCallback(MOBJECT p, WM_CLOSE_CB cb, void *a_data)
void MObjectSetSensitive(MOBJECT obj)
int type
type of NOVA monoboard used (7892 or 945GSE)
int resetType
type of period for DAS Reset: 0=Hours, 1=Days
MOBJECT lblCorrPixF
label for name file used for defec pix correction
int DispBlindPix
Display Blind Pix: 0 = NO, 1 = Yes.
MOBJECT SM_speed[AMSMAX][2]
void MObjectDestroy(MOBJECT obj)
MOBJECT MCreateRowForm(MOBJECT parent)
void PBTempHistoCB(MOBJECT o, void *a, void *v)
MOBJECT pbBrowseCorrPixF
Push button for file selection.
int shuttertype
type of installed shutter: 0 = VS25, 1 = Rotating Shutter, 2 = TorqueMotor
void DB_StorePB(MOBJECT obj, MAnyWindowEvent *pe, void *a_data)
MOBJECT MCreateImagePButtonExt(MOBJECT parent, const char *npf, const char *apf, const char *upf, const char *non, const char *aon, const char *uon)
double ITemp
CCD Target Temperature.
unsigned int maxlvlar
maximum level of autoranging (max 65000)
UNDO Control Panel and push buttons colors .
unsigned short WDT_TOUT
WDT timeout.
void DB_RadioFTPCB(MOBJECT o, void *a, void *v)
MOBJECT MCreateTabbedRowForm(MOBJECT parent, int npage, MTFont f)
void MScrollBarSetPosCallback(MOBJECT p, OBJ_VALUE_CB cb, void *data)
int exemode
Set the Execution MODE (Execution modes)
const char * MGetFirstFontFamily(void)
double TPelt
OMU Target Temperature.
void CONFP_param_page5(int mod, MOBJECT obj)
void DB_2DPlot(char *title, int x, int y, int dx, int dy, int mode)
2D_Plot panel callback.
void CloseConfigCB(MOBJECT shell, void *od, void *ad)
Close DAS-Config callback close the DAS_Config window. If the testing of the ADConverter is running i...
void CCDSetupCB(MOBJECT shell, void *od, void *ad)
CCD setup Callback. Execute DCS.exe (DTA Camera Select)
OMU Thermoregulation structure .
double MinSZA
Minimum SZA.
void CloseShTempCB(MOBJECT p, void *od, void *ad)
MOBJECT lbltelap
label elapsed time (for WDT)
int WriteAMSCB(MOBJECT shell, void *od, void *ad)
Write AMS.ini file .
void CONFP_AMS_Utility(MOBJECT pf)
MOBJECT MCreateImageTButtonExt(MOBJECT parent, const char *npf, const char *apf, const char *upf, const char *non, const char *aon, const char *uon)
void UnderOverPixCB(MOBJECT o, void *id, void *a_data)
Under/Over exposed pixels Callback At the pression of the button in DAS_Config the appropriate shell...
char DEFPIXFILENAME[_MAX_PATH]
defective pixel filename with path
int power[AMSMAX][2]
Stepper Motors Power.
marconi Marconi
CCD Sensor struct.
const char * Mir_CodeTropo[]
const char array for the realisation of the Mirrors buttons in the Mirror shell for TROPOGAS ...
paramini Paramini
structure for the parameters defined in param.ini configuration file
LIST_ACT * MSListGetSelected(MOBJECT p)
void MFormSetPrefAtt(MOBJECT p, int pref_att)