Sunday, 4 June
see also
data repository
rsync from cvsup
its just converting the script over, checking into the right place...
the script does an init on the STABLE to get the scripts in the proper state to load the data.
the measuresData.g is in the MAIN CVS;
WesYoung tweaked those cvsup scripts...
so where do we put those in the rsync brave new world?
put them somewhere...
Measures Data Generation Scripts
we have some scripts that are used to generate the data repository.
we want to move those scripts into the MAIN CVS tree.
2800 lines o' glish
Rsync limitations to address:
- No way to tag collections, to pull a named collection of files.
- Wes says that the way to work around this is a server-side configuration.
- Often blocked by firewalls
- tunnel over ssh; create dummy read-only user with an ssh authorized_key * could do this for AIPS EricGreisen as well
Parameters
we also need to have a user database, to remember per-user defaults between invocations of the tools
how large are these databases? 50-100 K
actually pretty big; if you describe every paramater for every function of every tool
the user one will be much smaller, a subset of the system one
the function signature might change, and then how to we handle it? we should solve that as we go along. the real point is that we factor in any changes to the system (indicated in the system database) and take account of that
during the next year as we clean things up -- and we have a lot of that actually -- the function signatures
will change.
if parameters are dropped out, they will not be included.
example, changed "infile" to "vis"
it will do "vis"
Unification of Parameter Names, parameter dictionary
we're going to try to unify the names of parameters across all functions of all the tools.
we are going to put a wiki page up, as we proceed the developers will define what a parameter what a parameter stands for, and if it is not yet there then the developer will define it so other will use the same one
Qt Live
- getting Qt to have its own event loop
casapy is a script that loads python with all the CASA libraries
casacio has one function that is loaded,
imp (like "import")
gives you the parameter names, default values
(TODO: a vector of one element should take that element as input. for example, signature is a function that has one string parameter, it won't take a string parameter, it needs a one-element Vector of string)
TODO: There is not yet a user database.
SUGGESTION: the 'p' meta-function could echo the name of its interned function on the first line of output.
Joe thinks you should only save what you explicitly save.
Wes thinks you could toggle a flag that says "save all automatically"
Darrell thinks you could tag defaults with a named tag (e.g., per-project tags) -- (your faithful scribe likes this idea).
The Myriad Usage Pattern
the set-task-parameters, "go", "save"
at the charette, they didn't like going into a separate shell to set defaults
you have a Task, you can look at the inputs, you can modify them.
- go
- save (either to a default location, or tag with tag)
KumarGolap raises the issue of "sticky paramters".
This is oriented towards batch processing, rather than interactive usage?
If the users get a chance to play with it, maybe things will change a bit...
- Tools - fine-grained functionality
- Tasks - higher-level use-cases
see also
http://www.aoc.nrao.edu/~smyers/aips++/uiwg/uiwg_report.pdf
Joe proposed a "Clean" "Task"
- organized the tools in a better way
- being able to do "Help" gives you navigation
The issue is that some of our
tools are actually
tasks -- they are higher level things.
They want
tools to basically act the same as the
tasks -- there is a spectrum of granularity in these things, but they should behave basically the same: conventions on every one of these things so that
This is more of a help issue? So that when we do develop Tasks, we'll have some
A Tag, a module Tag, there will be a series of functions that is there
Right now we need to create the Tasks. Just as we have XML files to define the Tools, we should have XML files that define a super-set of Tools to define a Task.
There is a Task CLEAN and a Tool CLEAN.
Hierarchy of Tasks
Restricting what you can actually do, to restrict the input list to something that is more manageable. MOSAIC Task can use CLEAN.
Modularity
They don't ever have to open an MS. The freakin' tool-based nature of AIPS++. They want to define a Data File, and then specify some operations on the data.
msOpen, msSummary, msClose, then do my
Setting Default Values - the SELECT Task
Cross-calibration... needs more than one
MeasurementSet.
set default with
selectTask or
attach command that would eliminate the need to open...close
Defaults Wrapper
- APL concept of "workspace" to set a default context for the tools (DavidKing)
- A Wrapper object that maintains the default context and passes these to our existing implementations (KumarGolap)
Later, we can re-factor (re-implement) the underlying, existing implementations to maintain a default context.
We want to avoid
ms.open
ms.summary
ms.close
tb.open
...
Instead, we get to say
data.file = my_MS_file_name
summary
clean ...
How to have multiple defaults
(long discussion with
DebraShepard)
Are Tasks Written in Python?
Documentation
- Priorities
- one-liners
- cookbook
- other things later
Synchronization of the documentation section numbers with help and whatnot is addressed by the XML-based documentation build system.
Cookbook Should be Wiki
The Math Mode is supported. Example:
is divergent, but
exists.
The above line is the result of the twiki text
is divergent, but exists.
Qt Viewer
- We need to purchase support from Trolltech.
A stand-alone viewer can be used.
Region Manager
Now we're filling in all the options, windows, etc... based on the prior expertise.
It's a challenge to divide the viewer development tasks between the two developers
DavidKing and
HonglinYe.
We need scripting ability.
The viewer has a very high-level knowlege of our data structures.
We would like to save the viewer parameter settings to a file -- so that you could ship the file to someone and reproduce the image results.
Postscript defect? Use the Qt JPEG output instead.
PixelCanvas is screen resolution -- but it's almost publication-quality if you make the Viewer really big on the screen. Hm..
--
BoydWaters - 04 Jun 2006