Andre Heider
ae408db07f
PLUGINS: Use the C++ ABI to call dtors when unloading a plugin.
...
Avoid linking all plugins against libstdc++ to free up some memory
(about ~40kb on Wii per plugin). Enable it on GameCube, Wii, DS and PSP
(PS2 doesn't have __cxa_atexit support in its libc).
svn-id: r52607
2010-09-06 20:34:00 +00:00
Max Horn
f27b984fec
Fix warning & code formatting
...
svn-id: r52202
2010-08-19 08:46:19 +00:00
Tony Puccinelli
43488f789f
Ensured getPlugins is not called multiple times on Static Plugin Provider with 'ONE_PLUGIN_AT_A_TIME' defined
...
svn-id: r52080
2010-08-14 08:04:40 +00:00
Tony Puccinelli
89d76fe5a5
Refined first refinement of new plugin design. Tested successfully adding/removing/running games on Linux with only one engine plugin loaded at a time
...
svn-id: r52026
2010-08-12 06:00:19 +00:00
Tony Puccinelli
d889a706f2
gave plugin iterators more appropriate names, removed debugging printf, added comments to loadFirstPlugin and loadNextPlugin
...
svn-id: r51673
2010-08-03 01:10:36 +00:00
Tony Puccinelli
44d7414215
changed plugins so games can be added in the launcher with only one plugin loaded into memory at a time (first refinement)
...
svn-id: r51607
2010-08-02 08:43:47 +00:00
Tony Puccinelli
869e49d185
initial work on plugin design changes (already added games can be launched with only one plugin loaded at a time if you compile with a 'NEW_PLUGIN_DESIGN_FIRST_REFINEMENT' flag)
...
svn-id: r51502
2010-07-30 09:32:45 +00:00
Max Horn
c934642bdb
COMMON: Move typedef StringList from str.h to new header str-array.h
...
This removes the dependency on array.h from str.h.
Also, begun migration from the confusing type name "StringList" to
the more appropriate StringArray.
svn-id: r48282
2010-03-18 15:09:24 +00:00
Jordi Vilalta Prat
b1999a2a16
Fixed indentation and removed whitespaces at the end of line
...
svn-id: r35481
2008-12-22 11:22:15 +00:00
Max Horn
c7fde102e3
Renamed FilesystemNode -> FSNode
...
svn-id: r34716
2008-10-02 16:58:59 +00:00
Max Horn
73b833042e
Modified FilePluginProvider to use FSNodes (instead of raw filenames / paths) in its API
...
svn-id: r34709
2008-09-30 16:34:38 +00:00
Max Horn
531bcf847c
Moved FilesystemNode / FSList to namespace Common; also got rid of some 'typedef Common::String String;' name aliases
...
svn-id: r34302
2008-09-03 11:22:51 +00:00
Max Horn
4ab211f673
Removed -Wundef from the default list of compiler flags, and changed PLUGIN_ENABLED_DYNAMIC to not use 'defined()', thus avoiding compiler problems on e.g. BeOS
...
svn-id: r33114
2008-07-19 21:42:31 +00:00
Jordi Vilalta Prat
177993b145
Renamed MIDI plugins to Music plugins
...
svn-id: r32693
2008-06-13 14:30:47 +00:00
Filippos Karapetis
c9fd5fef76
Added a note about the MSVC quirk with the spaces around ENABLE_##ID
...
svn-id: r32351
2008-05-28 20:31:01 +00:00
Filippos Karapetis
057af1000f
Removed an MSVC specific hack, after discussing with jvprat. It seems that MSVC was trying to add the parenthesis after ENABLE_##ID to the check...
...
svn-id: r32347
2008-05-28 19:45:04 +00:00
Jordi Vilalta Prat
2862a30dac
Fixed some code formatting thanks to LordHoto
...
svn-id: r32275
2008-05-26 00:28:48 +00:00
Max Horn
5204d012f6
Add a tiny TODO entry for graphics scaler plugins
...
svn-id: r32194
2008-05-20 15:54:27 +00:00
Jordi Vilalta Prat
b35941c3c2
Added plugin priority so there's just one plugin that provides a module functionality.
...
svn-id: r32121
2008-05-14 17:26:05 +00:00
Jordi Vilalta Prat
eb6c809d2b
- Added more information (ID and capabilities) to the MIDI drivers
...
- Added the MidiPlugin interface to the remaining MIDI drivers
- Added an initial MidiManager to handle the MIDI plugins (just static plugins by now)
svn-id: r32117
2008-05-14 14:56:29 +00:00
Jordi Vilalta Prat
a392bc4b0e
Taken care of FilePluginProvider's FIXMEs
...
svn-id: r32085
2008-05-13 13:24:49 +00:00
Max Horn
f7a682edf9
Some more Doxygen comments, as well as some FIXMEs/TODOs
...
svn-id: r32084
2008-05-13 11:00:25 +00:00
Max Horn
2bb39e591f
Moved the engine plugin code to engines/metaengine.h; added/clarified/corrected various Doxygen comments for the plugin system
...
svn-id: r32083
2008-05-13 10:41:32 +00:00
Jordi Vilalta Prat
fe58f0ee4b
- Added operator-> to Plugin subclasses so they don't have to reimplement the PluginObject subclass interfaces (thanks to Fingolfin for suggesting it)
...
- Added the PluginSubclass template to help creating Plugin subclasses
svn-id: r32082
2008-05-13 09:30:23 +00:00
Jordi Vilalta Prat
9ba353b9d8
Keep separated arrays for each type of plugin
...
svn-id: r32046
2008-05-12 01:26:43 +00:00
Jordi Vilalta Prat
2c9968fe80
- Added an engine plugin manager and moved engine specific functionality into it
...
- base/plugins.* reorganization
svn-id: r32045
2008-05-12 00:26:29 +00:00
Filippos Karapetis
c396694f3b
Added a temporary hack to get the engine plugins working under MSVC
...
svn-id: r31904
2008-05-06 17:30:52 +00:00
Jordi Vilalta Prat
38a8aa516e
Allow static and dynamic plugins to be used at the same time
...
svn-id: r31888
2008-05-06 03:00:26 +00:00
Jordi Vilalta Prat
3f44977885
Added support to load plugins from different directories and the ability to specify the default directory from configure.
...
svn-id: r31816
2008-05-02 14:30:06 +00:00
Jordi Vilalta Prat
e3852c92a7
Remove undesired spaces and an old TODO
...
svn-id: r30827
2008-02-08 01:45:46 +00:00
Jordi Vilalta Prat
00987db3a9
Implemented plugin versioning
...
svn-id: r30826
2008-02-08 01:02:25 +00:00
Jordi Vilalta Prat
c103290e2b
Initial support for plugin types
...
svn-id: r30825
2008-02-08 00:02:23 +00:00
Jordi Vilalta Prat
e4ab5dd339
Change MetaEngine references to PluginObject where possible to make its semantics more generic.
...
svn-id: r30789
2008-02-04 18:38:22 +00:00
Max Horn
3cd1e60e7a
Moved common code from Plugin subclasses to class Plugin itself
...
svn-id: r30787
2008-02-04 13:14:52 +00:00
Max Horn
5fb7f7a4d6
Commited updated version of my own patch #1868402 : Basic savestate plugin API
...
svn-id: r30786
2008-02-04 10:15:21 +00:00
Max Horn
8a73356a2d
Revised Engine plugin API to only provide a single func which returns a MetaEngine instance. Used this to simplify the rest of the plugin system
...
svn-id: r30780
2008-02-03 18:56:47 +00:00
Max Horn
5dfabb24d0
Moved enum PluginError from base/plugins.h to common/error.h
...
svn-id: r30723
2008-02-01 23:36:45 +00:00
Max Horn
0ec8d35e4d
Revert accidental commits in rev 30372
...
svn-id: r30374
2008-01-10 12:00:10 +00:00
Max Horn
7ed64488a8
Removed obsolete FIXME
...
svn-id: r30372
2008-01-10 11:29:29 +00:00
Gregory Montoir
6c6e8657b6
added 'igor' engine for the game 'Igor: Objective Uikokahonia'
...
svn-id: r29318
2007-10-29 23:35:50 +00:00
Nicola Mettifogo
258901bab9
Merged common/stdafx.h into common/scummsys.h. All referencing files have been updated.
...
svn-id: r28966
2007-09-19 08:40:12 +00:00
Max Horn
218e132e37
Updated legal headers in source files, based on what Pidgin (the IM client formerly knowns as Gaim) does; added new (incomplete) COPYRIGHT file; updated copyright dates in a few spots
...
svn-id: r27024
2007-05-30 21:56:52 +00:00
Eugene Sandulenko
cd8a5f3a98
First phase of detection-related plugins interface improvements. Now plugins
...
return StringMap instead of fixed list of parameters. This adds great
flexibility.
Current patch should not alter any functionality, i.e. if there are regressions,
submit a report. Phase 2 will benefit from these changes and will come later.
svn-id: r25134
2007-01-20 21:27:57 +00:00
Max Horn
1f26cb8965
Reworked code in the advanced game detector (getting rid of much of the evil #define hell it consisted of previously)
...
svn-id: r24685
2006-11-12 03:23:29 +00:00
Max Horn
df5be19409
Instantiate and hook up the plugin providers in the main() function of the corresponding backends (porters may have to update their ports if they were using the POSIX or Win32 module loading code implicitly); some cleanup
...
svn-id: r24153
2006-10-07 01:05:12 +00:00
Max Horn
26e4e16800
Started to refactor the plugin code (moving backend specific stuff into backends/plugins/)
...
svn-id: r24148
2006-10-07 00:22:48 +00:00
Max Horn
4a80db4c7b
* Added copyright string to all engine plugins
...
* Modified about dialog to list all available plugins with their resp. copyright
* Modified about dialog credits to show the GPL last (like movie end credits do with their legal text, too)
svn-id: r23645
2006-07-31 13:41:21 +00:00
Max Horn
bf73598811
* Changed the createEngine() factory function of our plugins to return an error code (the engine is now passed indirectly via a double pointer)
...
* Removed Engine_Empty (obsolete now that engines can return actual error codes)
svn-id: r22199
2006-04-29 00:27:20 +00:00
Max Horn
18975a298d
Moved (Plain)GameDescriptor from base/gameDetector.h to the new base/game.h header file
...
svn-id: r21917
2006-04-15 21:20:16 +00:00
Max Horn
68cb7f52c8
- Renamed ConfigManager::getActiveDomain to getActiveDomainName, and added a new getActiveDomain method that returns a pointer to the actual active *domain*
...
- Added Engine::_targetName whose value is computed from the name of the active domain
- Removed GameDetector::_targetName, instead code now uses either Engine::_targetName or the name of the active domain
- This in turn allowed for removing usage of GameDetector in many places
svn-id: r21916
2006-04-15 20:36:41 +00:00