On Feb 1, 2010, at 12:53 , David MacMahon wrote:

> I think I have accomplished the changes described in the thread
> quoted below.  I still have some testing to do, but I'd appreciate
> any comments on my approach.  Preliminary testing shows negligible
> (i.e. undetectable) effect on performance.

Not to toot my own horn, but I thought I'd add some more comments  
about this.  I think the ability to use arbitrary storage of user  
data has many benefits, including:

1. FORTRAN arrays need not be transposed before passing to C functions.

2. It allow for not only the arbitrary of arrangement of the data,  
but also for arbitrary types of data since each element is returned  
by a user-defined function which can cast each element as needed to  
type PLFLT.  This provides a path towards supporting both single and  
double precision user data in the same library, as well as integer  
user data, half precision user data, etc.  More generally, the user  
defined function can transform each point for plotting.  For example,  
the user data could be complex, but user-defined operator functions  
could be used to treat the data as just the real component, just the  
imaginary component, magnitudes, or phases.  Another potential use of  
transformation operator functions would be to facilitate log plots.   
And, of course, the user data need not even be stored; it could be  
computed (e.g. fractals).

3. Simplifying interfaces with other libraries.  For example, the GSL  
library has its own two dimensional data type (i.e. matrix).  It also  
supports "views" into existing matrices (i.e. submatrix) with various  
stride options.  By providing a small set of GSL-aware operator  
functions, pointers to GSL matrices and even GSL matrix "views" could  
be passed directly to the PLplot functions that accept operator  
functions.

IMHO, the benefits are compelling enough and the apparent performance  
hit negligible enough that it could be argued that providing similar  
behavior for 1D data would be worthwhile!

Dave


------------------------------------------------------------------------------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to