EScope10: Multiple Data Servers
EScope10 integrates more kinds of data server into the EScope environment. New Data Server
realizations must implement interface DataServerFacadeInterface, and are defined
in EScope.property property file, in addition to the definition of the used panels. Every
supported data server is defined by the following properties (where <i> ranges from
1 to the number of supported data servers):
- DataServer_<i>.Name
defining the name of the data server, displayed then in the GUI
- DataServer_<i>.FactoryClass
defining the name of the factory class for this data server
- DataServer_<i>.Source
defining the source of the server, used, for example, when the data server is using a
network connection
- DataServer_<i>.Experiment
defining the default experiment database for this data server
- DataServer_<i>.Shot
defining the default shot number fort his data server
- DataServer_<i>.Args
defining an additional free argument for this data server
Besides the default MDSplus data server, TextDataServer provides
data access in text files. A set of text files (compatible with Excel) is provided in this
distribution defining some sample waveforms. When TextDataServer is the active Data
Server, the hierarchy displayed in the left panel corresponds to the directory structure
of the sample data, whose root is directory testTextData in the EScope10
directory.
The number of panels is configurable via the property file EScope.properties,
which must reside in the work directory of EScope (i.e. the directory containing the file
EScope10.java). The syntax of the property file is the following:
- num_columns = <tot number of columns> to define
the total number of columns. For each column:
- column_<i>.num_rows = <number of panels in column i>
were i ranges from 1 to the total number of columns.
Panels can be interactively resized by dragging the knobs displayed on the borders of
every panel. Clicking the central mouse button over a vertical knob resizes all the
columns to the same width. Clicking the central mouse button over a horizontal knob
resizes all the panels of the same column to the same height.
Waveforms are added to the currently selected panel, indicated by a red border. To
select a different panel it is necessary to click the right mouse button and click the
popup option Select over the selected panel. Besides the select option,
the popup menu provides the following options:
- All same X scale, which updates the abscissa limits in all displayed
panels to eb equal to those of the currently selected panel
- All same scale, which updates both the abscissa and ordinate
limits in all displayed panels to eb equal to those of the currently selected panel
This application defines three panels. At the left side, when a database is open, the
hierarchical structure is displayed and it is possible to navigate in the tree. When a
node containing a valid signal is clicked, the corresponding waveform is displayed in the
selected panel. To add more than one waveform to the current panel it is necessary to
select more than one node in the tree on the left panel. This is achieved "a la
Windows" by holding the <ctrl> key when selecting tree nodes. Alternatively, a
whole range of node can be defined by holding the <Shift key> when selecting tree
nodes. The top panel displays the current (X, Y) pair when the crosshair display option is
defined.
The File Menu Bar option allows to:
- connect to a Data server. A list of the available servers (based on the property file
definition) is then presented in a popup menu. In this distribution the choice is between
MDSplus (the default) and Text Data Server.
- open an experiment and shot. For MDSplus data server the default experiment and port is edam
and 17615, respectively. For Text Data Server the default database is testTextData
(the shot number in not used). They correspond to databases which are provided by
the installer.
- close the currently open experiment.
- Disconnect from the current data server.
- exit from the application
The Graph Menu Bar option activates a pop-up panel which allows to
- associte a separate color to the graph title, the background and the plot line.
- define whether a border is defined arould the signal plot
- define which algorithm to use for computing tick numbers.
- define the current waveform interaction :
- drag a crosshair over the waveform,
- zoom a portion of the waveform by dragging the mouse to define a rectangle of interest.
When the mouse is released, the enlarged portion of the waveform is displayed
- grab the entire waveform.
A double click restores the default confition, i.e. the whole waveform matted into the
display window.
The changes are applied when either Ok or Apply button is pressed.
To exercise this program the following steps are required:
- If not already running, start a MDSplus data server. On windows, click on start->programs->MDSplus->MDSDataserver.
On Linux, run script start_mdsip.
- Change directory in <source root>/escopes/escope10, where <source
root> is the directory where you copied the source directory
in the CD.
- Include the current directory in your CLASSPATH environmante variable. On Windows this
can be done by changing the CLASSPATH definition in Control Panel/System setting, or by
the command
set CLASSPATH=.;%CLASSPATH%
On Linux (bash shell) this can be done by the command
export CLASSPATH=.:$CLASSPATH
- Compile the java source files with the command
javac *.java
- Compile the sources of the Text Data Server Factory implementation
javac textServerDomain/*.java
- Compile the sources of the MdsData Server Factory implementation
javac mdsServerDomain/*.java
- Run the program with no arguments.
java EScope10
When the edam database is open, valid signals are listed in the SIGNALS.PB
subtree.
View Source