sranger_hwi_control.C File Reference

#include <locale.h>
#include <libintl.h>
#include <time.h>
#include "glbvars.h"
#include "plug-ins/hard/modules/dsp.h"
#include <fcntl.h>
#include <sys/ioctl.h>
#include "gxsm/action_id.h"
#include "dsp-pci32/xsm/xsmcmd.h"
#include "sranger_hwi_control.h"
#include "sranger_hwi.h"
#include "gtkspinbuttonsci.h"
#include "../plug-ins/hard/modules/sranger_ioctl.h"

Go to the source code of this file.

Defines

#define UTF8_DEGREE   "\302\260"
#define UTF8_MU   "\302\265"
#define UTF8_ANGSTROEM   "\303\205"
#define X_SOURCE_MSK   0x10000000
#define P_SOURCE_MSK   0x20000000
#define REMOTE_PREFIX   "DSP_"
#define ADD_EC_WITH_SCALE(LABEL, UNIT, ERROR_TEXT, VAR, LO, HI, FMT, STEP, PAGE, REMOTE_LIST)
#define ADD_EC_SPIN(LABEL, UNIT, ERROR_TEXT, VAR, LO, HI, FMT, STEP, PAGE, REMOTE_LIST)
#define ADD_EC_SPIN_LIST(LABEL, UNIT, ERROR_TEXT, VAR, LO, HI, FMT, STEP, PAGE, REMOTE_LIST, LIST)
#define ADD_EC_SPIN_I(LABEL, UNIT, ERROR_TEXT, VAR, LO, HI, FMT, STEP, PAGE, REMOTE_LIST, INFO)
#define APP_EC_SPIN(LABEL, UNIT, ERROR_TEXT, VAR, LO, HI, FMT, STEP, PAGE, REMOTE_LIST)
#define APP_EC_SPIN_I(LABEL, UNIT, ERROR_TEXT, VAR, LO, HI, FMT, STEP, PAGE, REMOTE_LIST, INFO)
#define APP_EC_SPIN_LIST(LABEL, UNIT, ERROR_TEXT, VAR, LO, HI, FMT, STEP, PAGE, REMOTE_LIST, LIST)
#define APP_EC_SPIN_LIST_I(LABEL, UNIT, ERROR_TEXT, VAR, LO, HI, FMT, STEP, PAGE, REMOTE_LIST, LIST, INFO)
#define APP_EC_SPIN_SIZE(LABEL, UNIT, ERROR_TEXT, VAR, LO, HI, FMT, STEP, PAGE, REMOTE_LIST, W, XTERN)
#define ADD_EC_SPIN_XTERN(LABEL, UNIT, ERROR_TEXT, VAR, LO, HI, FMT, STEP, PAGE, REMOTE_LIST, XTERN)
#define ADD_LABEL(LABEL)
#define ADD_LABEL_LIST(LABEL, LIST)
#define ADD_TOGGLE(LABEL, CONTAINER, SOURCE, BIT_CODE, CB_FUNC)
#define ADD_TOGGLE_TO_TAB(LABEL, TAB, X, Y, SOURCE_CHANNEL_BIT_CODE, XTERN)
#define ADD_STATUS(LABEL, W, LIST)
#define BUILD_STANDART_PROBE_CONTROLS(HAVE_DUAL, OPTION_FLAGS, OPTION_CB, AUTO_FLAGS, AUTO_CB, EXEC_CB, WRITE_CB, GRAPH_CB)
#define OUT_OF_RANGE   _("Value out of range!")
#define NC_GET_VARIABLE(VNAME, VAR)   if(ncf->get_var(VNAME)) ncf->get_var(VNAME)->get(VAR)
#define CONV_16(X)   X = sranger_hwi_hardware->int_2_sranger_int (X)
#define CONV_32(X)   X = sranger_hwi_hardware->long_2_sranger_long (X)

Functions

static void remove (gpointer entry, gpointer from)
double factor (double N, double delta)

Variables

GxsmPlugin sranger_hwi_pi
sranger_hwi_devsranger_hwi_hardware


Define Documentation

#define ADD_EC_SPIN LABEL,
UNIT,
ERROR_TEXT,
VAR,
LO,
HI,
FMT,
STEP,
PAGE,
REMOTE_LIST   ) 
 

Value:

