On 2015-12-11 12:59-0000 Phil Rosenberg wrote:

> Hi Alan
> My latest commit has fixed the missing plot. Your option 3 will need
> some work. Currently shapelib is used if it is available regardless of
> the situation with PL_DEPECATED.

Hi Phil:

I am sorry, but what I said before was misleading and therefore
lead you into the following language propagation issue:

The current examples/c/x19.c has conditionally compiled code in it,
e.g.,

#ifdef PL_USE_SHAPEFILES

But that macro approach obviously only works for C and C+, and cannot
be propagated to the rest of our supported languages.  So instead
of using macros in the examples, we need the core library to
handle all of this.

So to rephrase what I said, what we really need is the following:

1. -DHAVE_SHAPELIB=OFF, -DPL_DEPRECATED=OFF
2. -DHAVE_SHAPELIB=ON, -DPL_DEPRECATED=OFF
3. -DHAVE_SHAPELIB=OFF, -DPL_DEPRECATED=ON
4. -DHAVE_SHAPELIB=ON, -DPL_DEPRECATED=ON

For PL_DEPRECATED=OFF _the libplplot C library_ should rely completely on the 
shapelib
approach, and for PL_DEPRECATED=ON that library should rely completely on the
traditional non-shapelib approach.  So following that philosophy we
should have the following results:

Case 1: The library should emit a warning for _every_ plmap-related
call that shapelib is missing and otherwise do nothing with those
calls. So for this case example 19 will plot a box (generated by
plenv) for every page plus generate warning messages, but the plotted
pages will contain nothing else for all languages.

Case 2: The library should proceed with all the shapelib logic for all
plmap calls.  Thus, the example 19 result will be complete for every
page with no warnings for all languages.  (From what you said, I think
we have this result now, but I will wait to test it until you are done
with your library changes and dropped the macro approach
in examples/c/19c.c and examples/c++/x19c.cc).

Cases 3 and 4: The library should proceed with the traditional
approach for the plmap call, but for all the rest of the plmap-related
calls that are only relevant to shapelib should emit a warning (e.g.,
"The shapelib form of plmap calls are not available when the
PL_DEPRECATED macro is #defined). The example 19 results for this case
for all languages should look fine for all but the last page, and that
page should just contain a box generated by the plenv command and also
generate a lot of warnings from the library.

Sorry for the previous misleading communication.

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
__________________________

------------------------------------------------------------------------------
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to