USC manager Tool Design Concept:
Overview:
This tools manages the creation and deletion of USC types, and the application and removal of USC's on visits.
Required Features:
This tool must have five major modes:
'Edit USC Type' mode that:
- accepts the following as inputs:
- the name of the USC (required input)
- a set of visit selection criteria (optional input)
- a list of windows (required input)
- the type of window (include, exclude)(required input)
- a descriptive comment for the USC (required input)
- Converts 'exclude' windows into 'include' windows for creating USC's
- Saves the inputs a user option for use in the 'apply' mode.
'Delete USC Type' mode that:
Does as its name implies.
'Display USC Type' mode that:
Displays predefined USC options and their parameter values.
'Apply USC' mode that:
- accepts the following as inputs:
- the name of the USC (new or existing user option) (required input)
- a list of visits (optional input)
- a list of windows (optional input)
- the type of window (include, exclude)(optional input)
- a descriptive comment for the USC (optional input)
- passes visit selection criteria to a TBD query tool and accept a visit list from that tool in return.
- inserts USC records into assist for each visit.
'Remove USC' mode that:
accepts the following as inputs:
- the name of the USC
- a list of visits
one of these two must be provided; both may be provided.
if the USC name alone is provided, then the USC will be removed from all visits that have it.
if a visit list is provided by itself, then all USCs for that visit will be removed.
Methods Required:
A set of methods to implement these requirements might include:
- One to do commandline argument processing to:
- read the arguments and handle syntax checking
- determine if existing user options are being requested and set parameters accordingly.
- in 'edit USC type' mode,
if USC type exists,
generate a message that states the USC type already exists and
query user to see if parameters are to be updated
if yes,
prompt for values
else
exit
elseif USC type does not exist,
query user for more input.
- in 'apply USC' mode then
If only a USC name is given,
look for an existing user option with that name and use those parameters.
if one does not exist,
query for user input.
(note: selection criteria are not accepted in this mode. A visit list
must be provided if the USC type does not already exist.)
- One that passes a list of selection criteria to a TBD query function to generate a list of visits for USC creation
- One to convert input exclude windows into proper format for creating USC's (USC's are intersected with other constraints. Therefore, to exclude a region you must create windows that are suitable everywhere 'except' the exclude region.)
- One to insert the USC records into ASSIST.
Operational Prerequisites:
The query mechanism of the Data Access Task must be implemented in order for the visit selection criteria feature to work.
Operational scenarios:
Here's how this tool would work:
- If I want to create a new USC type:
usc -edit LRP_LEONID_RES
user is prompted for necessary parameters and
values are stored for later use
or
usc -edit LRP_LEONID_RES {ra_low=121.4 ra_high=186.0 dec_low=-8.1 dec_high=51.9}
"2001.314:00:00:00" "2001.328:00:00:00" exclude "Not allowed near the Leonids. --LRP"
- if I want to put this new usc on a visit
usc -apply LRP_LEONID_RES {visit list}
or (if the USC has selection criteria associated with it that I want applied to all visits that meet the criteria),
usc -apply LRP_LEONID_RES
- if I don't know what the currently predefined USC's are:
usc -display
- if I want to remove existing USC's:
usc -remove {visit list}
or
usc -remove LRP_LEONID_RES
(removes all LRP_LEONID_RES USC's)