/** * @mainpage EXIP - Embeddable EXI Processor in C * * EXIP provides a general purpose EXI processing library that is efficient and * easy to use for both: embedded platforms and desktop/server applications. * The project strives to build large user community as well as committed * and eager development team. The purpose of this development documentation * is to help the C developers interested in the project to easy get the * knowledge they need to work and enhance the code of the library. * If you are only interested in using the library see the EXIP * User Guide available from the project web site. *

* Please use the project forums * to ask questions, submit a proposal or search for help. *

*

* For discussions and information connected to the code of the library and * various development topics subscribe to the * * exip-develop mailing list. *

*

* Starting from the Alpha release the development of the library is entirely open - * all the changes are committed to the public SVN repository and available to everyone. * The goal is to make releases as often as possible - optimally every three months. *

*

* The main feature of the code is its modularity. Below are listed the main components * of the codebase (each has a separate Makefile builds and use * Check Unit Testing Framework for testing): *

 *   Modules dependencies:
 *   ==========================================================================================
 *   |             Module              |                      Dependencies                    |
 *   ==========================================================================================
 *   |         @ref common           |                           N/A                         
 *   ------------------------------------------------------------------------------------------
 *   |      @ref streamIO          |                         common                       
 *   ------------------------------------------------------------------------------------------
 *   |     @ref stringTables        |                         common                       
 *   ------------------------------------------------------------------------------------------
 *   |        @ref grammar           |             common, streamIO, stringTables            
 *   ------------------------------------------------------------------------------------------
 *   |      @ref contentIO         |         common, streamIO, stringTables, grammar       
 *   ------------------------------------------------------------------------------------------
 *   |    @ref grammarGen     |   common, streamIO, stringTables, grammar, contentIO  
 *   ------------------------------------------------------------------------------------------
 *  
*

*

* More information about Efficient XML Interchange format can be found at - http://www.w3.org/TR/exi/ *

* * @section get_involved How do I get involved in the EXIP development? * The code of the library is still in development stage and unless you use it * for trivial EXI processing the chances are that you will come across a bug. * Filing a detailed bug report is just one way to help yourself and * the project. The culture of the EXIP development is based on * "Help yourself and others will help you" principle so if you * need your problem fixed soon try trace the source of the error * yourself first before looking for help. * * @subsection getting_started Getting started * Here are some basics steps for developers interested in contributing to the project: *
    *
  1. Read the EXIP User Guide
  2. *
  3. Start using the library in your applications
  4. *
  5. Identify bugs, flaws in the design and improvements you would like to see in the library.
  6. *
  7. Browse through the EXIP development documentation (i.e. the Doxygen pages) and * try to get deeper knowledge on the details of the problem
  8. *
  9. Implement the fix and create a patch
  10. *
  11. Email the patch to the project administrators. If the patch is following the * project coding rules and is approved by the EXIP administrators you will get a write access to * the EXIP SVN repository and become a part of the EXIP development team. * Note that your contribution will be distributed under the same BSD license * used for EXIP (@ref copyright "see below")
  12. *
  13. Being part of the project development will allow you to influence the direction of the * project, set priorities on fixes and improvements and get answers to your * code related questions on time.
  14. *
* * @subsection copyright Contributions, copyrights and licenses * All contributions are licensed under the same BSD license used by the EXIP project * although the project does not require explicitly signing Contributor License Agreement (CLA) * by each and every developer. * Instead a simple Developer Certificate Of Origin as the one used for the Linux * kernel development is applied. * See License * page for more details. * * @date Sep 14, 2010 * @author Rumen Kyusakov * @version 0.5 * @par[Revision] $Id$ */