1
0
Fork 0
No description
Find a file
Florent Rougon 48f52f14c4 Improved infrastructure for add-ons: C++ classes, metadata file, Nasal interface
This commit adds C++ classes for add-on management, most notably
AddonManager, Addon and AddonVersion. The AddonManager is used to
register add-ons. It relies on an std::map<std::string, AddonRef> to
hold the metadata of each registered add-on (keys of the std::map are
add-on identifiers, and AddonRef is currently SGSharedPtr<Addon>).
Accessor methods are available for:

  - retrieving the list of registered or loaded add-ons (terminology
    explained in $FG_ROOT/Docs/README.add-ons);

  - checking if a particular add-on has already been registered or
    loaded;

  - for each add-on, obtaining an Addon instance which can be queried
    for its name, id, version, base path, the minimum and maximum
    FlightGear versions it requires, its base node in the Property Tree,
    its order in the load sequence, short and long description strings,
    home page, etc.

The most important metadata is made accessible in the Property Tree
under /addons/by-id/<addon-id> and the property
/addons/by-id/<addon-id>/loaded can be checked or listened to, in
order to determine when a particular add-on is loaded. There is also a
Nasal interface to access add-on metadata in a convenient way.

In order to provide this metadata, each add-on must from now on have in
its base directory a file called 'addon-metadata.xml'.

All this is documented in much more detail in
$FG_ROOT/Docs/README.add-ons.

Mailing-list discussion:

  https://sourceforge.net/p/flightgear/mailman/message/36146017/
2017-12-08 00:36:41 +01:00
3rdparty Test helper CMake macro. 2017-03-26 12:15:29 +01:00
CMakeModules Update to AeonWave version 3.0+ 2017-10-31 10:53:34 +01:00
docs-mini Bugfix: remove the (totally broken) skyblend option 2013-12-19 14:53:39 +00:00
examples/netfdm Add an example implementation for the NetFDM structure. 2004-04-27 08:55:04 +00:00
icons Add CMake Linux install directives for the icons and the .desktop file 2017-05-24 22:47:01 +02:00
man Translate man pages to Italian 2017-06-25 22:20:58 +02:00
package Add CMake Linux install directives for the icons and the .desktop file 2017-05-24 22:47:01 +02:00
scripts remove orphan directories with --remove-orphan 2017-09-01 10:33:35 +02:00
src Improved infrastructure for add-ons: C++ classes, metadata file, Nasal interface 2017-12-08 00:36:41 +01:00
tests Improved infrastructure for add-ons: C++ classes, metadata file, Nasal interface 2017-12-08 00:36:41 +01:00
utils Orderly destruction of canvas elements 2017-11-28 22:54:12 +00:00
.gitignore Enhanced git-ignore 2017-11-05 13:49:45 +00:00
AUTHORS Fix my mailing address by replacing it with my web page. 2004-11-19 22:10:41 +00:00
ChangeLog Updated ... 2001-06-18 22:25:59 +00:00
CMakeLists.txt Fix broken private header detection 2017-11-09 15:34:44 +02:00
COPYING Fix minor compiler and checker warnings. 2011-12-19 21:35:50 +01:00
INSTALL Add INSTALL file, split MSVC instructions from README.cmake 2012-06-08 13:20:39 +02:00
NEWS Update the NEWS file to reflect v2.0.0 changes. 2010-02-25 23:22:47 +01:00
README README typo 2007-07-24 05:35:31 +00:00
README.cmake Use CMAKE_INSTALL_BINDIR 2016-07-09 18:52:58 -04:00
README.msvc Add INSTALL file, split MSVC instructions from README.cmake 2012-06-08 13:20:39 +02:00
README.OpenAL KIll off ALUT now it's gone from SimGear 2012-08-22 00:10:00 +01:00
README.OSG Update README.OSG 2012-06-26 23:04:44 +02:00
README.plib Minor documentation update. 2007-11-18 14:22:40 +00:00
README.SimGear Documentation fixes: Updated the contents of README.plib and README.OpenAL. 2007-09-01 10:06:56 +00:00
Thanks Old address abandoned. 2015-08-26 08:05:30 -07:00
version new version: 2017.4.0 2017-09-17 12:14:03 +02:00

Welcome to the FlightGear Flight Simulator project.
===================================================

The primary web page for this project is: http://www.flightgear.org

For basic installation instructions see the "INSTALL" file.

Before you can run FlightGear you will also need to download and
install the "base" package which is a collection of textures, sounds,
sample scenery, and other data files needed by the sim.

For additional install help for specific platforms please browse the
"docs-mini/" subdirectory.

More complete documentation is available from our web page as a
separate distribution.

Please take a look at the "Thanks" file for a list of people who have
contributed to this project.  If you have contributed something but
don't find your name in this file.  Please send a polite reminder to
http://www.flightgear.org/~curt

For a summary of changes/additions by version see the "NEWS" file.

This project is GPL'd.  For complete details on our licensing please
see the "COPYING" file.

For information on available mailing lists, mailing list archives, and
other available source code and documenation, please visit our web
site.

FlightGear is a product of the collaboration of large international
group of volunteers.  FlightGear is a work in progress.  FlightGear
comes with no warrantee.  We hope you enjoy FlightGear and/or find it
of some value!