do{\
                    GtkWidget *input = mygtk_create_spin_input(_(LABEL), vbox_param, hbox_param);\
                    gtk_object_set_data (GTK_OBJECT (input), "Adjustment_PCS_Name", (void*)(REMOTE_PREFIX LABEL));\
                    Gtk_EntryControl *ec = new Gtk_EntryControl (UNIT, _(ERROR_TEXT), VAR, LO, HI, FMT, input, STEP, PAGE);\
                    ec->Set_ChangeNoticeFkt(DSPControl::ChangedNotify, this);\
                    EC_list = g_slist_prepend( EC_list, ec);\
                    REMOTE_LIST = ec->AddEntry2RemoteList(REMOTE_PREFIX LABEL, REMOTE_LIST);\
        }while(0)

Definition at line 74 of file sranger_hwi_control.C.

#define ADD_EC_SPIN_I LABEL,
UNIT,
ERROR_TEXT,
VAR,
LO,
HI,
FMT,
STEP,
PAGE,
REMOTE_LIST,
INFO   ) 
 

Value:

do{\
                    GtkWidget *input = mygtk_create_spin_input(_(LABEL), vbox_param, hbox_param);\
                    gtk_object_set_data (GTK_OBJECT (input), "Adjustment_PCS_Name", (void*)(REMOTE_PREFIX LABEL));\
                    Gtk_EntryControl *ec = new Gtk_EntryControl (UNIT, _(ERROR_TEXT), VAR, LO, HI, FMT, input, STEP, PAGE);\
                    ec->Set_ChangeNoticeFkt(DSPControl::ChangedNotify, this);\
                    ec->set_info (_(INFO));                                     \
                    EC_list = g_slist_prepend( EC_list, ec);\
                    REMOTE_LIST = ec->AddEntry2RemoteList(REMOTE_PREFIX LABEL, REMOTE_LIST);\
        }while(0)

Definition at line 93 of file sranger_hwi_control.C.

#define ADD_EC_SPIN_LIST LABEL,
UNIT,
ERROR_TEXT,
VAR,
LO,
HI,
FMT,
STEP,
PAGE,
REMOTE_LIST,
LIST   ) 
 

Value:

do{\
                    GtkWidget *input = mygtk_create_spin_input(_(LABEL), vbox_param, hbox_param);\
                    gtk_object_set_data (GTK_OBJECT (input), "Adjustment_PCS_Name", (void*)(REMOTE_PREFIX LABEL));\
                    Gtk_EntryControl *ec = new Gtk_EntryControl (UNIT, _(ERROR_TEXT), VAR, LO, HI, FMT, input, STEP, PAGE);\
                    ec->Set_ChangeNoticeFkt(DSPControl::ChangedNotify, this);\
                    EC_list = g_slist_prepend( EC_list, ec);\
                    REMOTE_LIST = ec->AddEntry2RemoteList(REMOTE_PREFIX LABEL, REMOTE_LIST);\
                    LIST = g_slist_prepend (LIST, input);               \
        }while(0)

Definition at line 83 of file sranger_hwi_control.C.

#define ADD_EC_SPIN_XTERN LABEL,
UNIT,
ERROR_TEXT,
VAR,
LO,
HI,
FMT,
STEP,
PAGE,
REMOTE_LIST,
XTERN   ) 
 

Value:

do{\
                GtkWidget *input = mygtk_create_spin_input(_(LABEL), vbox_param, hbox_param);   \
                    gtk_object_set_data (GTK_OBJECT (input), "Adjustment_PCS_Name", (void*)(REMOTE_PREFIX LABEL));\
                    Gtk_EntryControl *ec = new Gtk_EntryControl (UNIT, _(ERROR_TEXT), VAR, LO, HI, FMT, input, STEP, PAGE);\
                    ec->Set_ChangeNoticeFkt(DSPControl::ChangedNotify, this);\
                    EC_list = g_slist_prepend( EC_list, ec);\
                    REMOTE_LIST = ec->AddEntry2RemoteList(REMOTE_PREFIX LABEL, REMOTE_LIST);\
                    XTERN;\
        }while(0)

Definition at line 154 of file sranger_hwi_control.C.

#define ADD_EC_WITH_SCALE LABEL,
UNIT,
ERROR_TEXT,
VAR,
LO,
HI,
FMT,
STEP,
PAGE,
REMOTE_LIST   ) 
 

Value:

