Most of the time, a combination of existing modules (generic and/or specific) will fulfil the requirements of a project. However, sometimes only a custom-made module will do. This chapter provides a short tutorial on writing custom modules.
Unless you need a custom module, you can safely skip this chapter.
Custom modules can be written in several languages. They fall into two broad groups, C and everything else.
If you decide to use one of the other languages, you should still skim the chapter on C, as the other languages may be incomplete (please file a bug or ask on the mailing list if there's a function there that you want to use from one of the other languages), and in any case they generally follow the same layout and structure.
Another purpose of this chapter is to explain somewhat the workings of the supplied generic and specific modules. The modules supplied with the MatPLC work exactly the same way as custom modules. Currently they're all written in native C.
If you write an interesting custom module that you think other people would find useful, you can contribute it to the project. There's no difference between writing a custom module and writing a module to contribute.
Just about the only requirement is that the module has to be under the GPL licence. We may make some adjustments to the module to make it fit better with our intended architecture or project organization, of course, or merge it with an existing module; but if it's something that people would generally find useful, we'd love to have it in the CVS!
For other ways of contributing to the project, please see the Contributing to the MatPLC chapter.
$Date: 2004/12/28 05:32:09 $