AMANITH FRAMEWORK F.A.Q. -  V 0.2.0 - Edited 12.12.2005
*******************************************************

1.  What is Amanith Framework ?
2.  Which prerequirements must be satisfied to compile Amanith Framework ?
3.  Where I can find the latest Amanith Framework official release ?
4.  Where I can find the Amanith Framework CVS/SVN source tree ?
5.  For which kind of projects is Amanith Framework suitable ?
6.  Can I port Amanith under a different os/architecture/compiler ?
7.  Can I give an active contribute to the Amanith Framework development ?
8.  If I need a particular feature, can You implement this just for me ?
9.  Can I use Amanith Framework to develop a non OpenSource project ?
10.  Can I write a plugin & release it under a licence different from QPL ?
11.  In which ways can I help Amanith Community ?
12.  Have you got some troubles compiling Amanith ?
13.  Have you got some troubles launching Amanith examples ?


1.  What is Amanith Framework ?
===============================
    Amanith Framework is a crossplatform opensource ansi C++ framework aimed to handle vector graphic.
    Amanith gives to developers a complete and reliable set of classes to work with geometric elements
    (lines, curves, paths, meshes, and so on); it provides many powerful modelling operators (like cut,
    join, flatten and so on) and, at the same time, the fastest rendering layer totally built on top of
    OpenGL. Some other useful classes included in Amanith complete the framework with: fonts and pixelmaps
    support, hierarchycal animations, fast and robust tesselation, bitmap to vector tracing, mathematics and
    calculus functions, matrices, distance and intersection queries.
    One of Amanith's strenght points is the highly customization capability that make possible to compile
    the framework with a wide options range (like the possibility to choose, for example, between double or
    float as real numbers representation, without change anything into code sources) and including/excluding
    many modules to add/subtract various features (a.e.: jpeg and png picture format support); in addition you
    can choose to compile all modules as plugins, so, thanks to the Amanith kernel-plugins system, you can
    load/unload them at runtime, saving a lot of ram for other tasks.
    Another important thing that you have to keep in mind when you look Amanith is that all the framework has
    been written using only ANSI C++, that grants stability and reliability beside the portability on many hw/sw
    architectures. Currently Amanith compiles without any problems under many Unix environments (a.e.: linux,
    bsd, irix), Windows, and MacOS X, with different compilers like VisualStudio, Xcode and Gcc.


2.  Which prerequirements must be satisfied to compile Amanith Framework ?
==========================================================================
    Obviously, you need a machine (32/64 bits) with an operating system installed and a C/C++ compiler.
    We have personally tested Amanith (and its compilation process) on the environments listed below:

        -> Windows 2000, XP, 2003 (Visual Studio .net, Visual Studio 2005, Visual Studio 6)
        -> MacOs X Panther, Tiger (Xcode 1.x, Xcode 2.x)
        -> Linux all flavours (Gcc 2.95+)
        -> FreeBsd (Gcc 3.4+)
        -> Irix 6.5 (Gcc 2.95+)

    The entire Amanith building system is strongly based on the wonderful Qmake tool from Trolltech, you can find it as
    a part of the QT libraries (available for many different environments, and released under QPL/GPL licence) here:
    http://www.trolltech.com/download/opensource.html. The Amanith Framework library has no dependancy from QT, but
    the examples distributed with Amanith depends on the QT libs for the gui & widgets, so if you want to compile them,
    first install the QT libs.
    If you need to use (and compile) Amanith under a different environment unsupported by Qmake, don't despair, you can
    try to manually edit the makefile's in accordance with your requirements (don't forget that Amanith has been written
    in pure ANSI C++) and remember to inform us at develop@amanith.org if the operation had a successful ending.


3.  Where I can find the latest Amanith Framework official release ?
====================================================================
    You can find the latest release in the Amanith Website downloads section at http://www.amanith.org/download


4.  Where I can find the Amanith Framework CVS/SVN source tree ?
================================================================
    You can find the official Amanith Framework subversion repository at http://developer.berlios.de/svn/?group_id=3656