do{\
                    GtkWidget *input = mygtk_create_spin_input(_(LABEL), vbox_param, hbox_param);\
                    gtk_object_set_data (GTK_OBJECT (input), "Adjustment_PCS_Name", (void*)(REMOTE_PREFIX LABEL));\
                    Gtk_EntryControl *ec = new Gtk_EntryControl (UNIT, _(ERROR_TEXT), VAR, LO, HI, FMT, input, STEP, PAGE);\
                    ec->Set_ChangeNoticeFkt(DSPControl::ChangedNotify, this);\
                    SetupScale(ec->GetAdjustment(), hbox_param);\
                    EC_list = g_slist_prepend( EC_list, ec);\
                    REMOTE_LIST = ec->AddEntry2RemoteList(REMOTE_PREFIX LABEL, REMOTE_LIST);\
        }while(0)

Definition at line 64 of file sranger_hwi_control.C.

#define ADD_LABEL LABEL   ) 
 

Value:

do{\
        label = gtk_label_new (N_(LABEL));\
        gtk_widget_set_usize (label, 50, -1);\
        gtk_box_pack_start (GTK_BOX (hbox_param), label, FALSE, TRUE, 0);\
        }while(0)

Definition at line 165 of file sranger_hwi_control.C.

#define ADD_LABEL_LIST LABEL,
LIST   ) 
 

Value:

do{\
        label = gtk_label_new (N_(LABEL));\
        gtk_widget_set_usize (label, 50, -1);\
        gtk_box_pack_start (GTK_BOX (hbox_param), label, FALSE, TRUE, 0);\
        LIST = g_slist_prepend (LIST, label);                           \
        }while(0)

Definition at line 172 of file sranger_hwi_control.C.

#define ADD_STATUS LABEL,
W,
LIST   ) 
 

Value:

do {\
                hbox_param = gtk_hbox_new (FALSE, 0);\
                gtk_container_add (GTK_CONTAINER (vbox_param), hbox_param);\
                GtkWidget* label = gtk_label_new (_(LABEL));\
                LIST = g_slist_prepend (LIST, label);\
                gtk_box_pack_start (GTK_BOX (hbox_param), label, FALSE, TRUE, 0);\
                gtk_widget_set_size_request (label, MYGTK_LSIZE, -1);\
                gtk_label_set_justify (GTK_LABEL (label), GTK_JUSTIFY_RIGHT);\
                W = gtk_entry_new ();\
                gtk_entry_set_text (GTK_ENTRY(W), " --- ");\
                gtk_entry_set_editable (GTK_ENTRY(W), FALSE);\
                LIST = g_slist_prepend (LIST, W);\
                gtk_container_add (GTK_CONTAINER (hbox_param), W);\
        }while(0)

Definition at line 205 of file sranger_hwi_control.C.

#define ADD_TOGGLE LABEL,
CONTAINER,
SOURCE,
BIT_CODE,
CB_FUNC   ) 
 

Value:

do {\
                   GtkWidget *checkbutton = gtk_check_button_new_with_label(_(LABEL)); \
                   gtk_container_add(GTK_CONTAINER(CONTAINER), checkbutton);\
                   gtk_object_set_data(GTK_OBJECT(checkbutton), "Bit_Mask", (gpointer*) BIT_CODE);\
                   GTK_TOGGLE_BUTTON(checkbutton)->active = (((SOURCE) & (BIT_CODE))?1:0); \
                   g_signal_connect(checkbutton, "toggled",G_CALLBACK(CB_FUNC), this);\
        }while(0)

Definition at line 180 of file sranger_hwi_control.C.

#define ADD_TOGGLE_TO_TAB LABEL,
TAB,
X,
Y,
SOURCE_CHANNEL_BIT_CODE,
XTERN   ) 
 

Value:

do {\
                   GtkWidget *checkbutton = gtk_check_button_new_with_label(_(LABEL)); \
                   gtk_table_attach (GTK_TABLE(TAB), checkbutton, X, (X)+1, Y, (Y)+1, GTK_FILL, GTK_FILL, 5,1); \
                   gtk_object_set_data (GTK_OBJECT(checkbutton), "Source_Channel", (gpointer*) SOURCE_CHANNEL_BIT_CODE);\
                   if (SOURCE_CHANNEL_BIT_CODE & X_SOURCE_MSK)\
                           GTK_TOGGLE_BUTTON (checkbutton)->active = (((SOURCE_CHANNEL_BIT_CODE & 0xfffffff) & XSource)?1:0); \
                   else if (SOURCE_CHANNEL_BIT_CODE & P_SOURCE_MSK)\
                           GTK_TOGGLE_BUTTON (checkbutton)->active = (((SOURCE_CHANNEL_BIT_CODE & 0xfffffff) & PSource)?1:0); \
                   else\
                           GTK_TOGGLE_BUTTON (checkbutton)->active = (((SOURCE_CHANNEL_BIT_CODE & 0xfffffff) & Source)?1:0); \
                   g_signal_connect(checkbutton, "toggled",G_CALLBACK(change_source_callback), this);\
                   XTERN;\
        }while(0)

