On 2009-02-20 19:57-0800 Alan W. Irwin wrote: > If somebody would like to help out with the time project while I am working > on the DocBook documentation [and leap seconds, etc.] of that project, here > are some things that are > still left to do. > > (1) We have some calls of mktime and gmtime in our core library which should > all be replaced (and simplified in the mktime case because you don't have to > fiddle with time zones) by plbtime and plctime. That change should allow > "#include <time.h>" to be removed from plplotP.h. > > (2) Stream initialization already provides a default transformation between > continuous and broken-down time for each different stream. The way this > works is that if plinit is called for a given stream and if the user has not > already called plconfigtime for that stream, then plconfigtime is called to > establish a PLplot default transformation (currently this is seconds since > the Unix epoch, but that default may change) in the transformations between > continuous and broken-down time for that stream. However, this needs to be > followed up by calling plconfigtime (which reconfigures the time > transformation in libqsastime, but with all transformation data stored in a > QSASConfig struct pointed to by plsc->qsasconfig) for every change in stream > and whenever a stream is copied so that if a user calls plconfigtime (before > or after plinit for the stream), then that call will only affect the current > stream. > > (3) We need to update all the various language bindings to provide > plconfigtime, plbtime, and plctime. Example 29 should exercise > all those functions once it is updated (see below). > > (4) As of revision 9570, I have already considerably simplified the example > 29 time handling with this new API. (e.g., no more special numbers are > required to represent the starting time for Windows.) However, I don't think > we should propagate that change just yet from the C version to other > languages because I think this might be a good opportunity to extend example > 29 to show off the capabilities of the new API including calls to > plconfigtime, plbtime, and plctime (perhaps for two different streams?) >
I just (revision 9642) completed (1). So time.h is completely gone and all our time handling is now done via libqsastime. I am not working a bit on (3) and (4). Despite (or because of) all the C programming I have been doing recently, I far prefer programming in Python, so my next steps are to get the new time API working in Python, and then use example 29 in Python as a test bed for my about-to-be-implemented leap second changes to libqsastime. My goal is to make a rigourous test of all possibilities by adding plots to example 29 of leap second details near historical epochs with a positive discontinuity (e.g., 2009-01-01) and a negative discontinuity (e.g., 1961-08-01) with both TAI and UTC as the independent variables. Once that goal is achieved for the python version of example 29, I will propagate it to the C version as well. However, I wont immediately propagate it other languages, because I assume there will be additional time handling test plots we will want to implement at that point. I don't plan to work on (2) for quite a while so if somebody is feeling in the mood to help, that would be a good place to do so. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ ------------------------------------------------------------------------------ Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel