On 2014-10-21 09:18+0100 Phil Rosenberg wrote:

> Hi Alan

> That option works for me - if that feature might be in use then we can retain 
> it.

> However I disagree with wrapping plfill in a plstream::plfill
method. This is poor object oriented division of responsibility. The
plfill method has nothing really to do with plstream and if we create
that method, then someone somewhere will use it incorrectly and create
a hard to find bug.

> If you really wanted to go object oriented then
you would create a plfiller class, which would have a fill virtual
method which for the standard class would call plfill. Then you would
pass this into plstream::shade. However, I think all that is
unnecessary. Just using plfill for the callback is simple, effective,
transparent and also conforms to the existing plplot documentation.

Hi Phil:

I was basing my idea for the plstream::fill_callback on the
plstream::tr[0-2] callbacks which are C++ wrappers for the C
callbacks, pltr[0-2]. That is, I was just following an existing
pattern without a lot of C++ knowledge to back it up.  However, your
arguments for simply using unwrapped C callbacks seems compelling to
me so long as we are consistent about how we apply that idea.
Therefore, I suggest (unless Andrew weighs in with a contrary opinion)
that you go ahead and commit the exact change you proposed for your
option 1 as well as (this is the consistency part I think is
important) officially deprecating plstream::tr[0-2] in README.release
and replacing all uses of those C++ callbacks in our C++ examples with
the C callbacks pltr[0-2].

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); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); 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
__________________________

------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to