[AD] API cleanup patch

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


I've attached a big patch that aims at tidying a little the API and header
files. It doesn't hide internals (except Windows specific ones, which
doesn't break anything).

What it does:
- moves ALLEGRO_WINDOW_CLOSE_MESSAGE from allegro.h to aintern.h,
- moves allegro_init() from alinline.h to allegro.h (and keeps it as a
macro),
- makes uconvert_ascii(), uconvert_toascii(), pack_feof(), pack_ferror() and
quad_interpolate() inline functions (they were previously macros). All API
calls but allegro_init() and ustrdup() are now standalone functions,
- adds object_message() to the API (inline function) and defines
SEND_MESSAGE for backward compatibility,

- changes mouse_type, joy_type, black_rgb, palette_colorxx to internal
symbols (underscored) and moves them to aintern.h,
- moves a bunch of internal (already underscored) symbols from allegro.h to
aintern.h,

-adds docs entry for: object_message(), _ustrdup(), fceil(),
initialise_joystick(), lock_bitmap(), lock_midi(), lock_sample(),
offer_focus() and pivot_scaled_sprite_v_flip() that are all part of the
API,
- adds docs reference for: bmp_readxx().

Tested under DOS, Windows and Linux.

After the patch is applied, the Windows DLL exports 1280 symbols, 34 of them
being Windows specific and 1246 platform-independent.
Among these 1246 symbols, 509 are internal symbols from aintern.h .
The 737 remaining ones (listed in allegro.def.api) are those which really
need to be exported; among them, 677 are standalone API symbols (documented
in allegro._tx) and other 60 are needed by inline functions or are involved
in the compile-time driver list building mechanism (listed in no-api.txt).

--
Eric Botcazou
ebotcazou@xxxxxxxxxx

Attachment: api_cleanup.zip
Description: Zip compressed data



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/