[Previous]
[Next]
Project : SOHO - CDS
Name : QCALIB
Purpose : Compare NIS intensity calibrations
Explanation : The CDS NIS intensity calibration has evolved
with time. This routine allows an easy comparison
of the current calibration with that available at
previous times.
Use : IDL> qcalib,[date]
Inputs : None
Opt. Inputs : date - date for ols calibration
Outputs : plots
Opt. Outputs: None
Keywords : None
Calls : ***
ANYTIM2CAL, GET_EFFICIENCY, GET_UTC, GET_WAVE_EFF, PIX2WAVE, POLY
Common : None
Restrictions: None
Side effects: None
Category : Calibration
Prev. Hist. : None
Written : C D Pike, RAL,
Modified :
Version : Version 1, 13-Sep-99
[Previous]
[Next]
NAME:
QDB
PURPOSE:
Query the LASCO database
CATEGORY:
DATABASE
CALLING SEQUENCE:
Result = QDB()
INPUTS:
None required
OPTIONAL INPUTS:
Query: A string giving the query in boolean form. If not present a menu will be given
DB: A string giving the database to be queried. If not present, 'LASCO' will be used.
OUTPUTS:
This function returns a structure giving the results of the query.
CALLED BY:
carrmapmaker2
PROCEDURE:
This function interfaces with a C routine that uses sybase for querying
existing databases. Input to this pro is either two parameters (database
name and query command) or nothing. If no parameter is passed, the user
is provided with a menu system to form a query command. Output is a
structure containing the selected columns (fields) of the query command
as its fields.
CALLS: ***
ALL_MENUS, GET_COLUMNS, INSERT_BACKSLASH, REPLACE_QUOTE_WITH_ATSIGN
EXAMPLE:
Here are some sample calls (first type .run qdb.pro):
Input:
q= qdb("solwind","select * from transient where date_time > 'Nov 12 1984'")
p= qdb("solwind","select * from transient where date_time > '1984/11/12'")
r= qdb("solwind","select * from transient where importance = 'A'")
s= qdb("solwind","select height,date_time from transient where height > 10")
Note that character strings must be placed in quotation marks such as
'Jul 19 1982' and 'A' and they must be of correct case (upper/lower).
Output for s:
s.height, s.date_time
s.height and s.date_time
Another example using the menu:
Input:
s= qdb()
Output:
s contains fields selected from the menus
MODIFICATION HISTORY:
Written by: Ed Esfandiari, Nov 95
Ed Esfandiari, Feb 96
added code to handle sybase "image" data type. Note that "text" type of
length > 256 is not handled by this pro"
Ed Esfandiari, Nov 96
added code to recognize LAS's OSF and use lascos in rsh.
Ed Esfandiari, Oct 01
Changed code to eliminate the use of rsh. Instead of using the
sybsrv account on corona, we are now using a copy of db_query_24hr
that I have placed in $NRL_LIB/lasco/C/lib.
@(#)qdb.pro 1.2 03/31/99 LASCO IDL LIBRARY
[Previous]
[Next]
Project : SOHO - CDS
Name : QL_BSCALE()
Purpose : Scales VDS data for display with QL_COLTABLE color table.
Explanation : This procedure scales simulated VDS data for display with the
color table loaded by the routine TP_COLTABLE. The array is
scaled logarithmically, so that values in the approximate range
0-41 are in the lower third of the color table (blue), 41-410
in the middle third (orange) and 410-4095 in the upper third
(white). Values of 4096 and above are displayed as red pixels.
Use : TV, QL_BSCALE(ARRAY)
EXPTV, QL_BSCALE(ARRAY), /NOSCALE
Inputs : ARRAY = Simulated VDS data array from VDS_DUMMY, or
equivalent.
Opt. Inputs : None.
Outputs : The result of the function is a logarithmically scaled byte
array with the values matched to the number of colors for the
currently selected graphics device.
Opt. Outputs: None.
Keywords : TOP = The maximum value of the scaled image array, as used
by BSCALE. The default is !D.N_COLORS-1.
Calls : ***
BSCALE
CALLED BY:
DSPEXP
Common : None.
Restrictions: None.
Side effects: None.
Category : Planning, Technical.
Prev. Hist. : None.
Written : William Thompson, GSFC, 23 September 1993.
Modified : Version 1, William Thompson, GSFC, 23 September 1993.
Version : Version 1, 23 September 1993.
[Previous]
[Next]
Project : SOHO - CDS
Name : QL_DIMENSIONS
Purpose : (Obsolete -- use(s) gt_dimension)
Explanation : Based on the information in the QuickLook Data Stucture,
an IDL structure describing the dimensionality of the
detector data is returned with the following tags:
WAVELNTH : TRUE if the spectral dimension is present
and non-singular
SOLAR_X: TRUE if the SOLAR_X dimension is present
and non-singular
SOLAR_Y: TRUE if the SOLAR_Y dimension is present
and non-singular
DEL_TIME: TRUE if the DEL_TIME dimension is present
and non-singular.
NDIMS: The number of non-singular dimensions
There is also a tag for each of the dimensions that
describes the size of the dimension, named SWAVELNTH,
SSOLAR_X, SSOLAR_Y, SDEL_TIME.
Use : info = QL_DIMENSIONS(QLDS)
Inputs : QLDS: QuickLook Data Structure, see CDS software note #9
Opt. Inputs : None.
Outputs : Returns a structure with information on the dimensionality
of the data windows in the QLDS
Opt. Outputs: None.
Keywords : NOCHECK : Set to avoid checking the validity of the QLDS
Calls : ***
GT_DIMENSION
CALLED BY:
EXPSLICE, NDSPSPEC, NEXPOSURES, WAVESIZE, ZSIZE
Common : None.
Restrictions: QLDS should conform to CDS software not #9
Side effects: None known.
Category : CDS QuickLook
Prev. Hist. : None.
Written : Stein Vidar Hagfors Haugan, 20-Feb-1995
Modified : Version 2, SVHH, 21-Aug-1995
QL_SIZE modified to save memory.
Version 3, SVHH, 15 August 1996
Obsolete -- using gt_dimension instead.
Version : 2
[Previous]
[Next]
NAME: QL_GETLASCODIR
PURPOSE:
Tells user which directory contains a given days worth of Quick Look
LASCO data for a particular
camera.
CALLING SEQUENCE:
dir=ql_getlascodir(1,6,1996,'C1')
or
dir=ql_getlascodir(1,6,96,'c1')
INPUTS:
month: an integer betwen 1 (January) and 12 (December)
day: day of the month
year: either the last two digits of the year (e.g. 96) or all 4 digits
camera: a two-character string describing which camera is desired.
Acceptable choices for camera are: "c1","c2","c3", or "c4"
camera is case-insensitive
KEYWORDS:
SILENT: Suppress output of all error messages except lower-level
IDL or system messages.
OUTPUTS:
A string specifiying the directory in which desired images can be found.
AUTHOR: Scott Hawley, NRL, June 27, 1996
MODIFIED: Nathan Rich 960923 shortened to look at cplex1
instead of jukebox
Ed Esfandiari 990126 Fixed code for Y2K problem.
SCCS variables for IDL use
@(#)ql_getlascodir.pro 1.5 05/14/97 :NRL Solar Physics
CALLED BY
EDITFRAME, GET_SUN_CENTER [1]
[Previous]
[Next]
Project : SOHO - CDS
Name : QL_MENU
Purpose : Executive menu for QL software
Explanation : Enables reading of a new CDS FITS file.
Use : QL_MENU
Inputs : None.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : None.
Calls : ***
CDSPICKFILE, QL_MENU_EVENT, READCDSFITS, TRIM, XMANAGER, XREGISTERED, dsp_menu
Common : None.
Restrictions: ..
Side effects: ..
Category : CDS, QL, DISPLAY
Prev. Hist. : None.
Written : Stein Vidar Hagfors Haugan, March 16 1994
Modified : PB, 27-Feb-1996, Changed the default file path
PB, 3-MAr-1996, Added keyword /fsort in call to
cdspickfile
Version : 1 (very experimental)
[Previous]
[Next]
Project : SOHO - CDS
Name : QL_RD_LLIST
Purpose : Read a CDS line list into the returned structure.
Explanation : Reads a line list file into the structure required by the
technical planning procedure. The line list file is assumed
to have the following contents:
Line 1 - header text
Line 2 - blank
Line 2 - line identification, wavelength, order, band, pixel
.
.
.
Line N - ditto
Use : IDL> ql_rd_llist, in_file [, header=header]
Inputs : in-file - the name of the file with the line list.
Opt. Inputs : None
Outputs : None
Opt. Outputs: header - the header line from the line-list file
Keywords : None
Calls : ***
Bell, CDSNOTIFY, RD_LINE_LIST, STR2ARR [1], STR2ARR [2], VALID_NUM [1]
VALID_NUM [2], VALID_NUM [3]
CALLED BY:
GDSPSPEC, NDSPSPEC
Restrictions:
Side effects: None.
Category : QuickLook.
Prev. Hist. : Taken from C D Pike's RD_LINE_LIST, V 3, 26-Nov 1993
Written : C D Pike, 14-May-1993
Modified : New input file format. CDP 17-Nov-1993
Limit number of lines to 20. CDP 26-Nov-93
SVHH, Version 1, 7-June-1994
Adapted for use with QL software (skipped common
blocks, flash_info calls etc.)
Changed limit to 50 lines.
Version : Version 1, 7-June-1994
[Previous]
[Next]
Project : SOHO - CDS
Name : QL_SIZE
Purpose : Avoid disappearance of singular trailing dimensions
Explanation : If an array with singular trailing dimensions, e.g.,
fltarr(10,1,1) is passed to SIZE(), the singular
dimensions are obliterated. Given the true number of
dimensions, this routine returns the expected value
of SIZE(), e.g.:
PRINT,SIZE(fltarr(10,1,1))
IDL> print,size(fltarr(10,1,1))
1 10 4 10
but:
PRINT,QL_SIZE(size(fltarr(10,1,1)),3)
3 10 1 1 4 10
Use : SZ = QL_SIZE(SIZE(array_expr),NDIMS)
Inputs : array_expr : Array expression (wow!)
NDIMS : The known number of dimensions
Opt. Inputs : None.
Outputs : Return value has same meaning as with the builtin SIZE()
Opt. Outputs: None.
Keywords : None.
Calls : None.
CALLED BY:
GT_DIMENSION, NDSPSPEC, STORESUMWND, STORE_WND
Common : None.
Restrictions: None.
Side effects: None known.
Category : CDS QuickLook
Prev. Hist. : None.
Written : Stein Vidar Hagfors Haugan, 20-Feb-1995
Modified : Version 2, SVHH, 21-Aug-1995
Now it takes the SIZE() of an array expression
as the first argument. This is in order to
avoid memory overhead with expressions like
QL_SIZE(QLDS.DETDATA), which would cause copying
the whole array...
Version : 2
[Previous]
[Next]
Project : SOHO - CDS
Name : QLDS_CHECKIN
Purpose : Swap the specified QLDS into the cache (QLDS in QLSAVE).
Explanation : The CDS QuickLook memory management system is designed to
minimize the time spent by display routines fetching their
data. This is done by having a common block (QLSAVE) that
functions as a cache memory, storing the most recently used
QuckLook Data Structure. Other QLDS'es are stored on handles.
Typically an event routine has the QLSAVE common block, and
would call QLDS_CHECKIN before accessing the QLDS in the
common block. Needles memory-swapping is avoided by
QLDS_CHECKIN by first checking whether the correct QLDS is
there already.
Use : QLDS_CHECKIN,QL_NO
Inputs : QL_NO : The unique number assigned to a QLDS by QLMGR,
on the tag "QL_NO" in the structure.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : WIDGET : Set to a widget base ID that has the QL_NO as
UVALUE. QL_NO need not be supplied explicitly
in this case.
TEST : Set to avoid a crash if the QLDS could not be
found. Used by e.g. QLDS_INVENTORY
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], QLDS_STORE, TRIM
CALLED BY:
CWQ_CUBE, CWQ_IMAGE [1], CWQ_SPECTR [1], DSPEXP, DSPWAV, DSP_AUX, DSP_CUBE, DSP_WAV
GDSPSPEC, NDSPSPEC, QLDS_FETCH, QLDS_INVENTORY, QLDS_MANAGED, XCDS_ANALYSIS
cwq_image [2], cwq_spectr [2], dsp_menu
Common : QLSAVE: QLDS : The cache slot. The specified QLDS is
stored in this variable (if found).
SAVED : A status variable used in IDL 3.0 to
signify that the QLDS has already been stored
on its storage base.
QLMGR: See QLMGR
Restrictions: Requires that the QLDS actually can be found
Side effects:
Category : QuickLook, Management
Prev. Hist. : None.
Written : Stein Vidar Hagfors Haugan, ItA/UiO, 11-June-1994
Modified : SVHH, 2-March-1995, Removed some CDSNOTIFY calls
Version 2, SVHH, 21 May 1996
Improved handling of TEST keyword.
Version 3, SVHH, 15 July 1997
Using handles instead of widget bases to store qlds
(immune against e.g., xkill,/all). Also removed some
old-version stuff (IDL 3.0!).
Version : 3, 15 July 1997
[Previous]
[Next]
Project : SOHO - CDS
Name : QLDS_FETCH
Purpose : Fetch the specified QLDS into a named variable
Explanation : The CDS QuickLook memory management system is designed
to minimize the time spent by display routines fetching
their data. This is done by having a common block (QLSAVE)
that functions as a cache memory, storing the most recently
used QuckLook Data Structure. Other QLDS'es are stored
as UVALUES of non-realized WIDGET_BASEs.
In the case of a crash of the display routines, the
data supplied in the call may appear lost under IDL
version 3.1 or later. This is due to the fact that
setting a UVALUE with the NO_COPY keyword actually
swaps the memory dynamically, leaving the "source
variable" undefined! The data are, however, still
stored as user values of unrealized widget bases.
Use QLDS_INVENTORY to get a display of the structure
of each stored QLDS, and use the value of the tag
QL_NO to fetch back the QLDS into a named variable
of your choice.
Use : QLDS_FETCH,QL_NO,NAMED_VARIABLE
Inputs : QL_NO : The unique number assigned to a QLDS by QLMGR,
on the tag "QL_NO" in the structure.
Opt. Inputs : None.
Outputs : NAMED_VARIABLE : Any such, to receive the QLDS
Opt. Outputs: None.
Keywords : TEST : Set to avoid crash when the QLDS is not available.
Upon return, the destination variable will be
untouched.
Calls : ***
ASSIGN_NOCOPY, QLDS_CHECKIN
CALLED BY:
DSP_WAV, XCDS_ANALYSIS
Common : QLSAVE: See QLDS_CHECKIN
Restrictions: Requires that the QLDS actually can be found
Side effects: None.
Category : QuickLook, Management
Prev. Hist. : None.
Written : Stein Vidar Hagfors Haugan, ItA/UiO, 11-June-1994
Modified : SVHH, 2-March-1995. Added !DEBUG test in ON_error handling.
Version 2, SVHH, 21 May 1996
Added /TEST keyword.
Version : 1.1, 2-March-1995
[Previous]
[Next]
Project : SOHO - CDS
Name : QLDS_INVENTORY
Purpose : Display all QLDS'es that are stored in the QLMGR scheme.
Explanation : Looks for all possible stored QLDS'es and makes a call
to dsp_struct for each one.
Use : QLDS_INVENTORY
Inputs : None.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : None.
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DSP_STRUCT, QLDS_CHECKIN
Common : QLSAVE : See QLDS_CHECKIN
QLMGR : See QLMGR
Restrictions: None.
Side effects: None.
Category : QuickLook, Management
Prev. Hist. : None.
Written : Stein Vidar Hagfors Haugan, ItA/UiO, 11-June-1994
Modified : Never.
Version : 1, 11-June-1994
[Previous]
[Next]
Project : SOHO - CDS
Name : QLDS_MANAGED()
Purpose : Returns 1 if the supplied QLDS is already managed
Explanation : This routine is useful to detect whether a CDS Quick Look
program has been called by a program that is not using the
Quick Look memory management system (see e.g., QLDS_CHECKIN).
If a QLDS is *not* managed, a quick look program should
(in general) not return until it can return the QLDS.
Use : if not qlds_managed(qlds) then ....
Inputs : QLDS : QLDS
Opt. Inputs : None.
Outputs : Returns 1 if supplied QLDS is already managed, i.e., available
though QLDS_CHECKIN.
Opt. Outputs: None.
Keywords : None.
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], QLDS_CHECKIN
CALLED BY:
DSP_AUX, DSP_CUBE, XCDS_ANALYSIS
Common : QLSAVE : See QLDS_CHECKIN
Restrictions: None.
Side effects: None known
Category : QuickLook, Management
Prev. Hist. : None.
Written : Stein Vidar H. Haugan, UiO, 19 August 1996
Modified : Not yet.
Version : 1, 19 August 1996
[Previous]
[Next]
Project : SOHO - CDS
Name : QLDS_REPORT
Purpose : Make a connection between the Widget ID and a managed QLDS
Explanation : The CDS QuickLook memory management system is designed
to minimize the time spent by display routines fetching
their data. This is done by having a common block (QLSAVE)
that functions as a cache memory, storing the most recently
used QuickLook Data Structure. Other QLDS'es are stored
on handles.
Typically an event routine has the QLSAVE common block,
and would call QLDS_CHECKIN before accessing the QLDS
in the common block.
The main routine needs to setup a connection to the
specific QLDS, so that the event routine knows which
one to ask for. This is normally done by QLDS_REPORT,
which sets the UVALUE of a widget base to the QL_NO that
is otherwise used in the call to QLDS_CHECKIN.
Due to the frequent use of this scheme, it is also
possible to call QLDS_CHECKIN with just the widget
ID of the base carrying the QL_NO, through the
keyword WIDGET.
Use : QLDS_REPORT,WIDGET_ID,QLDS
Inputs : WIDGET_ID : The widget whose UVALUE should be used.
This parameter may be left undefined when e.g.,
using the memory management system outside of
widget programs.
QLDS : Standard CDS QLDS.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : STORE : If this is set, the QLDS is actually put into
the storage scheme. If not set, it is assumed
that it is already accessible through a call
to QLDS_CHECKIN.
Calls : ***
QLDS_STORE, QLMGR, XALIVE
CALLED BY:
DSPEXP, DSPWAV, DSP_AUX, DSP_CUBE, DSP_WAV, GDSPSPEC, NDSPSPEC, PICKFITS, XCDS_ANALYSIS
dsp_menu
Common : QLSAVE: See QLDS_CHECKIN
QLMGR : See QLMGR
Restrictions: QLDS must be real.
Side effects: In IDL version 3.1 or later, the supplied QLDS "disappears",
but may be retrieved by QLDS_FETCH.
Category : QuickLook, Management
Prev. Hist. : None.
Written : Stein Vidar Hagfors Haugan, ItA/UiO, 11-June-1994
Modified : SVHH, 2-March-1995, Removed CDSNOTIFY calls
Version: 2, SVHH, 30 September 1996
Using since_version to determine /no_copy validity.
Version 3, SVHH, 15 July 1997
Using handles instead of widget bases for storage.
Version : 3, 15 July 1997
[Previous]
[Next]
Project : SOHO - CDS
Name : QLDS_STORE
Purpose : Store any QLDS in the cache on it's storage base.
Explanation : The CDS QuickLook memory management system is designed to
minimize the time spent by display routines fetching their
data. This is done by having a common block (QLSAVE) that
functions as a cache memory, storing the most recently used
QuckLook Data Structure. Other QLDS'es are stored on handles.
If there is a QLDS stored in the cache and if it is not
already been saved, we make sure that there is a storage
handle for it, and stores the QLDS there.
Use : QLDS_STORE
Inputs : None.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : None.
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3]
CALLED BY:
QLDS_CHECKIN, QLDS_REPORT
Common : QLSAVE: See QLDS_CHECKIN
QLMGR: See QLMGR
Restrictions: None.
Side effects: None.
Category : QuickLook, Management
Prev. Hist. : None.
Written : Stein Vidar Hagfors Haugan, ItA/UiO, 11-June-1994
Modified : SVHH, 2-March-1995, Commented out the CDSNOTIFY calls
Version 2, SVHH, 15 July 1997
Using handles to store data instead of widget bases.
Version : 2, 15 July 1997
[Previous]
[Next]
Project : SOHO - CDS
Name : QLDS_STORE_CURRENT
Purpose : Store any QLDS in the cache on it's storage handle.
Explanation : The CDS QuickLook memory management system is designed to
minimize the time spent by display routines fetching their
data. This is done by having a common block (QLSAVE) that
functions as a cache memory, storing the most recently used
QuckLook Data Structure. Other QLDS'es are stored on handles.
If there is a QLDS stored in the cache and if it is not
already been saved, we make sure that there is a storage
handle for it, and stores the QLDS there.
Use : QLDS_STORE_CURRENT
Inputs : None.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : None.
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3]
Common : QLSAVE: See QLDS_CHECKIN
QLMGR: See QLMGR
Restrictions: None.
Side effects: None.
Category : QuickLook, Management
Prev. Hist. : None.
Written : Stein Vidar Hagfors Haugan, ItA/UiO, 11-June-1994
Modified : SVHH, 2-March-1995, Removed CDSNOTIFY calls
Version 2, SVHH, 15 July 1997
Using handles instead of widget bases for storage
(immune against xkill and /all that..).
Version : 2, 15 July 1997
[Previous]
[Next]
Project : SOHO - CDS
Name : QLHELP
Purpose : Widget to select help topics related to the QL Software.
Explanation : Create a widget that lists and displays the help text explaining
how to use the various features available in the CDS QUICKLOOK
Software. A brief description of the data structure is also included.
Use : QLHELP, [GROUP=GROUP, MODULE=MODULE]
QLHELP,'DSPWAV'
Inputs : None.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : GROUP = The widget ID of a calling widget. Destroying that
widget will kill this widget.
Calls : ***
QLHELP_EVENT, XMANAGER, XREGISTERED
Common : None.
Restrictions: None.
Side effects: None.
Category : Display, Data analysis, Help utility
Prev. Hist. : Based on the CDS PLANHELP.PRO routine written by
Elaine Einfalt, GSFC (HSTX), April 1994
Written : Paal Brekke, ITA, July 7 1994
Modified :
Version : Version 1, 7 July 1994
[Previous]
[Next]
Project : SOHO - CDS
Name : QLMGR
Purpose : Management of CDS QuickLook data structure variables.
Explanation : In order to manage the windows displaying information
concerning a specific CDS QL data structure, all QL data
structures (QLDSs) are given an ID with a registration
number. The registration number serves as an index to the
array QL_DATA, which contains a structure for each registered
QLDS.
This structure contains the widget IDs of each base window
that may be generated for a specific QLDS, so that, for
instance, the position of any earlier copy of a window that is
to be created may be retrieved, and used to position the new
window at the same screen offset.
To avoid confusion when IDL's SAVE/RESTORE ; commands are used
to store QLDSs between sessions, the QL_ID variable in common
block QLMGR is set to ; the value of SYSTIME(1) upon
initialization of QLMGR, ; and every QLDS' QL_ID are set to
this value upon ; registration.
If the QLDS's QL_ID is identical to the one in the QLMGR
common block, the QLDS is taken as already registered.
QLMGR will also check as far as possible whether the supplied
parameter is a valid QLDS, and it is recommended that this
routine be used in every procedure that needs to be sure of
this, by using the optional output parameter VALID
Use : QLMGR, QL_data_struct
Inputs : QL_data_struct :
A CDS QL Data structure, as described in
"CDS QL data format", version 1.1
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: VALID: If supplied, it is set to TRUE (NOT 0) if
the supplied QL_data_struct is a valid
QLDS
Keywords : INIT: When set, the QLMGR is reset, invalidating
any previous registration of QLDSs.
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3]
CALLED BY:
APPLY_CDS_ADEF, CDS_FILL_MISSING, CDS_READ_MISSING, CDS_REPAIR_TOP
CDS_SAVE_MISSING, CDS_VEL_SLICE [2], COPY_QLDS, DELETE_QLDS, DETDATA, DETDESC
DSPEXP, DSPSPEC, DSPWAV, DSP_AUX, DSP_INFO, DSP_MOVIE, DSP_POINT, DSP_WAV, EXPSLICE
FIT_CDS_QL, GDSPSPEC, GT_BIMAGE, GT_BINX, GT_CDS_QL, GT_CDS_TIME, GT_CDS_WINDOW
GT_DATA_UNITS, GT_DETECTOR, GT_DETY, GT_DIMENSION, GT_EXPTIME [2], GT_HDR, GT_IIMAGE
GT_LAMBDA, GT_MIMAGE, GT_MIRRPOS, GT_NUMEXP, GT_NUMWIN, GT_POINT, GT_SCANP, GT_SCANT
GT_SCANX, GT_SCANY, GT_SLITNUM, GT_SLITPOS, GT_SOLARX, GT_SOLARY, GT_SOLAR_XY
GT_SPECTRUM, GT_START, GT_VALID, GT_WINDATA, GT_WINDESC, GT_WINDOW, GT_WINSIZE
GT_WLABEL, GT_WLIMITS, GT_WNUM, MK_CDS_ADEF_STC, MK_CDS_ANALYSIS, MK_CDS_FITS
MK_CDS_IMAP, MK_CDS_SMAP, NDSPSPEC, NEXPOSURES, NIS_MRGDATA, PICKFITS, PLOT_DELTAT
PLOT_RASTER, PLOT_SPEC [2], QLDS_REPORT, READCALFITS, READCDSFITS, READSUM2CDS
RESTORE_QLDS, WAVESIZE, WINDOWNO, WMAX, XCDS_ANALYSIS, XCDS_COSMIC, ZSIZE, dsp_menu
gis_cqlds, gt_exptime [1]
Common : QLMGR:
QL_ID: The identification of the current
QLMGR session. Set to SYSTIME(1)
upon initialization of QLMGR
QL_DATA:An array of structures containing
wiget base ID's of windows with
information concerning a specific
QLDS
QLSAVE: QLDS : Cache for display routines
SAVED: Set to 1 if current QLDS has been
saved on a storage base.
Restrictions: None.
Side effects: Alters the QL_ID and QL_NO tags of the supplied
QLDS to reflect the current QLMGR's registration.
Category : Data_Handling, CDS, QuickLook
Prev. Hist. : None.
Written : Stein Vidar Hagfors Haugan, 7 October 1993
Modified : SVHH, 8 October 1993 -
Fixed bug: VALID is now set to NOT 0 to
handle 'if NOT valid ...' constructs in
caller program.
SVHH, 19 October 1993
Additional tags in the QLINFO structure.
SVHH, 20 November 1993
Additional tags.
SVHH, Version 2, 4-October-1995
Additional tags + renamed some tags.
Checking of ALL tags dropped.
Version 3, SVHH, 22-February-1996
Added tag "HDRTEXT"
Version 4, SVHH, 15 August 1996
Compatible with both new and old storage system
Version 5, SVHH, 15 July 1997
storagebase => storage_h
Version 6, DMZ, 8 June 1999
made VALID a byte variable
Version : 6
[Previous]
[Next]
Project : SOHO - CDS
Name : QLMGR_NEXT
Purpose : Return QL_NO of next QLDS (No. of registered QLDSes)
Explanation : Returns the number of QL_DATA elements in the QLMGR
COMMON block.
Use : Nreg = QLMGR_NEXT()
Inputs : None.
Opt. Inputs : None.
Outputs : Long.
Opt. Outputs: None.
Keywords : None.
Calls : None.
Common : QLMGR: See QLMGR
Restrictions: None.
Side effects: None.
Category : QuickLook, Management
Prev. Hist. : None.
Written : Stein Vidar Hagfors Haugan, UiO, 21 May 1996
Modified : Never.
Version : 1, 21 May 1996
[Previous]
[Next]
Project : SOHO - CDS
Name : QLMGRCLEAN
Purpose : Clean out a TopLevelBase widget ID from the QLMGR data.
Explanation : In order to manage the windows displaying information
concerning a specific CDS QL data structure, all QL
data structures (QLDSs) are given an ID with a
registration number. The registration number serves
as an index to the array QL_DATA, which contains
a structure for each registered QLDS.
This structure contains the widget IDs of each base window
that may be generated for a specific QLDS, so that, for
instance, the position of any earlier copy of a window
that is to be created may be retrieved, and used to
position the new window at the same screen offset.
In order to avoid killing unsuspecting widgets
having been assigned the widget ID of an earlier
(but destroyed) copy of another widget window,
each widget should make sure they don't store
their widget base ID after having been killed
(i. e., after that ID number has been freed).
Use : QLMGRCLEAN,DYING_WIDGET_ID
Inputs : DYING_WIDGET_ID
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : None.
Calls : TAG_NAMES, EXECUTE
Common : QLMGR:
QL_ID: The identification of the current
QLMGR session. Set to SYSTIME(1)
upon initialization of QLMGR
QL_DATA:An array of structures containing
wiget base ID's of windows with
information concerning a specific
QLDS
Restrictions: None.
Side effects: None.
Category : Window_handling, CDS, QuickLook
Prev. Hist. : None.
Written : Stein Vidar Hagfors Haugan, 29 October 1993
Modified : SVHH, November 1993 - It's now generic in checking
all tags in the QL_DATA structures.
Version : 1.02
[Previous]
[Next]
Project : SOHO - CDS
Name :
QMCLOSE
Purpose :
Close a QMS plot file and reset the graphics device.
Explanation :
The currently opened QMS plot file is closed, and the graphics device
is reset to what was used previously.
Use :
QMCLOSE
QMS ;Open QMS plot file
... plotting commands ... ;Create plot
QMPLOT ;Close & plot file, reset to prev. dev.
or
QMCLOSE ;Close w/o printing, " " " "
Inputs :
None.
Opt. Inputs :
None.
Outputs :
A message is printed to the screen.
Opt. Outputs:
None.
Keywords :
None.
Calls : ***
SETPLOT [1], SETPLOT [2], TRIM
Common :
QMS_FILE which contains QMS_FILENAME, the name of the plotting file,
and LAST_DEVICE, which is the name of the previous graphics device.
Restrictions:
In general, the SERTS graphics devices routines use the special system
variables !BCOLOR and !ASPECT. These system variables are defined in
the procedure DEVICELIB. It is suggested that the command DEVICELIB be
placed in the user's IDL_STARTUP file.
Side effects:
The previous plotting device is reset.
Category :
Utilities, Devices.
Prev. Hist. :
William Thompson, Feb. 1991, from PSCLOSE
Written :
William Thompson, GSFC, February 1991.
Modified :
Version 1, William Thompson, GSFC, 27 April 1993.
Incorporated into CDS library.
Version :
Version 1, 27 April 1993.
[Previous]
[Next]
QMENU puts up a one-column scrolling menu on an X-window terminal.
DESCRIPTION:
QMENU puts up a one-column scrolling menu on an X-window terminal.
This routine uses a list widget for the menu.
It replaces BIGWMENU which did not scroll.
CALLING SEQUENCE:
sel_index = qmenu( strings, title=[...], init=[...] )
ARGUMENTS (I=input, O=output, []=optional)
strings I 1-D arr str A 1-D array of option strings
(and possibly a title too).
title [I] keyword int Index of the element in STRINGS
which will be the title.
init [I] keyword int Index of the element in STRINGS
which will be the default choice.
of the menu window.
sel_index O scalar int Index of the selected option.
WARNINGS:
1. A value of -1 is returned in the event of any error-conditions.
CALLED BY:
EIT_DISPLAY
EXAMPLE:
sel_index = qmenu(['title','option 1','option 2'],title=0)
#
COMMON BLOCKS: none.
LIBRARY CALLS: none.
PROCEDURE:
If this routine is invoked from a non-X-window terminal, then put
out a message and exit. Check if a valid argument was supplied
for STRINGS, if not then put out a message and exit. Determine
what will be the title of the menu (if any) and what will be the
options.
Calculate an appropriate X-size for the menu window. This does
not currently work due to the List Widget's insistance on
setting the width based on the items in the list, w/out concern
for the title's width.
Put up the menu window, then monitor and respond to mouse activity.
Exit when a mouse button is pressed and the option is not blank.
REVISION HISTORY:
Created 23-Dec-1992 Peter Kryszak:
parameter checking from Ewing's BIGQMENU
use of IDL's scrolling list widget from Turpie's WDGM
Prgmr SPR Date Reason
-------- ------ ---------- -------------------------------------------
Ewing 10619 Feb 25 93 Supply a left margin.
Turpie unknwn Mar 19 93 Added large nonproportional font,
fixed inconsistencies in margins.
SPR 11127 06 Jul 1993 IDL for Windows compatability. J. Newmark
.TITLE
Routine QMENU
[Previous]
[Next]
Project : SOHO - CDS
Name :
QMPLOT
Purpose :
Print a QMS plot file and reset the graphics device.
Explanation :
Sends a QMS plot file generated by IDL to the QMS laser printer. The
default queue is defined by the logical name/environment variable
LASER. The graphics device is reset to what was used previously.
Use :
QMPLOT [, FILE ] [, /DELETE ]
QMS ;Open QMS plot file
... plotting commands ... ;Create plot
QMPLOT ;Close & plot file, reset to prev. dev.
or
QMCLOSE ;Close w/o printing, " " " "
Inputs :
None required.
Opt. Inputs :
The default filename is either taken from the last call to the QMS
routine, or is "idl.bit".
A filename other than the default can be passed in one of three ways:
Explicitly: e.g. QMPLOT,'graph.bit'
By number (VMS) e.g. QMPLOT,3 for "idl.bit;3"
All versions (VMS) e.g. QMPLOT,'*' for "idl.bit;*"
All ".bit" files (UNIX) e.g. QMPLOT,'*' for "*.bit"
Outputs :
A message is printed to the screen.
Opt. Outputs:
None.
Keywords :
DELETE = If set, then file is deleted after printing.
QUEUE = Name of printer queue to be used in printing the file.
COMMAND = (Unix only.) Command to be used to send the plot file to the
printer. If not passed, then the environment variable
PRINTCOM is checked. If neither of these is set, then the
standard command "lpr" is used.
Calls :
SETPLOT [1], SETPLOT [2]
Common :
QMS_FILE which contains QMS_FILENAME, the name of the plotting file,
and LAST_DEVICE, which is the name of the previous graphics device.
Restrictions:
The requested plot file must exist.
In general, the SERTS graphics devices routines use the special system
variables !BCOLOR and !ASPECT. These system variables are defined in
the procedure DEVICELIB. It is suggested that the command DEVICELIB be
placed in the user's IDL_STARTUP file.
Side effects:
The plot file is queued on the printer LASER. Also, any files
"idl.bit" that may be open will be closed. The previous plotting
device is reset.
Category :
Utilities, Devices.
Prev. Hist. :
W.T.T., February, 1991, from PSPLOT.
W.T.T., May 1991, extended environment variable LASER to UNIX.
W.T.T., Jul 1992, added check for QMS_FILENAME in common block.
Written :
William Thompson, GSFC, February 1991.
Modified :
Version 1, William Thompson, GSFC, 27 April 1993.
Incorporated into CDS library.
Version 2, William Thompson, GSFC, 3 June 1993.
Fixed bug with ENDIF/ENDELSE statements.
Version 3, William Thompson, GSFC, 8 June 1994
Added keyword COMMAND
Version :
Version 3, 8 June 1994
[Previous]
[Next]
Project : SOHO - CDS
Name :
QMS
Purpose :
Sets graphics device to QMS Quikplot file.
Explanation :
This procedure sets the system variables needed to write QMS plot
files. The plot is done in landscape mode, using most of the paper.
SETPLOT is called to save and set the system variables, and DEVICE is
called to set the plot window size and orientation, and to open the
file.
If the plot file is already open, then calling QMS without any
parameters or keywords allows the user to write into the already opened
file, in the same mode as before.
Use :
QMS [, FILENAME ]
QMS ;Open QMS plot file
... plotting commands ... ;Create plot
QMPLOT ;Close & plot file, reset to prev. dev.
or
QMCLOSE ;Close w/o printing, " " " "
Inputs :
None required.
Opt. Inputs :
FILENAME - Name of QMS plot file to be opened. If not passed, and no
filename was previously passed, "idl.bit" is assumed.
Outputs :
A message is printed to the screen.
Opt. Outputs:
None.
Keywords :
LANDSCAPE = If set, then plotting is done in LANDSCAPE mode (default).
PORTRAIT = If set, then plotting is done in PORTRAIT mode. PORTRAIT
takes precedent over LANDSCAPE.
Calls : ***
FORM_FILENAME [1], FORM_FILENAME [2], SETPLOT [1], SETPLOT [2]
Common :
QMS_FILE which contains QMS_FILENAME, the name of the plotting file,
and LAST_DEVICE, which is the name of the previous graphics device.
Also calls SETPLOT, which uses common block PLOTFILE.
Restrictions:
Only the routines QMPLOT and QMCLOSE can be used to close the QMS plot
file. It is best if the routines TEK, REGIS, etc. (i.e. those
routines that use SETPLOT) are used to change the plotting device.
In general, the SERTS graphics devices routines use the special system
variables !BCOLOR and !ASPECT. These system variables are defined in
the procedure DEVICELIB. It is suggested that the command DEVICELIB be
placed in the user's IDL_STARTUP file.
Side effects:
If the FILENAME parameter, or either the LANDSCAPE or PORTRAIT
keywords, is passed then DEVICE is called to open a new file. Any
previously opened QMS plot file would be closed.
If a new file is opened, then the DEVICE routine is called with the
/LANDSCAPE or /PORTRAIT switch to set the size and orientation of the
plot window.
If not the first time this routine is called, then system variables
that affect plotting are reset to previous values. If it is the first
time the routine is called, !FANCY is set to 1.
In UNIX, if a new file is opened with the same name as an existing
file, then the old file is lost.
Category :
Utilities, Devices.
Prev. Hist. :
W.T.T., Feb. 1991, from PS.PRO.
Written :
William Thompson, GSFC, February 1991.
Modified :
Version 1, William Thompson, GSFC, 27 April 1993.
Incorporated into CDS library.
Version :
Version 1, 27 April 1993.
[Previous]
[Next]
Project : SOHO - CDS
Name : QTILT()
Purpose : Get the NIS tilt for a given wavelength.
Category : Calibration, NIS, Coordinates
Explanation : Looks up the NIS tilt calibration in the database for a given
spectrum and date combination and calculates the tilt for a
specific wavelength.
Syntax : PRINT, QTILTCAL( WAVE, [REQ_DATE])
Examples : IDL> print, qtilt(584.3)
Inputs : WAVE - the wavelength of the tilt required
Opt. Inputs : REQ_DATE = The date to use in searching for a wavelength
calibration.
Outputs : Returns tilt in pixels per pixel along slit.
Opt. Outputs: None.
Keywords : NONE
Calls : ***
ANYTIM2UTC [1], ANYTIM2UTC [2], GET_TILTCAL, GET_UTC, POLY, WAVE2PIX
Common : None.
Restrictions: None.
Side effects: None.
Prev. Hist. :
History : Version 1, 7-Jun-1999, CDP, RAL
[Previous]
[Next]
PROJECT:
SOHO - CDS/SUMER
NAME:
QUERY_ANOMALY
PURPOSE:
Query Anomaly rrcords and write result to a file
CATEGORY:
Anomaly report
SYNTAX:
query_anomaly, tstart, tend
INPUTS:
TSTART -
TEND -
OPTIONAL INPUTS:
None.
OUTPUTS:
None.
OPTIONAL OUTPUTS:
None.
KEYWORDS:
FILE - Name of output file to which the anomaly contents are written
OPEN - Set this keyword to search for "opened" anomaly reports
CLOSED - Set this keyword to search for anomaly reports that
have been "closed"
ID - ID of anomaly to be searched
DIRECTORY - Directory where FILE is written
CALLS: ***
ANYTIM2UTC [1], ANYTIM2UTC [2], ARR2STR [1], Arr2Str [2], CHK_DIR [1], CHK_DIR [2]
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], GET_ANOMALY, LIST_ANOMALY, TAI2UTC
UTC2TAI, concat_dir [4]
COMMON:
None.
RESTRICTIONS:
None.
SIDE EFFECTS:
None.
HISTORY:
Version 1, January 31, 1996, Liyun Wang, GSFC/ARC. Written
Version 2, January 23, 1997, Liyun Wang, NASA/GSFC
Added DIRECTORY keyword
CONTACT:
Liyun Wang, GSFC/ARC (Liyun.Wang.1@gsfc.nasa.gov)
[Previous]
[Next]
NAME:
quick_hkplot
PURPOSE:
To read a list of mnemonics and plot them
METHOD:
If no start/end date/times are passed in, then the current time is
used and the default window is 6 hours.
SAMPLE CALLING SEQUENCES:
quick_hkplot, style=1
quick_hkplot, '14-jun 6:30','14-jun 8:00',style=-10,/hc
quick_hkplot, style=-1
quick_hkplot, style=0, mnem=['mipwa', 'mipwb'], yrange=[1, 1.2]
quick_hkplot, sttim, entim, win=win, style=style, mnem=mnem
quick_hkplot, style=1, /contin
quick_hkplot, '30-nov-95 20:12',style=1, /text, outfil='temps.txt'
quick_hkplot, /cont, mnem='ivcmp5', wait=10, win=0.5
quick_hkplot, /cont, pmulti=[0,2,2], mnem=['ivaep5', 'ivaep15', 'ivaen15', 'ivcmp5']
quick_hkplot, /rd_full, sea='volt'
quick_hkplot, sttim, entim, /rd_group
quick_hkplot, sttim, entim, mnem, pm_filter=100
INPUT:
sttim - starting time
entim - ending time
CALLS: ***
DELVARX [1], DELVARX [2], DELVARX [3], DELVARX [4], NEW_HKPLOT, anytim2ints [1]
anytim2ints [2], data_type [1], data_type [2], delvarx [5], fmt_tim [1]
fmt_tim [2], get_hk_info [1], get_hk_info [2], get_hk_mnem, hkplot_info, prstr [1]
prstr [2], rd_tfile [1], rd_tfile [2], rem_elem [1], rem_elem [2], ut_time [1]
ut_time [2], where_arr [1], where_arr [2]
CALLED BY:
mon_health [1], mon_health [2], new_mon_health [1], new_mon_health [2]
xanal_emi
OPTIONAL KEYWORD INPUT:
win - the window of time to use when no start/end times are
specified. Default is 6 hours
style - the style option (an integer value)
mnem - the mnemonics to plot (manually defined)
yrange - Force the plotting range for the y axis
exp_pkt - Force it to use the emergency low rate experiment packets
instead of the MDI packets (sc1,2,4 are still available)
continous - Loop through continuously. If the letter "h" is hit
while running continuously, a hardcopy is made. Any other
key will exit the continuous wait. Default wait is 60 sec.
wait - How much time to wait between real time plotting. Default
is 60 seconds.
text - If set, then show the mnemonic values in ASCII form to the
IDL terminal
outfil - If /TEXT option is used, the results can also be saved to
a file.
every - If set, only read every "every" data points in the HK
file
raw - If set, then do not convert to engineering units
pmulti - Optionally make several plots per page.
rd_group - If set, then the user will be prompted by Xwidget for
the list of mnemonics from the group list
specified in $MDI_CAL_INFO/xhkplot_mnem.lst
rd_full - If set, then the user will be prompted by Xwidget for
the full mnemonics list
sea - Used with the /RD_FULL option to specify a string to
search through and reduce the mnemonic list
pm_filter - The value to search for valid data, ie: pm_filter=100
will only plot data between -100 and 100 ("pm" is plus/
minus)
filter1d- Remove bad data by finding where values exceed the
"smoothed 100" values by more than 3 sigma
plot_times- If set, then set the plot range to be the time span
requested
DETAILS
The following style options are available for MDI
1 - ALL temperatures
2 = optics temperatures
3 = oven temperatures
4 = camera temperatures
5 = structural temperatures
6 = outside MLI and front window temps
7 = electronics
9 = temperatures in S/C packets only
-1 = 6 panel plots with styles 2,3,4,5,6
10 = ALL voltages
11 = +5 voltages
12 = +15 voltages
13 = -15 voltages
14 = +30 and +75 volts
-10 = 4 panel plot with styles 11,12,13,14
20 = All Currents
30 = PZT error signals
HISTORY:
Written 21-Nov-95 by M.Morrison
29-Nov-95 (MDM) - Added /EXP_PKT keyword option and /QDEBUG
30-Nov-95 (MDM) - Added /continuous switch and WAIT option
- Modified to purge out mnemonics which are not
available when /EXP_PKT option is used
- Added currents style option
- Added /TEXT and OUTFIL options
1-Dec-95 (MDM) - Added style 9 for SC temperatures
5-Dec-95 (MDM) - Removed mtsqopt* mnemonics from styles 3-6
- Passed the input keywords through to the recursive
calls to QUICK_HKPLOT
13-Dec-95 (MDM) - Added /nostring option to get_hk_info call
- put on-line (5-dec version was not put online)
6-Feb-96 (MDM) - Added PZT error signals
10-Feb-96 (MDM) - Added information to the header (re: outfil)
28-May-96 (MDM) - Added PMULTI option
6-Jun-96 (MDM) - Added EVERY option
19-Sep-96 (MDM) - Added RAW option (only available for non multi
plot pages)
2-Jan-97 (MDM) - Added PMULTI option to the continuous option
22-Jan-97 (MDM) - Added /RD_GROUP, /RD_FULL and SEA options
19-May-97 (MDM) - Added setting of entim if not defined
- Added psym
2-Apr-98 (MDM) - Added pm_filter
- Allowed mnemonic list to be the third arg
- Pass through all of the new_hkplot filters
16-Apr-98 (MDM) - Added filter1d and last_tim_lab options
-
[Previous]
[Next]
Project : SOHO - LASCO/EIT
Name : QUICK_LOOK
Purpose :
Explanation :
Use : IDL> QUICK_LOOK, img
Inputs : img 2 Dimensional image.
Opt. Inputs : caller A structure containing the id of the caller.
Outputs : None.
Opt. Outputs: None.
Keywords : None.
Calls : ***
QUICK_LOOK_EVENT, STDEV, XMANAGER, XREGISTERED, popup_help [1], popup_help [2]
Common : QUICK_LOOK_SHARE
Restrictions: None.
Side effects: None.
Category : Image Display.
Prev. Hist. : None.
Written : Scott Paswaters, NRL, January 1995.
Modified :
Version : Version 0.1, January 9, 1995
[Previous]
[Next]
Project : SOHO - CDS
Name : QWAVECAL()
Purpose : Lists current calibration parameters
Explanation : Human readable form of common block-held wavelength
calibration.
Use : IDL> qwavecal
Inputs : None
Opt. Inputs : None
Outputs : None
Opt. Outputs: None
Keywords : None
Calls : ***
ANYTIM2CAL, DATATYPE [1], DATATYPE [2], DATATYPE [3], TRIM
Common : None
Restrictions: None
Side effects: None
Category : Data analysis, wavelength calibration
Prev. Hist. : None
Written : C D Pike, RAL, 13-Mar-96
Modified : Convert NIS to quadratic. CDP, 23-Jul-96
Version : Version 2, 23-Jul-96