Navigation


Changes between Version 3 and Version 4 of Developers


Ignore:
Timestamp:
Jun 21, 2010, 3:05:39 PM (14 years ago)
Author:
Sebastien Decugis
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Developers

    v3 v4  
     1[[PageOutline(2-4)]]
    12== Information for developers ==
    23
     
    5556   Compile the test application extension [wiki:test_app.fdx].
    5657
     58=== Developer's useful files ===
     59Here is a list of files that anyone starting with freeDiameter should read first:
     60
     61 [source:freeDiameter/include/freeDiameter] directory::
     62   This directory contains the header files that describe the API for freeDiameter. Typically, a new extension should start by including the [source:freeDiameter/include/freeDiameter/extension.h extension.h] file like this:
     63{{{
     64#!C
     65#include <freeDiameter/extension.h>
     66}}}
     67   The directory contains:
     68 * [source:freeDiameter/include/freeDiameter/extension.h extension.h]: Includes the other files, and provides a macro that can be useful to define the extension entry point.
     69 * [source:freeDiameter/include/freeDiameter/freeDiameter.h freeDiameter.h]: detail of the functions available in the daemon, including the description of the callback functions the extension must register.
     70 * [source:freeDiameter/include/freeDiameter/libfreeDiameter.h libfreeDiameter.h]: detail of the functions available in the library, as well as macros that can be used for logging and debugging.
     71 * [source:freeDiameter/include/freeDiameter/freeDiameter-host.h.in freeDiameter-host.h.in]: This contains the host-specific configuration, generated by CMake.
     72
     73 [source:freeDiameter/extensions/_sample] directory::
     74   This is a skeleton that shows the basic structure of an extension. Other extensions also provide more complex examples, such as how to parse a configuration file or how to register a callback on some messages.
     75
     76 [source:freeDiameter/extensions/CMakeLists.txt]::
     77   The file that must be modified in order to add a new extension and have it compiled along.
     78
     79If you create new extensions for freeDiameter, please consider '''sharing them with others'''! There are many benefits in doing so, both for others and for you. The source code can be hosted here if you want, please contact dev@freediameter.net in that case. Thank you!
     80
    5781----