Definition at line 189 of file sranger_hwi_control.C.

#define APP_EC_SPIN LABEL,
UNIT,
ERROR_TEXT,
VAR,
LO,
HI,
FMT,
STEP,
PAGE,
REMOTE_LIST   ) 
 

Value:

do{\
                    GtkWidget *input = mygtk_add_spin(hbox_param);\
                    gtk_object_set_data (GTK_OBJECT (input), "Adjustment_PCS_Name", (void*)(REMOTE_PREFIX LABEL));\
                    Gtk_EntryControl *ec = new Gtk_EntryControl (UNIT, _(ERROR_TEXT), VAR, LO, HI, FMT, input, STEP, PAGE);\
                    ec->Set_ChangeNoticeFkt(DSPControl::ChangedNotify, this);\
                    EC_list = g_slist_prepend( EC_list, ec);\
                    REMOTE_LIST = ec->AddEntry2RemoteList(REMOTE_PREFIX LABEL, REMOTE_LIST);\
        }while(0)

Definition at line 104 of file sranger_hwi_control.C.

#define APP_EC_SPIN_I LABEL,
UNIT,
ERROR_TEXT,
VAR,
LO,
HI,
FMT,
STEP,
PAGE,
REMOTE_LIST,
INFO   ) 
 

Value:

do{\
                    GtkWidget *input = mygtk_add_spin(hbox_param);\
                    gtk_object_set_data (GTK_OBJECT (input), "Adjustment_PCS_Name", (void*)(REMOTE_PREFIX LABEL));\
                    Gtk_EntryControl *ec = new Gtk_EntryControl (UNIT, _(ERROR_TEXT), VAR, LO, HI, FMT, input, STEP, PAGE);\
                    ec->Set_ChangeNoticeFkt(DSPControl::ChangedNotify, this);\
                    ec->set_info (_(INFO));                                     \
                    EC_list = g_slist_prepend( EC_list, ec);\
                    REMOTE_LIST = ec->AddEntry2RemoteList(REMOTE_PREFIX LABEL, REMOTE_LIST);\
        }while(0)

Definition at line 113 of file sranger_hwi_control.C.

#define APP_EC_SPIN_LIST LABEL,
UNIT,
ERROR_TEXT,
VAR,
LO,
HI,
FMT,
STEP,
PAGE,
REMOTE_LIST,
LIST   ) 
 

Value:

do{\
                    GtkWidget *input = mygtk_add_spin(hbox_param);\
                    gtk_object_set_data (GTK_OBJECT (input), "Adjustment_PCS_Name", (void*)(REMOTE_PREFIX LABEL));\
                    Gtk_EntryControl *ec = new Gtk_EntryControl (UNIT, _(ERROR_TEXT), VAR, LO, HI, FMT, input, STEP, PAGE);\
                    ec->Set_ChangeNoticeFkt(DSPControl::ChangedNotify, this);\
                    EC_list = g_slist_prepend( EC_list, ec);\
                    REMOTE_LIST = ec->AddEntry2RemoteList(REMOTE_PREFIX LABEL, REMOTE_LIST);\
                    LIST = g_slist_prepend (LIST, input);               \
        }while(0)

Definition at line 123 of file sranger_hwi_control.C.

#define APP_EC_SPIN_LIST_I LABEL,
UNIT,
ERROR_TEXT,
VAR,
LO,
HI,
FMT,
STEP,
PAGE,
REMOTE_LIST,
LIST,
INFO   ) 
 

Value:

do{\
                    GtkWidget *input = mygtk_add_spin(hbox_param);\
                    gtk_object_set_data (GTK_OBJECT (input), "Adjustment_PCS_Name", (void*)(REMOTE_PREFIX LABEL));\
                    Gtk_EntryControl *ec = new Gtk_EntryControl (UNIT, _(ERROR_TEXT), VAR, LO, HI, FMT, input, STEP, PAGE);\
                    ec->Set_ChangeNoticeFkt(DSPControl::ChangedNotify, this);\
                    ec->set_info (_(INFO));                                     \
                    EC_list = g_slist_prepend( EC_list, ec);\
                    REMOTE_LIST = ec->AddEntry2RemoteList(REMOTE_PREFIX LABEL, REMOTE_LIST);\
                    LIST = g_slist_prepend (LIST, input);               \
        }while(0)

