1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-02-28 13:09:40 +00:00

Renamed to MANGLE

This commit is contained in:
Nicolay Korslund 2009-11-21 11:41:44 +01:00
parent 9712fa03b7
commit d4e75d41d4
15 changed files with 50 additions and 50 deletions

View file

@ -25,7 +25,7 @@ DOXYFILE_ENCODING = UTF-8
# The PROJECT_NAME tag is a single word (or a sequence of words surrounded # The PROJECT_NAME tag is a single word (or a sequence of words surrounded
# by quotes) that should identify the project. # by quotes) that should identify the project.
PROJECT_NAME = GOOI PROJECT_NAME = Mangle
# The PROJECT_NUMBER tag can be used to enter a project or revision number. # The PROJECT_NUMBER tag can be used to enter a project or revision number.
# This could be handy for archiving the generated documentation or # This could be handy for archiving the generated documentation or

View file

@ -1,4 +1,4 @@
Game-oriented object interfaces (GOOI) is licensed under the Minimal Abstraction Game Layer (Mangle) is licensed under the
'zlib/libpng' license: 'zlib/libpng' license:
---- ----

View file

@ -1,21 +1,21 @@
Welcome to GOOI v0.1 Welcome to Mangle v0.1
-------------------- ----------------------
Written by: Nicolay Korslund (korslund@gmail.com) Written by: Nicolay Korslund (korslund@gmail.com)
License: zlib/png (see LICENSE.txt) License: zlib/png (see LICENSE.txt)
WWW: http://asm-soft.com/gooi/ WWW: http://asm-soft.com/mangle/
Documentation: http://asm-soft.com/gooi/docs Documentation: http://asm-soft.com/mangle/docs
GOOI stands for Game-Oriented Object Interfaces. It is meant to become Mangle stands for Minimal Abstraction Game Layer, and it's meant to
a small set of generic interfaces for various game middleware become a small set of generic interfaces for various game middleware
libraries, such as sound, input, graphics, and so on. It consists of libraries, such as sound, input, graphics, and so on. It consists of
several independent modules, one for each of these areas. These may be several independent modules, one for each of these areas. These may be
used together to build an entire game engine, or they can be used used together to build an entire game engine, or they can be used
individually as separate libraries. individually as separate libraries.
However, GOOI does NOT actually implement a game engine, or any new However, Mangle does NOT actually implement a game engine, or any new
fundamental functionality. More on that below. fundamental functionality. More on that below.
Currently there is only the Sound module, but more will come in the Currently there is only the Sound module, but more will come in the
@ -53,24 +53,23 @@ possible.
What is it good for What is it good for
------------------- -------------------
The main point of GOOI, as we said above, is that it connects to any The main point of Mangle, as we said above, is that it connects to any
library of your choice "behind the scenes" but provides the same, library of your choice "behind the scenes" but provides the same,
super-simple interface front-end for all of them. There can benefit super-simple interface front-end for all of them. There can benefit
you in many ways: you in many ways:
- If you want to use a new library that GOOI support. You don't - If you want to use a new library that Mangle support. You don't have
have to scour the net for tutorials and usage examples, since much to scour the net for tutorials and usage examples, since much of the
of the common usage code is already included in the implementation common usage code is already included in the implementation classes.
classes.
- If you don't want to pollute your code with library-specific code. - If you don't want to pollute your code with library-specific code.
The GOOI interfaces can help you keep your code clean, and its user The Mangle interfaces can help you keep your code clean, and its
interface is often simpler than the exteral library one. user interface is often simpler than the exteral library one.
- If you are creating a library that depends on a specific feature - If you are creating a library that depends on a specific feature
(such as sound), but you don't want to lock your users into any (such as sound), but you don't want to lock your users into any
specific sound library. GOOI works as an abstraction that lets your specific sound library. Mangle works as an abstraction that lets
users select their own implementation. My own Monster scripting your users select their own implementation. My own Monster scripting
language ( http://monsterscript.net ) will use this tactic, to language ( http://monsterscript.net ) will use this tactic, to
provide native-but-generic sound, input and GUI support, among other provide native-but-generic sound, input and GUI support, among other
features. features.
@ -82,7 +81,7 @@ you in many ways:
that your favorite backend doesn't work on all the platforms you that your favorite backend doesn't work on all the platforms you
want to reach. want to reach.
The GOOI implementations are extremely light-weight - often just one The Mangle implementations are extremely light-weight - often just one
or two cpp/h pairs. You plug them directly into your program, there's or two cpp/h pairs. You plug them directly into your program, there's
no separate build step required. no separate build step required.
@ -95,22 +94,23 @@ come crashing down, because there is no big 'system' to speak of.
Past and future Past and future
--------------- ---------------
GOOI started out as a spin-off from OpenMW, another project of mine Mangle started out as a spin-off from OpenMW, another project of mine
( http://openmw.sourceforge.net ). OpenMW is an attempt to recreate ( http://openmw.sourceforge.net ). OpenMW is an attempt to recreate
the engine behind the commercial game Morrowind, using only open the engine behind the commercial game Morrowind, using only open
source software. source software.
The projects are still tightly interlinked, and the will continue to The projects are still tightly interlinked, and the will continue to
be until OpenMW is finished. That means that all near-future work on be until OpenMW is finished. That means that all near-future work on
GOOI for my part will be more or less guided by what OpenMW needs. But Mangle for my part will be more or less guided by what OpenMW
I'll gladly accept external contributions that are not OpenMW-related. needs. But I'll gladly accept external contributions that are not
OpenMW-related.
Conclusion Conclusion
---------- ----------
As you might have guessed, GOOI is more a concept in development than As you might have guessed, Mangle is more a concept in development
a finished library right now. than a finished library right now.
All feedback, ideas, concepts, questions and code are very All feedback, ideas, concepts, questions and code are very
welcome. Send them to: korslund@gmail.com welcome. Send them to: korslund@gmail.com

View file

@ -18,7 +18,7 @@ static void fail(const std::string &msg)
} }
using namespace audiere; using namespace audiere;
using namespace GOOI::Sound; using namespace Mangle::Sound;
AudiereManager::AudiereManager() AudiereManager::AudiereManager()
{ {

View file

@ -1,12 +1,12 @@
#ifndef GOOI_SOUND_AUDIERE_H #ifndef MANGLE_SOUND_AUDIERE_H
#define GOOI_SOUND_AUDIERE_H #define MANGLE_SOUND_AUDIERE_H
#include "../sound.h" #include "../sound.h"
#include <assert.h> #include <assert.h>
#include <audiere.h> #include <audiere.h>
namespace GOOI { namespace Mangle {
namespace Sound { namespace Sound {
/// Implementation of Sound::Manager for Audiere /// Implementation of Sound::Manager for Audiere

View file

@ -1,7 +1,7 @@
#include "input_ffmpeg.h" #include "input_ffmpeg.h"
#include <assert.h> #include <assert.h>
using namespace GOOI::Sound; using namespace Mangle::Sound;
// Static output buffer. Not thread safe, but supports multiple // Static output buffer. Not thread safe, but supports multiple
// streams operated from the same thread. // streams operated from the same thread.

View file

@ -1,5 +1,5 @@
#ifndef GOOI_SOUND_FFMPEG_H #ifndef MANGLE_SOUND_FFMPEG_H
#define GOOI_SOUND_FFMPEG_H #define MANGLE_SOUND_FFMPEG_H
#include "../input.h" #include "../input.h"
#include <exception> #include <exception>
@ -11,7 +11,7 @@ extern "C"
#include <libavformat/avformat.h> #include <libavformat/avformat.h>
} }
namespace GOOI { namespace Mangle {
namespace Sound { namespace Sound {
/// FFmpeg exception /// FFmpeg exception

View file

@ -1,11 +1,11 @@
#ifndef GOOI_FFMPEG_OPENAL_H #ifndef MANGLE_FFMPEG_OPENAL_H
#define GOOI_FFMPEG_OPENAL_H #define MANGLE_FFMPEG_OPENAL_H
#include "sound_pair.h" #include "sound_pair.h"
#include "input_ffmpeg.h" #include "input_ffmpeg.h"
#include "output_openal.h" #include "output_openal.h"
namespace GOOI { namespace Mangle {
namespace Sound { namespace Sound {
/// A PairManager filter that adds FFmpeg decoding to OpenAL /// A PairManager filter that adds FFmpeg decoding to OpenAL

View file

@ -3,7 +3,7 @@
#include <vector> #include <vector>
using namespace GOOI::Sound; using namespace Mangle::Sound;
// ---- Helper functions and classes ---- // ---- Helper functions and classes ----

View file

@ -1,5 +1,5 @@
#ifndef GOOI_SOUND_OPENAL_H #ifndef MANGLE_SOUND_OPENAL_H
#define GOOI_SOUND_OPENAL_H #define MANGLE_SOUND_OPENAL_H
#include "../sound.h" #include "../sound.h"
@ -7,7 +7,7 @@
#include <AL/alc.h> #include <AL/alc.h>
#include <list> #include <list>
namespace GOOI { namespace Mangle {
namespace Sound { namespace Sound {
class OpenAL_Stream_Instance; class OpenAL_Stream_Instance;

View file

@ -1,11 +1,11 @@
#ifndef GOOI_SOUND_PAIR_H #ifndef MANGLE_SOUND_PAIR_H
#define GOOI_SOUND_PAIR_H #define MANGLE_SOUND_PAIR_H
#include "sound.h" #include "sound.h"
#include <assert.h> #include <assert.h>
namespace GOOI { namespace Mangle {
namespace Sound { namespace Sound {
/** /**

View file

@ -1,10 +1,10 @@
#ifndef GOOI_SOUND_INPUT_H #ifndef MANGLE_SOUND_INPUT_H
#define GOOI_SOUND_INPUT_H #define MANGLE_SOUND_INPUT_H
#include <string> #include <string>
#include <stdint.h> #include <stdint.h>
namespace GOOI { namespace Mangle {
namespace Sound { namespace Sound {
/// An abstract interface for a read-once stream of audio data. /// An abstract interface for a read-once stream of audio data.

View file

@ -1,10 +1,10 @@
#ifndef GOOI_SOUND_SOUND_H #ifndef MANGLE_SOUND_SOUND_H
#define GOOI_SOUND_SOUND_H #define MANGLE_SOUND_SOUND_H
#include <string> #include <string>
#include "input.h" #include "input.h"
namespace GOOI { namespace Mangle {
namespace Sound { namespace Sound {
/// Abstract interface for sound instances /// Abstract interface for sound instances

View file

@ -1,6 +1,6 @@
#include "audiere_imp.h" #include "audiere_imp.h"
using namespace GOOI::Sound; using namespace Mangle::Sound;
AudiereManager mg; AudiereManager mg;

View file

@ -1,6 +1,6 @@
#include "openal_ffmpeg.h" #include "openal_ffmpeg.h"
using namespace GOOI::Sound; using namespace Mangle::Sound;
OpenAL_FFM_Manager mg; OpenAL_FFM_Manager mg;