5.  For which kind of projects is Amanith Framework suitable ?
==============================================================
    Amanith Framework born as optimal solution to handle vector graphic in realtime, therefore we have chosen to develop
    our Framework without use slow exact mathematic libraries (like CGAL or LEDA, as example), the result is a more
    fast (but less precise) product; keep in mind this fact when you evaluate the possibility to use Amanith for your
    projects. We would like to be sure that anyone have the idea to develop a CAD for bridges planning with Amanith.
    The Framework is instead suitable for projects that don't require particular computations precision (like a SVG or
    SWF editor); F4L (Flash for Linux) is only one of the projects that have chosen Amanith as geometrical core.


6.  Can I port Amanith under a different os/architecture/compiler ?
===================================================================
    You can try to do this. Amanith Framework has been written in pure ANSI C++ (with massive use of STL containers and
    algorithms) and its core is independent from third parts libraries (that are still necessary to build plugins, tools
    and examples), therefore the portability is insured enough. Don't forget to inform us if the operation succeeds, just
    mail us at develop@amanith.org. We have just in plan to do some ports (we think expecially to mobile/embedded world
    like WindowsCE, SymbianOS, and so on...) so if you have in mind to compile Amanith on those platforms please contact
    us without screw around.


7.  Can I give an active contribute to the Amanith Framework development ?
==========================================================================
    Sure you can. If you are skilled in coding art and would like to collaborate in Amanith Framework development don't
    esitate to contact us at develop@amanith.org. We will grant to you all the support you need.


8.  If I need a particular feature, can You implement this just for me ?
========================================================================
    First you can contact us at develop@amanith.org to know if the feature you want has just been scheduled for a next
    release of Amanith Framework, then you can take a look to the "feature request" service available on the Amanith Homepage.
    If you are skilled in coding art why don't consider to implement the features by yourself ? in this case we can grant
    every kind of support to you, and we will make this feature available for all Amanith users, including your implementation
    into the next release of the our Framework.


9.  Can I use Amanith Framework to develop a non OpenSource project ?
=====================================================================
    You can't do this with the Amanith Framework QPL distribution. You need a more suitable licence for commercial purpose;
    we have just in plan to release a commercial version of Amanith Framework in the near future, please contact us at
    sales@mazatech.com to know more details about this.


10.  Can I write a plugin & release it under a licence different from QPL ?
===========================================================================
    You can't do this with the Amanith Framework QPL distribution. All the plugins developed using the QPL version of our
    Framework must be released under the same licence terms. If you need to release your plugin under another licence terms
    please contact us at develop@amanith.org.


11.  In which ways can I help Amanith Community ?
=================================================
    You can help Amanith Community in many ways like Donations, Bug Reporting, Feedbacks, Code & Algorithms, Helping 
    inexperienced users, Partecipating in forum discussion boards, and so on...


12.  Have you got some troubles compiling Amanith ?
===================================================
    The most common problems during Amanith compilation process involve the wrong set of the $AMANITHDIR env.
    If $AMANITHDIR environment variable points to a different location than Amanith directory, when you launch 'qmake amanith.pro' all
    the Makefile(s) will be badly generated and a consecutive 'make' command will probably stop the compilation process with some errors.
    Before to start the compilation process again, you need to do 'make clean' AND to delete all generated Makefile(s)
    (and Makefile.Release/Makefile.Debug too), then you can reset $AMANITHDIR and retry.


13.  Have you got some troubles launching Amanith examples ?
============================================================
    If examples didn't start it's possible that link editor under *nix systems (ld) can't see Amanith shared library, make sure that LD_LIBRARY_PATH
    (on Linux) or DYLD_LIBRARY_PATH (on MacOsX) is correctly set, or make a symbolic link to Amanith shared library inside your system default
    libraries directory. If you are using Windows make sure to have %AMANITHDIR%/lib in your PATH.