Definition at line 133 of file sranger_hwi_control.C.

#define APP_EC_SPIN_SIZE LABEL,
UNIT,
ERROR_TEXT,
VAR,
LO,
HI,
FMT,
STEP,
PAGE,
REMOTE_LIST,
W,
XTERN   ) 
 

Value:

do{\
                GtkWidget *input = mygtk_add_spin(hbox_param, -1, W);   \
                    gtk_object_set_data (GTK_OBJECT (input), "Adjustment_PCS_Name", (void*)(REMOTE_PREFIX LABEL));\
                    Gtk_EntryControl *ec = new Gtk_EntryControl (UNIT, _(ERROR_TEXT), VAR, LO, HI, FMT, input, STEP, PAGE);\
                    ec->Set_ChangeNoticeFkt(DSPControl::ChangedNotify, this);\
                    EC_list = g_slist_prepend( EC_list, ec);\
                    REMOTE_LIST = ec->AddEntry2RemoteList(REMOTE_PREFIX LABEL, REMOTE_LIST);\
                    XTERN;\
        }while(0)

Definition at line 144 of file sranger_hwi_control.C.

#define BUILD_STANDART_PROBE_CONTROLS HAVE_DUAL,
OPTION_FLAGS,
OPTION_CB,
AUTO_FLAGS,
AUTO_CB,
EXEC_CB,
WRITE_CB,
GRAPH_CB   ) 
 

Definition at line 221 of file sranger_hwi_control.C.

#define CONV_16  )     X = sranger_hwi_hardware->int_2_sranger_int (X)
 

Definition at line 1266 of file sranger_hwi_control.C.

Referenced by DSPControl::add_user_event_now(), DSPControl::conv_dsp_analog(), DSPControl::conv_dsp_feedback(), DSPControl::conv_dsp_probe(), DSPControl::conv_dsp_scan(), DSPControl::conv_dsp_vector(), DSPControl::read_dsp_state(), and sranger_hwi_spm::RTQuery().

#define CONV_32  )     X = sranger_hwi_hardware->long_2_sranger_long (X)
 

Definition at line 1267 of file sranger_hwi_control.C.

Referenced by DSPControl::conv_dsp_probe(), DSPControl::conv_dsp_scan(), and DSPControl::conv_dsp_vector().

#define NC_GET_VARIABLE VNAME,
VAR   )     if(ncf->get_var(VNAME)) ncf->get_var(VNAME)->get(VAR)
 

Definition at line 1252 of file sranger_hwi_control.C.

#define OUT_OF_RANGE   _("Value out of range!")
 

Definition at line 262 of file sranger_hwi_control.C.

#define P_SOURCE_MSK   0x20000000
 

Definition at line 61 of file sranger_hwi_control.C.

Referenced by DSPControl::change_source_callback().

#define REMOTE_PREFIX   "DSP_"
 

Definition at line 63 of file sranger_hwi_control.C.

#define UTF8_ANGSTROEM   "\303\205"
 

Definition at line 55 of file sranger_hwi_control.C.

#define UTF8_DEGREE   "\302\260"
 

Definition at line 53 of file sranger_hwi_control.C.

#define UTF8_MU   "\302\265"
 

Definition at line 54 of file sranger_hwi_control.C.

#define X_SOURCE_MSK   0x10000000
 

Definition at line 60 of file sranger_hwi_control.C.

Referenced by DSPControl::change_source_callback().


Function Documentation

double factor double  N,
double  delta
 

Definition at line 1409 of file sranger_hwi_control.C.

References fmod().

Referenced by BB_InitCnt(), and probedata::probedata().

static void remove gpointer  entry,
gpointer  from
[static]
 

Definition at line 1020 of file sranger_hwi_control.C.


Variable Documentation

sranger_hwi_dev* sranger_hwi_hardware
 

Definition at line 509 of file sranger_hwi.C.

GxsmPlugin sranger_hwi_pi
 

Definition at line 442 of file sranger_hwi.C.


Generated on Sat Apr 1 09:04:46 2006 for GXSM by  doxygen 1.4.6