|  | VISION Documentation (LDV) |  | Last update: 02/10/00
Download documentation | 1. I N T R O D U C T I O N |

At last! After several years, VISION eventually becomes modular! Roughly, the essential purpose of LDVs (Librairies Dynamiques for VISION) is to allow to add your own functions. Typically, an LDV allows to enhance the functions of VISION, for instance by adding an image distortion module. Here are the characteristics of LDVs:

- Direct access to VISION images
- Multi-lingual (with optionnal INI file)
- UNDO management (transparent for LDV programmer)
- Management of the input of 4 parameters by VISION, which can be sent to the LDV
- Progress bar management during LDV computation
- Preview management
- Can be applied on an image or on a block inside an image
- VISION provides an API (VAPI) giving image modification functions

At the development level, the programmer must:

- Know what he wants to do!
- Define the capabilities of the LDV (number of plans that can be managed, expected image format, ...)
- Write 4 functions (2 of them being written 100% by an LDV skeleton!):

GetLDVCapabilities | Already written. Return to VISION what the LDV can do
PreRun | To be written. Ask VISION to allocate the resources necessary to the function Run
Run | To be written. The function that does something!
Preview | To be written or not. Similar to Run, but in Preview mode, if computation time is too long, and if it is possible to do less computation. Very often, Run is called instead (this is what the skeleton does).

Of course, writing an LDV requires some notions on images, their formats and programming. See essential notions.

Last, I do hope to extend that principle by proposing LDV to load and save images (possibly even more...). However, given the time needed to include this concept in VISION, it will require some persons to be interested before I start with it!

LDVs are based on LDGs (Librairies Dynamiques GEM) developed by Olivier Landemarre and Dominique Béréziat: ldg.atari.org

|  | VISION Documentation (LDV) |  | Last update: 02/10/00
Download documentation | 1. I N T R O D U C T I O N |