view FXAnalyse.h @ 88:9b7588cd4013

Move data acquisition into separate thread The data acquisition thread transfers data to the main thread trough a Thread Safe Queue. This separation allows for making the data acquisition system pluggable. The old file based communication to the KK counter is implemented along with a very simple fake data provider.
author Daniele Nicolodi <daniele.nicolodi@obspm.fr>
date Thu, 21 Mar 2013 18:24:45 +0100
parents c03263186dd7
children 675cb8d5e8a7
line wrap: on
line source

/**************************************************************************/
/* LabWindows/CVI User Interface Resource (UIR) Include File              */
/* Copyright (c) National Instruments 2013. All Rights Reserved.          */
/*                                                                        */
/* WARNING: Do not add to, delete from, or otherwise modify the contents  */
/*          of this include file.                                         */
/**************************************************************************/

#include <userint.h>

#ifdef __cplusplus
    extern "C" {
#endif

     /* Panels and Controls: */

#define  CALCN                            1
#define  CALCN_N                          2       /* control type: numeric, callback function: (none) */
#define  CALCN_STOP                       3       /* control type: command, callback function: CB_OnNStop */
#define  CALCN_SLOPETIME                  4       /* control type: numeric, callback function: (none) */
#define  CALCN_INTEGRATIONTIME            5       /* control type: numeric, callback function: (none) */
#define  CALCN_DELTAFREQ                  6       /* control type: numeric, callback function: (none) */
#define  CALCN_START                      7       /* control type: command, callback function: CB_OnStartNCalculus */
#define  CALCN_ACCEPTN                    8       /* control type: command, callback function: CB_OnAcceptN */
#define  CALCN_SLOPE                      9       /* control type: numeric, callback function: (none) */

#define  ESTIMATEN3                       2
#define  ESTIMATEN3_N                     2       /* control type: numeric, callback function: (none) */
#define  ESTIMATEN3_ESTIMATE              3       /* control type: command, callback function: CB_OnNEstimate */
#define  ESTIMATEN3_FREP                  4       /* control type: numeric, callback function: (none) */
#define  ESTIMATEN3_SET                   5       /* control type: command, callback function: CB_OnNEstimateSet */
#define  ESTIMATEN3_CANCEL                6       /* control type: command, callback function: CB_OnNEstimateCancel */
#define  ESTIMATEN3_WAVELENGTH            7       /* control type: numeric, callback function: (none) */

#define  LOGGING                          3       /* callback function: CB_OnLoggingPanelEvent */
#define  LOGGING_LOGGING                  2       /* control type: textBox, callback function: (none) */

#define  PANEL                            4       /* callback function: CB_OnEventMain */
#define  PANEL_QUITBUTTON                 2       /* control type: command, callback function: QuitCallback */
#define  PANEL_STARTBUTTON                3       /* control type: command, callback function: CB_OnStart */
#define  PANEL_STOPBUTTON                 4       /* control type: command, callback function: CB_OnStop */
#define  PANEL_FREQ4                      5       /* control type: numeric, callback function: (none) */
#define  PANEL_FREQ3                      6       /* control type: numeric, callback function: (none) */
#define  PANEL_FREQ2                      7       /* control type: numeric, callback function: (none) */
#define  PANEL_FREQ1                      8       /* control type: numeric, callback function: (none) */
#define  PANEL_CHECKBOX_MATH1ALLAN        9       /* control type: radioButton, callback function: CB_OnAllanPlot */
#define  PANEL_CHECKBOX_FREQ4ALLAN        10      /* control type: radioButton, callback function: CB_OnAllanPlot */
#define  PANEL_CHECKBOX_FREQ3ALLAN        11      /* control type: radioButton, callback function: CB_OnAllanPlot */
#define  PANEL_CHECKBOX_FREQ4PLOT         12      /* control type: radioButton, callback function: CB_OnFreqPlot */
#define  PANEL_CHECKBOX_FREQ2ALLAN        13      /* control type: radioButton, callback function: CB_OnAllanPlot */
#define  PANEL_CHECKBOX_FREQ3PLOT         14      /* control type: radioButton, callback function: CB_OnFreqPlot */
#define  PANEL_CHECKBOX_CORRFREQU         15      /* control type: radioButton, callback function: CB_OnCROX */
#define  PANEL_CHECKBOX_FREQ1ALLAN        16      /* control type: radioButton, callback function: CB_OnAllanPlot */
#define  PANEL_CHECKBOX_FREQ2PLOT         17      /* control type: radioButton, callback function: CB_OnFreqPlot */
#define  PANEL_CHECKBOX_MATH1PLOT         18      /* control type: radioButton, callback function: CB_OnFreqPlot */
#define  PANEL_CHECKBOX_FREQ1PLOT         19      /* control type: radioButton, callback function: CB_OnFreqPlot */
#define  PANEL_DDS2                       20      /* control type: numeric, callback function: CB_ChangeDDSOut */
#define  PANEL_TEXTMSG                    21      /* control type: textMsg, callback function: (none) */
#define  PANEL_TEXTMSG_2                  22      /* control type: textMsg, callback function: (none) */
#define  PANEL_SLOPETIME                  23      /* control type: numeric, callback function: CB_ChangeSlopeTime */
#define  PANEL_DDS1                       24      /* control type: numeric, callback function: CB_ChangeDDSOut */
#define  PANEL_SPLITTER                   25      /* control type: splitter, callback function: (none) */
#define  PANEL_CHANGENDIV                 26      /* control type: numeric, callback function: CB_OnChangeNdiv */
#define  PANEL_N3CHOICE                   27      /* control type: numeric, callback function: CB_ChangeN */
#define  PANEL_N3CALCULUS                 28      /* control type: command, callback function: CB_OnNCalculus */
#define  PANEL_N1CHOICE                   29      /* control type: numeric, callback function: CB_ChangeN */
#define  PANEL_N2CHOICE                   30      /* control type: numeric, callback function: CB_ChangeN */
#define  PANEL_N2CALCULUS                 31      /* control type: command, callback function: CB_OnNCalculus */
#define  PANEL_DDS4STEP                   32      /* control type: ring, callback function: CB_ChangeDDSStep */
#define  PANEL_DDS3STEP                   33      /* control type: ring, callback function: CB_ChangeDDSStep */
#define  PANEL_DDS2STEP                   34      /* control type: ring, callback function: CB_ChangeDDSStep */
#define  PANEL_CENTERFREQUENCY            35      /* control type: numeric, callback function: (none) */
#define  PANEL_SLOPE_APPLIED              36      /* control type: numeric, callback function: CB_SetSlope */
#define  PANEL_MATH4                      37      /* control type: numeric, callback function: (none) */
#define  PANEL_MATH5                      38      /* control type: numeric, callback function: (none) */
#define  PANEL_MATH3                      39      /* control type: numeric, callback function: (none) */
#define  PANEL_CHECKBOX_MATH5PLOT         40      /* control type: radioButton, callback function: CB_OnFreqPlot */
#define  PANEL_CHECKBOX_MATH4PLOT         41      /* control type: radioButton, callback function: CB_OnFreqPlot */
#define  PANEL_CHECKBOX_MATH4ALLAN        42      /* control type: radioButton, callback function: CB_OnAllanPlot */
#define  PANEL_DDS1STEP                   43      /* control type: ring, callback function: CB_ChangeDDSStep */
#define  PANEL_TEXTMSG_15                 44      /* control type: textMsg, callback function: (none) */
#define  PANEL_CHECKBOX_MATH5ALLAN        45      /* control type: radioButton, callback function: CB_OnAllanPlot */
#define  PANEL_CHECKBOX_MATH3PLOT         46      /* control type: radioButton, callback function: CB_OnFreqPlot */
#define  PANEL_CHECKBOX_MATH5SAVE         47      /* control type: radioButton, callback function: (none) */
#define  PANEL_CHECKBOX_MATH4SAVE         48      /* control type: radioButton, callback function: (none) */
#define  PANEL_CHECKBOX_MATH3ALLAN        49      /* control type: radioButton, callback function: CB_OnAllanPlot */
#define  PANEL_MATHSTRING4                50      /* control type: string, callback function: CB_ChangeMath */
#define  PANEL_TEXTMSG_17                 51      /* control type: textMsg, callback function: (none) */
#define  PANEL_MATH2                      52      /* control type: numeric, callback function: (none) */
#define  PANEL_SPLITTER_15                53      /* control type: splitter, callback function: (none) */
#define  PANEL_SPLITTER_12                54      /* control type: splitter, callback function: (none) */
#define  PANEL_CHECKBOX_MATH2PLOT         55      /* control type: radioButton, callback function: CB_OnFreqPlot */
#define  PANEL_CHECKBOX_MATH3SAVE         56      /* control type: radioButton, callback function: (none) */
#define  PANEL_CHECKBOX_MATH2SAVE         57      /* control type: radioButton, callback function: (none) */
#define  PANEL_CHECKBOX_MATH2ALLAN        58      /* control type: radioButton, callback function: CB_OnAllanPlot */
#define  PANEL_TEXTMSG_7                  59      /* control type: textMsg, callback function: (none) */
#define  PANEL_MATHSTRING3                60      /* control type: string, callback function: CB_ChangeMath */
#define  PANEL_MATH1                      61      /* control type: numeric, callback function: (none) */
#define  PANEL_SPLITTER_6                 62      /* control type: splitter, callback function: (none) */
#define  PANEL_TEXTMSG_18                 63      /* control type: textMsg, callback function: (none) */
#define  PANEL_TEXTMSG_6                  64      /* control type: textMsg, callback function: (none) */
#define  PANEL_TEXTMSG_8                  65      /* control type: textMsg, callback function: (none) */
#define  PANEL_TEXTMSG_19                 66      /* control type: textMsg, callback function: (none) */
#define  PANEL_MATHSTRING1                67      /* control type: string, callback function: CB_ChangeMath */
#define  PANEL_TEXTMSG_9                  68      /* control type: textMsg, callback function: (none) */
#define  PANEL_TEXTMSG_10                 69      /* control type: textMsg, callback function: (none) */
#define  PANEL_MATHSTRING2                70      /* control type: string, callback function: CB_ChangeMath */
#define  PANEL_TEXTMSG_16                 71      /* control type: textMsg, callback function: (none) */
#define  PANEL_SPLITTER_11                72      /* control type: splitter, callback function: (none) */
#define  PANEL_SPLITTER_16                73      /* control type: splitter, callback function: (none) */
#define  PANEL_SPLITTER_9                 74      /* control type: splitter, callback function: (none) */
#define  PANEL_SPLITTER_3                 75      /* control type: splitter, callback function: (none) */
#define  PANEL_MINUS10KDDS1               76      /* control type: command, callback function: CB_OnMinus10k */
#define  PANEL_MINUS10KDDS4               77      /* control type: command, callback function: CB_OnMinus10k */
#define  PANEL_MINUS10KDDS3               78      /* control type: command, callback function: CB_OnMinus10k */
#define  PANEL_MINUS10KDDS2               79      /* control type: command, callback function: CB_OnMinus10k */
#define  PANEL_PLUS10KDDS4                80      /* control type: command, callback function: CB_OnPlus10k */
#define  PANEL_PLUS10KDDS3                81      /* control type: command, callback function: CB_OnPlus10k */
#define  PANEL_PLUS10KDDS1                82      /* control type: command, callback function: CB_OnPlus10k */
#define  PANEL_PLUS10KDDS2                83      /* control type: command, callback function: CB_OnPlus10k */
#define  PANEL_TEXTMSG_11                 84      /* control type: textMsg, callback function: (none) */
#define  PANEL_MATHSTRING5                85      /* control type: textBox, callback function: CB_ChangeMath */
#define  PANEL_SPLITTER_8                 86      /* control type: splitter, callback function: (none) */
#define  PANEL_UTC                        87      /* control type: numeric, callback function: (none) */
#define  PANEL_TIME                       88      /* control type: string, callback function: (none) */
#define  PANEL_SPLITTER_14                89      /* control type: splitter, callback function: (none) */
#define  PANEL_SPLITTER_13                90      /* control type: splitter, callback function: (none) */
#define  PANEL_DDS4                       91      /* control type: numeric, callback function: CB_ChangeDDSOut */
#define  PANEL_SPLITTER_2                 92      /* control type: splitter, callback function: (none) */
#define  PANEL_DDS3                       93      /* control type: numeric, callback function: CB_ChangeDDSOut */
#define  PANEL_N1CALCULUS                 94      /* control type: command, callback function: CB_OnNCalculus */
#define  PANEL_FINDSIGN3                  95      /* control type: command, callback function: CB_OnFindSign */
#define  PANEL_SIGN3                      96      /* control type: numeric, callback function: (none) */
#define  PANEL_FINDSIGN2                  97      /* control type: command, callback function: CB_OnFindSign */
#define  PANEL_SIGN2                      98      /* control type: numeric, callback function: (none) */
#define  PANEL_FINDSIGN1                  99      /* control type: command, callback function: CB_OnFindSign */
#define  PANEL_SIGN1                      100     /* control type: numeric, callback function: (none) */
#define  PANEL_FIND10K3                   101     /* control type: command, callback function: CB_OnFind275K */
#define  PANEL_FIND275K2                  102     /* control type: command, callback function: CB_OnFind275K */
#define  PANEL_RESETSLOPE                 103     /* control type: command, callback function: CB_OnResetSlope */
#define  PANEL_CHECKBOX_STOPIFAUTODE      104     /* control type: radioButton, callback function: CB_OnStopSlopeCancellingOnUnlocked */
#define  PANEL_CHECKBOX_RECENTER          105     /* control type: radioButton, callback function: CB_OnReCentering */
#define  PANEL_CHECKBOX_KEEPSLOPE         106     /* control type: radioButton, callback function: CB_OnCROX */
#define  PANEL_CHECKBOX_KEEP              107     /* control type: radioButton, callback function: CB_OnCROX */
#define  PANEL_SLOPE_REFERENCE            108     /* control type: ring, callback function: CB_OnSlopeReference */
#define  PANEL_ESTIMATE_N3                109     /* control type: command, callback function: CB_OnEstimateN */
#define  PANEL_INVERT_SLOPE_SIGN          110     /* control type: radioButton, callback function: CB_InvertSlopeSign */
#define  PANEL_MEASURE_SLOPE              111     /* control type: LED, callback function: CB_MeasureSlope */
#define  PANEL_SLOPE_MEASURED             112     /* control type: numeric, callback function: (none) */
#define  PANEL_RESET_DEDRIFT_DDS          113     /* control type: command, callback function: CB_ResetDedriftDDS */
#define  PANEL_SHOWLOG                    114     /* control type: command, callback function: CB_ShowLog */


     /* Menu Bars, Menus, and Menu Items: */

          /* (no menu bars in the resource file) */


     /* Callback Prototypes: */

int  CVICALLBACK CB_ChangeDDSOut(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_ChangeDDSStep(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_ChangeMath(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_ChangeN(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_ChangeSlopeTime(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_InvertSlopeSign(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_MeasureSlope(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnAcceptN(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnAllanPlot(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnChangeNdiv(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnCROX(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnEstimateN(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnEventMain(int panel, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnFind275K(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnFindSign(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnFreqPlot(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnLoggingPanelEvent(int panel, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnMinus10k(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnNCalculus(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnNEstimate(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnNEstimateCancel(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnNEstimateSet(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnNStop(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnPlus10k(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnReCentering(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnResetSlope(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnSlopeReference(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnStart(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnStartNCalculus(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnStop(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_OnStopSlopeCancellingOnUnlocked(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_ResetDedriftDDS(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_SetSlope(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK CB_ShowLog(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);
int  CVICALLBACK QuitCallback(int panel, int control, int event, void *callbackData, int eventData1, int eventData2);


#ifdef __cplusplus
    }
#endif