Update of /cvsroot/plplot/plplot/include
In directory usw-pr-cvs1:/tmp/cvs-serv12798
Modified Files:
Tag: dyndrv_1
drivers.h
Log Message:
Add prototypes for the 40 or so device dispatch table initialization
functions.
Remove prototypes for many of the canonical driver functions. These
prototypes no longer need to be widely visible, because we no longer
initialize the global dispatch table in plcore.h as was done before.
Instead, we have only a list of the active static devices, and their
dispatch table initialization functions are called, each of which in
turn fills in the dispatch table function ponters with the device
driver specific function entry points. Consequently, most of the
canonical driver functions need only to be known inside the actual
driver file.
The remaining canonical driver functions that are still prototyped in
drivers.h, result from one of these situations:
1) I haven't gotten around to converting the driver to use the new
dispatch table initialization style yet. These drivers are
effectively broken by this commit, and will have to be upgraded to the
new dispatch table initialization scheme before they will work again.
2) There were several cases where I have the impression that some
driver functions are used by multiple clients. Where I had suspicions
of this, I left the prototypes in drivers.h, and didn't touch them.
3) There appear to be cases where names are at least overloaded, even
if the functions are not. Without deep investigation, I left this all
untouched. It is surely broken, and will require updating before
these drivers will work again in the dyndrv world.
|