[Kst] extragear/graphics/kst/devel-docs

Matthew D Truch matt at truch.net
Tue Apr 25 16:28:45 CEST 2006

On Mon, Apr 24, 2006 at 11:05:28PM +0000, Barth Netterfield wrote:
> SVN commit 533498 by netterfield:
> Add notes about the kst meeting.
>  AM            KST Meeting.kwd  

For convienience of possible discussion on this list and/or for those of
us who may be amazed to find out that very few programs can even open a
non-formatted text-only version of that file other than kword, attached
is a text only version.  

"One in every seven days is a Thursday."
Matthew Truch
Department of Physics
Brown University
matt at truch.net
-------------- next part --------------
KST Meeting Notes
April, 2006

1. Policies
1.0.1. Target User Base
For the next year, kst development will be driven by the needs of our current
users and developers: specifically, in order

  Planck QLA (calibration runs and daily reports)
  mm/sub-mm experiment QLA (BLAST, Spider, ACT...)
  mm/sub-mm data analysis
  Other wishlist items, as approved by Barth

1.0.2. Feature Selection
New features should be discussed on the list and approved by Barth before
being implemented.  The only exception are features required by Planck-HFI on
a time scale incommensurate with discussion.  These commits will first go into
the planck-hfi branch.  

Major changes require a design doc and a discussion. ??Design docs go in
devel-docs and discussion is on the list.

Approved features for the next release will be listed in devel-docs/RELEASE.
Bugzilla will be used to discuss externally proposed wishlist items and bug

1.0.3. Commits

George will review all commits, and has reversion privileges.  Others are
encouraged to review and comment on commits as well.  George has the final say
on code and Barth has the final say on UI.

New features should include either a code testcase, or functional tests to be
run before the new release.  A list of pre-release functional tests will be
developed and put in devel-docs.

Bug fixes in HEAD which are suitable for backporting should be in a single
commit with nothing else.  Indicate in the commit that George should backport

2. Feature Brainstorming

2.1. Improved and new Wizards for high level creation of objects
Equation wizard
Layout wizard?
"Data" wizard to be renamed "plot" wizard
Image wizard
Fitting wizard
?? ?? ?? - arbitrary X (interpolation)
?? ?? ?? - generalized linear and nonlinear fits
Still have dialogs for direct access to new/existing objects

2.2. Data subsets and masking
Feature description is not yet finalized, but some thoughts are:
mask is built in to kstVector, kstMatrix
decendents of kstBaseCurve decide how to handle the mask information
how did the vector get his mask?
?? ?? ?? - datasource
?? ?? ?? - transform
?? ?? ?? - UI
generating a mask or subset
?? ?? ?? - internally from datasource
?? ?? ?? - from another vector
?? ?? ?? - from the UI (all, current view, or current selection)

2.3. Spreadsheet mode
it's a spreadsheet
zoom selection of data
data columns & rows aligned by frames
Wait for KDE4

2.4. Templates
can be used to build a session from smaller ones
could create kst-session tool...
not this year

3. Features (almost) ready for Implementation

3.1. Rendering/Projections
Projections are viewobjects parallel to Kst2dPlot
common elements will be moved up to base plot class
some axis stuff, mouse handling, etc might be able to move
decedents of base plot class control projection and drawing
First new projection will be a PolarPlot

3.2. Plot Dialog Regularization
Plot dialog becomes a "view object dialog"
edit one plot at a time, edit/new
edit from view object manager or right click
create a new plot plots via from menu (plots --> new)
new plot view object tool?
add "edit multiple" in view object dialogs like view objects have.

3.3. Drag and Drop
Implement full marshalling
see devel-docs

3.4. XML parsing
current implementation is very slow: 
possibly use SAX instead of DOM
choice requires benchmarks
remove object explicit code paths and use factories

3.5. General UI quirks
Layout mode
?? ?? ?? - parent indication
?? ?? ?? - selection needs larger "handles" >= 5 pixels
dialog formatting cleanups
missing tooltips
regularize datasource names
Scalars in datamanager
Reorganize "new" buttons in data manager
Equations, fits, filters with shorter names
RVectors need to remember time setting

3.6. New "Transform" system (replaces 'plugins')
lives in update thread
transforms kst types (scalars, vectors, matrices, etc) to new kst types
essentially kstDataObject
autogenerated config widgets
transform dialog will allow creation of one basecurve
disable "edit multiple" by default
port existing "plugins" to transforms ?? 

NOTE: Transforms are conceptually parallel to extensions which run in the UI

3.7. Datasource enhancements
metadata accessible as Strings - this is global for the file
getinfo function (for specified field)
fieldlist can contain this extra info
readFields (multiple) datasource fetches all data and packs it
low resolution preload
parallel reading: 
all fields from a given datasource are read at once
updater builds collection of double* that gets passed to each datasource
suggestion: get rid of n < 0 in readField*.  Rvectors read entire frames, dump
all samples of last frame except first one (Barth is worried that this is
pretty inefficient with big frames.
Do not attempt at this time to support non-sync data.

3.8. scripting
have both global and user directories for keeping kst scripts
order is {., .kde, global}
examples, tutorials, look how cool it is! ??no more perl ?? 

3.9. Undo
history of commands
Implement for a limited selection of functionality in view objects

4. Marketing
at this point, improve website only
why we are l33t
?? ?? ?? - opensource/free
?? ?? ?? - real time
?? ?? ?? - massive datasets
?? ?? ?? - easy interface
?? ?? ?? - data formats (ASCII, FITS, CDF, netCDF)
?? ?? ?? - easily extensible

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kst/attachments/20060425/a6b47238/attachment.pgp 

More information about the Kst mailing list