alutInit

Aus DGL Wiki
Wechseln zu: Navigation, Suche

alutInit

Name

alutInit - Initialisiert die ALUT-Bibliothek und erstellt einen aktuellen Kontext.


Delphi-Spezifikation

function alutInit(argcp: PInteger; argv: PPChar): TALboolean;


Parameter

argcp Zeiger auf einen Ganzzahlwert, der die Anzahl der Kommandozeilenoptionen enthält
argv Zeiger auf die Kommandozeilenoptionen


Beschreibung

Die Funktion alutInit initialisiert die ALUT und erzeugt einen OpenAL-Kontext auf dem Standardgerät und macht diesen Kontext zum aktuellen Kontext. Falls man etwas komplexeres möchte, z.B. nicht das vorgegebene Gerät oder mehrere Kontexte auf mehreren Audiogeräten, kann man stattdessen alutInitWithoutContext benutzen. alutInit prüft die übergebenen Kommandozeilenoptionen und entfernt diejenigen, welche erkannt werden. Es ist auch akzeptabel, zwei nil-Zeiger zu übergeben, wenn keine nützlichen Informationen aus der Kommandozeile erhalten werden können. Bei Erfolg gibt alutInit den Wert AL_TRUE zurück, bei Fehlschlag AL_FALSE.


Hinweise

Falls bei der Ausführung ein Fehler auftritt, kann dieser mit alutGetError erfragt werden.

Welche Kommandozeilenoptionen genau von alutInit erkannt werden, ist sowohl betriebsystem- als auch implementationsabhängig.


Beispiel

Falls man alutInit die Parameter argc und argv vom C/C++-Hauptprogramm übergibt, werden die Befehlszeilenoptionen überprüft und diejenigen, welche erkannt werden, werden genutzt und entfernt:

int main (int argc, char **argv)
{
  alutInit (&argc, argv);
  ...
}


Fehlermeldungen

ALUT_ERROR_CREATE_CONTEXT wird generiert, wenn beim Erstellen des ALC-Kontexts ein Fehler auftrat.

ALUT_ERROR_INVALID_OPERATION wird generiert, sofern ALUT bereits initialisiert wurde.

ALUT_ERROR_INVALID_VALUE wird generiert, falls nur einer der Parameter nil ist, jedoch nicht auch der andere.

ALUT_ERROR_MAKE_CONTEXT_CURRENT wird generiert, sofern der aktuelle ALC-Kontext nicht gewechselt werden konnte.

ALUT_ERROR_OPEN_DEVICE wird generiert, wenn beim Öffnen des ALC-Standardgerätes ein Fehler auftrat.


Siehe auch

alutInitWithoutContext, alutExit