# Logox 4 Server

### Allgemeines

Der Logox 4 Server kapselt eine Logox 4 Engine und stellt sie anderen Applikationen für einen asynchronen Zugriff zur Verfügung.
Die Applikationen schicken Aufträge an den Logox 4 Server, welche nacheinander bearbeitet werden. Mit dem Benachrichtigunsmechanismus können die Applikationen synchron zu einer Sprachausgabe reagieren.

### SpeechFonts®

Die Logox 4 Engine benötigt mehrere Komponenten für die eigentliche Sprachausgabe. Diese Datenpakete werden in sogenannten Chunks innerhalb von LGX-Dateien verwaltet. Die Engine hat ein Standardverzeichnis, in dem sie automatisch die einzelnen Chunks auswählen kann.
Eine Zusammenstellung solcher Chunks zu einem funktionierendem Sprecher wird dabei SpeechFont® genannt.

### Lokale Funktionen vs. globale Funktionen

Der Logox 4 Server verwaltet beliebig viele Applikationen und ist damit eine mehrfach genutzte "Resource" des Computers.
Der Großteil des Funktionsumfangs des Logox 4 Servers kann lokal oder global benutzt werden. In allen lokal wirkenden Funktionen befindet sich im Funktionsname die Zeichenfolge "Local", In allen global wirkenden Funktionen befindet sich im Funktionsname dagegen die Zeichenfolge "Global".
Einstellungen, die durch die lokalen Funktionen getätigt werden, gelten nur für die Applikation, die die entsprechende Funktion aufgerufen hat. Sie wirken sich jeweils bei dem nächsten Aufruf der Funktion LogoxSpeak aus. Lokale Einstellungen können auch durch den Logox 4 Server für die Applikation gespeichert werden.
Globale Funktionen wirken sich auf alle Applikationen, die der Logox 4 Server bedient gleichermaßen und sofort aus. Wenn beispielsweise eine Appliaktion gerade etwas sprechen läßt, würde eine zweite Applikation durch Aufruf einer globalen Funktion diese Sprachausgabe modifizieren, unter Umständen sogar unbrauchbar machen.
Es wird dringend angeraten, in Applikationen, die nur einen lokalen Einfluss haben (nahezu alle bis auf Programme globaler Art, Systemeinstellungen, etc.), nur die lokal wirkenden Funktionen zu benutzen.
Ausnamen dazu bilden die Funktionen LogoxStop, LogoxPause und LogoxResume. Diese Funktionen haben stets globalen Einfluss, was aber beabsichtigt ist.

### Lokale und globale Einstellungen

Der Logox 4 Server verwaltet beliebig viele Applikationen. Die Sprechereinstellungen werden für jede angemeldete Applikation getrennt gespeichert und bei der Bearbeitung der Sprachfunktionen der Logox 4 Engine übergeben. Diese Einstellungen werden als lokale Einstellungen bezeichnet. Etwaige SpeechTags werden nach den lokalen Einstellungen der Logox 4 Engine übergeben (verändern diese also nachträglich), haben jedoch keinen Einfluss auf die im Server gespeicherten lokalen Werte.
Mit den globalen Einstellungen greifen sie unabhängig von dem gerade bearbeitetem Auftrag auf die Einstellungen der Logox 4 Engine zu. Diese globalen Einstellungen überlagern die aktuellen lokalen Einstellungen und lassen sich z.B. für eine allgemeine Lautstärke verwenden.

### Standardsprecher

Der Logox 4 Server verfügt über einen Standardsprecher, der nur mit den Servereinstellungen verändert werden kann. Wählt eine Applikation keinen eigenen SpeechFont® , dann wird dieser Standardsprecher automatisch gewählt.

### Aufruf des Servers

Der Logox 4 Server wird automatisch von der ersten Applikation gestartet, die sich mit dem Server verbindet. Trennt die letzte Applikation die Verbindung zum Server, wird dieser automatisch beendet.
Der Logox 4 Server kann manuell gestartet werden:
Aufruf: logox.exe
Sie können ihn auch manuell registrieren (damit ihn Applikationen automatisch starten können - das passiert bereits bei der Installation):
Aufruf zum Registrieren: logox.exe /RegServer
Registrierung aufheben: logox.exe /UnregServer

# Funktionen des Logox 4 Servers

Anbindung von Applikationen mit der LogoxDLL.

Copyright ©2001 G DATA Software AG.

### Allgemeine Systemfunktionen (Anmelden, Abmelden, etc.)

- LogoxDLLVersion
- LogoxServerVersion
- LogoxLicense
- LogoxInitialize
- LogoxIsConnected
- LogoxRelease

  ### Funktionen zur Sprachausgabe

- LogoxSpeak
- LogoxPause
- LogoxResume
- LogoxStop
- LogoxRecord
- LogoxIsBusy
- LogoxIsPaused

  ### Funktionen zur Sprecherverwaltung

- LogoxGetNumberOfFonts
- LogoxFindFontAlias
- LogoxGetFontName
- LogoxGetFontAlias
- LogoxGetFontUUID
- LogoxGetFontDate
- LogoxGetFontVersion
- LogoxGetFontFlags

  ### Funktionen zum Einstellen des Sprechers

- LogoxLoadSettings
- LogoxSaveSettings
- LogoxResetLocal
- LogoxResetGlobal
- LogoxSetAudioFormat
- LogoxGetAudioFormat
- LogoxSetLocalFont
- LogoxGetLocalFont
- LogoxSetGlobalFont
- LogoxGetGlobalFont
- LogoxSetLocalVolume
- LogoxGetLocalVolume
- LogoxSetGlobalVolume
- LogoxGetGlobalVolume
- LogoxSetLocalPitch
- LogoxGetLocalPitch
- LogoxSetGlobalPitch
- LogoxGetGlobalPitch
- LogoxSetLocalSpeed
- LogoxGetLocalSpeed
- LogoxSetGlobalSpeed
- LogoxGetGlobalSpeed
- LogoxSetLocalIntonation
- LogoxGetLocalIntonation
- LogoxSetGlobalIntonation
- LogoxGetGlobalIntonation
- LogoxSetLocalRoughness
- LogoxGetLocalRoughness
- LogoxSetGlobalRoughness
- LogoxGetGlobalRoughness

  ### Funktionen für Benachrichtigungen

- LogoxNotifyModeLocal
- LogoxNotifyModeGlobal
- LogoxNotifyAction
- LogoxNotifyMark
- LogoxNotifyChunk
- LogoxNotifyParam
- LogoxNotifySentence
- LogoxNotifyWord
- LogoxNotifyMouth
- LogoxNotifyViseme
- LogoxNotifyBroadcast
- LogoxBroadcast

  # LogoxDLLVersion

  UINT WINAPI LogoxDLLVersion(void)

  Abfrage der Logox 4 DLL Versionsnummer.

  ### Rückgabewert

  DLL Versionsnummer als 32 Bit Wert. Das höchstwertige Byte enthält die Hauptversionsnummer.

  ### Kommentar

  Sie können die einzelnen Bestandteile mit den Makrofunktionen in der Datei Lgx4.h extrahieren:
  #define LOGOX_LONGBYTE3(v) ((unsigned char)((v)>>24))
  #define LOGOX_LONGBYTE2(v) ((unsigned char)((v)>>16))
  define LOGOX_LONGBYTE1(v) ((unsigned char)((v)>>8))
  #define LOGOX_LONGBYTE0(v) ((unsigned char)(v))

  ### Beispiel

      unsigned long nVersion=LogoxDLLVersion();

      if (nVersion>=0x04000000)
      {
      	char szVersion[16];

      	sprintf(szVersion,"%d.%d.%d.%d",
      		(nVersion>>24)&0xFF,
      		(nVersion>>16)&0xFF,
      		(nVersion>>8)&0xFF,
      		nVersion&0xFF);

      	// Versionsstring 'szVersion' enthält die Logox DLL Versionsnummer.
      }

  ### Siehe Auch

  LogoxServerVersion

  # LogoxServerVersion

  UINT WINAPI LogoxServerVersion(void)

  Abfrage der Logox 4 Server Versionsnummer.

  ### Rückgabewert

  Versionsnummer des Logox Servers als 32 Bit Wert. Das höchstwertige Byte enthält die Hauptversionsnummer.

  ### Kommentar

  Sie können die einzelnen Bestandteile mit den Makrofunktionen in der Datei Lgx4.h extrahieren:
  #define LOGOX_LONGBYTE3(v) ((unsigned char)((v)>>24))
  #define LOGOX_LONGBYTE2(v) ((unsigned char)((v)>>16))
  #define LOGOX_LONGBYTE1(v) ((unsigned char)((v)>>8))
  #define LOGOX_LONGBYTE0(v) ((unsigned char)(v))

  ### Beispiel

      unsigned long nVersion=LogoxServerVersion();

      if (nVersion>=0x04000000)
      {
      	char szVersion[16];

      	sprintf(szVersion,"%d.%d.%d.%d",
      		(nVersion>>24)&0xFF,
      		(nVersion>>16)&0xFF,
      		(nVersion>>8)&0xFF,
      		nVersion&0xFF);

      	// Versionsstring 'szVersion' enthält die Server Versionsnummer.
      }

  ### Siehe Auch

  LogoxDLLVersion

  # LogoxLicense

  BOOL WINAPI LogoxLicense(LPCTSTR szLicense)

  Angabe der Lizenzierungsinformation.

  ### Rückgabewert

  Ergebnis der Lizenzierung:

  TRUE
    Die Lizenzangaben wurden korrekt übergeben.

  FALSE
    Es ist ein Fehler aufgetreten.

  ### Parameter

  szLicense
    Lizenzierungsstring

  ### Kommentar

  Sie müssen erst die Lizenzierung vornehmen, bevor Sie vollen Zugriff auf den Logox Server erhalten.

  ### Beispiel

      if (LogoxLicense("MeineLizenzierungsangaben"))
      {
      	// Lizenzierungsangaben wurden übergeben

      	LogoxInitialize();
      }

  ### Siehe Auch

  LogoxInitialize

  # LogoxInitialize

  BOOL WINAPI LogoxInitialize(void)

  Initialisiert den Logox 4 Server. Ein bereits aktiver Logox 4 Server wird gesucht und mit der Applikation verbunden. Wurde kein aktiver Logox 4 Server gefunden, wird dieser automatisch gestartet.

  ### Rückgabewert

  Ergebnis der Initialisierung:

  TRUE
    Initialisierung war erfolgreich.

  FALSE
    Es ist ein Fehler bei der Initialisierung aufgetreten.

  ### Kommentar

  Sie sollten vor dem Aufruf dieser Funktion die Anwendung mit LogoxLicense für den vollen Funktionsumfang lizenzieren.

  ### Beispiel

      if (LogoxLicense("MeineLizenzierungsangaben"))
      {
      	if (LogoxInitialize())
      	{
      		// ...
      	}
      }

  ### Siehe Auch

  LogoxLicense LogoxIsConnected LogoxRelease

  # LogoxIsConnected

  BOOL WINAPI LogoxIsConnected(void)

  Überprüft die Verbindung zum Logox 4 Server.

  ### Rückgabewert

  Zustand der Verbindung:

  TRUE
    Die Applikation ist mit dem Server verbunden.

  FALSE
    Die Verbindung ist getrennt.

  ### Beispiel

      if (LogoxIsConnected())
      {
      	// Die Verbindung zum Logox 4 Server besteht.
      }

  ### Siehe Auch

  LogoxInitialize LogoxRelease

  # LogoxRelease

  void WINAPI LogoxRelease(void)

  Trennt die Verbindung zum Logox 4 Server.

  ### Kommentar

  Die Verbindung wird automatisch beim Beenden der Applikation getrennt.

  ### Beispiel

      if (LogoxIsConnected())
      {
      	LogoxRelease();	// Verbindung zum Server beenden
      }

  ### Siehe Auch

  LogoxInitialize LogoxIsConnected

  # LogoxSpeak

  BOOL WINAPI LogoxSpeak(LPCTSTR szText, UINT nActionID)

  Übergibt einen Text an den Logox 4 Server zum Sprechen.

  ### Rückgabewert

  Zustand der Textübergabe:

  TRUE
    Der Text wurde korrekt dem Server übergeben.

  FALSE
    Fehler beim Ausführen des Befehls.

  ### Parameter

  szText
    Text für die Sprachausgabe.

  nActionID
    AktionsID für Benachrichtigungen (0 = keine Benachrichtigung)

  ### Kommentar

  Die einzelnen Texte werden der Reihe nach im Server abgelegt und gesprochen. Die Applikation kann sich benachrichtigen lassen, wann die Ausgabe eines (jeden) Textes beginnt und wann sie abgeschlossen ist.
  Es werden die zuvor gesetzten Einstellungen für die Sprachausgabe benutzt.

  ### Beispiel

      LogoxSpeak("Guten Tag, dieses ist ein einfacher Text!",0);

  ### Siehe Auch

  LogoxPause LogoxResume LogoxStop LogoxRecord LogoxNotifyAction

  # LogoxPause

  BOOL WINAPI LogoxPause(void)

  Eine aktuelle Sprachausgabe wird angehalten.

  ### Rückgabewert

  Funktionsrückgabewert:

  TRUE
    Die Sprachausgabe wird angehalten.

  FALSE
    Die Sprachausgabe konnte nicht angehalten werden.

  ### Kommentar

  Mit dieser Funktion wird der aktuell gesprochene Text angehalten. Diese Funktion wirkt global, d.h. es ist unerheblich, welche Applikation den aktuellen Text übergeben hat.

  ### Beispiel

      // Für die Implementierung einer Pause-Taste bietet sich folgendes Vorgehen an:

      if (LogoxIsPaused())
      {
      	LogoxResume();
      }
      else
      {
      	LogoxPause();
      }

  ### Siehe Auch

  LogoxSpeak LogoxResume LogoxStop

  # LogoxResume

  BOOL WINAPI LogoxResume(void)

  Eine angehaltene Sprachausgabe wird fortgesetzt.

  ### Rückgabewert

  Funktionsrückgabewert

  TRUE
    Die Sprachausgabe wird fortgesetzt.

  FALSE
    Es ist ein Fehler aufgetreten.

  ### Kommentar

  Diese Funktion arbeitet wie LogoxPause global, d.h. es ist unerheblich, welche Applikation die Sprachausgabe angehalten hat, bzw. welche Applikation gerade spricht.

  ### Siehe Auch

  LogoxSpeak LogoxPause LogoxStop

  # LogoxStop

  BOOL WINAPI LogoxStop(void)

  Die Sprachausgabe wird abgebrochen.

  ### Rückgabewert

  Funktionsrückgabewert:

  TRUE
    Die Sprachausgabe wird abgebrochen, vorhandene Aufträge werden gelöscht.

  FALSE
    Es ist ein Fehler aufgetreten.

  ### Kommentar

  Alle weiteren zu sprechenden Texte werden ebenfalls im Server gelöscht. Es ist unerheblich, welche Applikationen die Sprachausgabe aktiviert haben.

  ### Siehe Auch

  LogoxSpeak LogoxPause LogoxResume

  # LogoxRecord

  BOOL WINAPI LogoxRecord(LPCTSTR szFile, LPCTSTR szText, UINT nActionID)

  Wandelt einen Text in eine Wave Datei.

  ### Rückgabewert

  Status der Textübergabe:

  TRUE
    Der Text wurde korrekt dem Server übergeben.

  FALSE
    Fehler beim Ausführen des Befehls.

  ### Parameter

  szFile
    Name der Wave Datei.

  szText
    Umzuwandelnder Text.

  nActionID
    AktionsID (Angabe einer Zahl zwischen 1 und 65535 für Benachrichtigungen)

  ### Kommentar

  Der Text wird dem Server übergeben und anschließend in die angegebene Wave Datei umgewandelt.

  ### Siehe Auch

  LogoxSetAudioFormat LogoxGetAudioFormat LogoxNotifyAction

  # LogoxIsBusy

  BOOL WINAPI LogoxIsBusy(void)

  Fragt ab, ob gerade Sprache ausgegeben wird.

  ### Rückgabewert

  Status der Sprachausgabe

  TRUE
    Es wird gerade Sprache ausgegeben.

  FALSE
    Es findet keine Sprachausgabe statt.

  ### Siehe Auch

  LogoxSpeak LogoxPause LogoxResume LogoxStop LogoxRecord

  # LogoxIsPaused

  BOOL WINAPI LogoxIsPaused(void)

  Fragt ab, ob eine Sprachausgabe angehalten wurde.

  ### Rückgabewert

  Status der Sprachausgabe

  TRUE
    Die Sprachausgabe wurde angehalten.

  FALSE
    Die Sprachausgabe wurde nicht angehalten.

  ### Kommentar

  Diese Funktion arbeitet global, d.h. es ist unerheblich, welche Applikation die Sprachausgabe angehalten hat.

  ### Siehe Auch

  LogoxPause LogoxResume

  # LogoxGetNumberOfFonts

  UINT WINAPI LogoxGetNumberOfFonts(void)

  Ermittelt die derzeit im Logox 4 Server verfügbaren SpeechFonts® .

  ### Rückgabewert

  Anzahl der verfügbaren SpeechFonts® .

  ### Beispiel

      // Alle im Server verfügbaren SpeechFonts abfragen

      UINT nNumber=LogoxGetNumberOfFonts();
      UINT i;

      for (i=0;i<nNumber;i++)
      {
      	char szName[32];
      	char szAlias[16];
      	unsigned char UUID[16];
      	unsigned long nDate;
      	unsigned long nVersion;
      	unsigned long nFlags;

      	LogoxGetFontName(i,szName,sizeof(szName));
      	LogoxGetAliasName(i,szAlias,sizeof(szAlias));
      	LogoxGetFontUUID(i,UUID,sizeof(UUID));
      	nDate = LogoxGetFontDate(i);
      	nVersion = LogoxGetFontVersion(i);
      	nFlags = LogoxGetFontFlags(i);
      }

  ### Siehe Auch

  LogoxGetFontName LogoxGetFontAlias LogoxGetFontUUID LogoxGetFontDate LogoxGetFontVersion LogoxGetFontFlags

  # LogoxFindFontAlias

  UINT WINAPI LogoxFindFontAlias(LPCTSTR szAlias)

  Sucht die Kurzbezeichnung (den Alias) in den SpeechFonts® .

  ### Rückgabewert

  Index des SpeechFonts® mit der Kurzbezeichnung, 0xFFFFFFFF = nicht gefunden.

  ### Parameter

  szAlias
    Kurzbezeichnung des SpeechFonts® (Alias).

  ### Beispiel

      // Sucht den SpeechFont mit dem Alias LGX.DE.SILKE und setzt diesen anschließend.

      UINT nFont=LogoxFindFontAlias("LGX.DE.SILKE");

      LogoxSetLocalFont(nFont);
      LogoxSpeak("Text soll mit Silke gesprochen werden.");

      // wenn der SpeechFont nicht gefunden wurde, wird der Standard Sprecher gewählt.

  ### Siehe Auch

  LogoxGetNumberOfFonts LogoxGetFontName LogoxGetFontAlias LogoxGetFontUUID LogoxGetFontDate LogoxGetFontVersion LogoxGetFontFlags

  # LogoxGetFontName

  UINT WINAPI LogoxGetFontName(UINT nIndex, LPTSTR szName, UINT nBytes)

  Den Namen eines SpeechFonts® abfragen.

  ### Rückgabewert

  Anzahl der geschriebenen Bytes.

  ### Parameter

  nIndex
    Index des SpeechFonts® .

  szName
    Speicherbereich für den Namen.

  nBytes
    Größe des Speicherbereichs in Bytes.

  ### Siehe Auch

  LogoxGetNumberOfFonts LogoxGetFontAlias LogoxGetFontUUID LogoxGetFontDate LogoxGetFontVersion LogoxGetFontFlags

  # LogoxGetFontAlias

  UINT WINAPI LogoxGetFontAlias(UINT nIndex, LPTSTR szAlias, UINT nBytes)

  Die Kurzbezeichnung (den Alias) des SpeechFonts® abfragen.

  ### Rückgabewert

  Anzahl der geschriebenen Bytes.

  ### Parameter

  nIndex
    Index des SpeechFonts® .

  szAlias
    Speicherbereich für die Kurzbezeichnung.

  nBytes
    Größe des Speicherbereichs in Bytes.

  ### Siehe Auch

  LogoxGetNumberOfFonts LogoxGetFontName LogoxGetFontUUID LogoxGetFontDate LogoxGetFontVersion LogoxGetFontFlags

  # LogoxGetFontUUID

  UINT WINAPI LogoxGetFontUUID(UINT nIndex, unsigned char* pUUID, UINT nBytes)

  Die Identifizierungsnummer (UUID) des SpeechFonts® abfragen.

  ### Rückgabewert

  Anzahl der geschriebenen Bytes.

  ### Parameter

  nIndex
    Index des SpeechFonts® .

  pUUID
    Speicherbereich für die Identifizierungsnummer.

  nBytes
    Größe des Speicherbereichs in Bytes.

  ### Siehe Auch

  LogoxGetNumberOfFonts LogoxGetFontName LogoxGetFontAlias Logox GetFontDate Logox GetFontVersion LogoxGetFontFlags

  # LogoxGetFontDate

  UINT WINAPI LogoxGetFontDate(UINT nIndex)

  Das Erstellungsdatum eines SpeechFonts® abfragen.

  ### Rückgabewert

  Erstellungsdatum als 32 Bit Wert.

  ### Parameter

  nIndex
    Index des SpeechFonts® .

  ### Kommentar

  Sie können die einzelnen Bestandteile mit den Makrofunktionen in der Datei Lgx4.h extrahieren:
  #define LOGOX_DATEYEAR(v) (((v)/(13*32*24*60))%7000)
  #define LOGOX_DATEMONTH(v) (((v)/(32*24*60))%13)
  #define LOGOX_DATEDAY(v) (((v)/(24*60))%32)
  #define LOGOX_DATEHOUR(v) (((v)/60)%24)
  #define LOGOX_DATEMIN(v) ((v)%60)

  ### Siehe Auch

  LogoxGetNumberOfFonts LogoxGetFontName LogoxGetFontAlias LogoxGetFontUUID LogoxGetFontVersion LogoxGetFontFlags

  # LogoxGetFontVersion

  UINT WINAPI LogoxGetFontVersion(UINT nIndex)

  Die Versionsnummer des SpeechFonts® abfragen.

  ### Rückgabewert

  Versionsnummer.

  ### Parameter

  nIndex
    Index des SpeechFonts® .

  ### Siehe Auch

  LogoxGetNumberOfFonts LogoxGetFontName LogoxGetFontAlias LogoxGetFontUUID Logox GetFontDate LogoxGetFontFlags

  # LogoxGetFontFlags

  UINT WINAPI LogoxGetFontFlags(UINT nIndex)

  Weitere Flags des SpeechFonts® abfragen.

  ### Rückgabewert

  Flags.

  ### Parameter

  nIndex
    Index des SpeechFonts® .

  ### Siehe Auch

  LogoxGetNumberOfFonts LogoxGetFontName LogoxGetFontAlias LogoxGetFontUUID LogoxGetFontDate LogoxGetFontVersion LogoxGetFontFlags

  # LogoxLoadSettings

  BOOL WINAPI LogoxLoadSettings(LPCTSTR szApplicationName)

  Lädt die Sprechereinstellungen.

  ### Rückgabewert

  Ergebnis des Ladevorgangs:

  TRUE
    Die Sprechereinstellungen wurden für die Applikation eingeladen.

  FALSE
    Die Sprechereinstellungen konnten nicht geladen werden.

  ### Parameter

  szApplicationName
    Name der Applikation.

  ### Kommentar

  Die Sprechereinstellungen umfassen: SpeechFont® , Volume, Pitch, Speed, Intonation und Roughness. Benutzen Sie bitte immer eindeutige Applikationsbezeichnungen, um Konflikte zu vermeiden.

  ### Siehe Auch

  LogoxSaveSettings

  # LogoxSaveSettings

  BOOL WINAPI LogoxSaveSettings(LPCTSTR szApplicationName)

  Speichert die Sprechereinstellungen.

  ### Rückgabewert

  Ergebnis des Speichervorgangs.

  TRUE
    Die Sprechereinstellungen dieser Applikation wurden gespeichert.

  FALSE
    Die Sprechereinstellungen konnten nicht gespeichert werden.

  ### Parameter

  szApplicationName
    Name der Applikation.

  ### Kommentar

  Die Sprechereinstellungen umfassen: SpeechFont® , Volume, Pitch, Speed, Intonation und Roughness. Benutzen Sie bitte immer eindeutige Applikationsbezeichnungen, um Konflikte zu vermeiden.

  ### Siehe Auch

  LogoxSaveSettings

  # LogoxResetLocal

  BOOL WINAPI LogoxResetLocal(void)

  Die Sprechereinstellungen werden auf Standardwerte gesetzt, der gewählte SpeechFont® bleibt erhalten.

  ### Rückgabewert

  Status des Zurücksetzens

  TRUE
    Die Sprechereinstellungen wurden zurückgesetzt.

  FALSE
    Die Sprechereinstellungen konnten nicht zurückgesetzt werden.

  ### Kommentar

  Folgende Sprechereinstellungen werden zurückgesetzt: AudioFormat, Volume, Pitch, Speed, Intonation und Roughness.

  ### Siehe Auch

  LogoxResetGlobal

  # LogoxResetGlobal

  BOOL WINAPI LogoxResetGlobal(void)

  Die globalen Sprechereinstellungen werden zurückgesetzt.

  ### Rückgabewert

  Status des Zurücksetzens.

  TRUE
    Die Sprechereinstellungen wurden zurückgesetzt.

  FALSE
    Die Sprechereinstellungen konnten nicht zurückgesetzt werden.

  ### Kommentar

  Folgende Sprechereinstellungen werden zurückgesetzt: Volume, Pitch, Speed, Intonation und Roughness.

  ### Siehe Auch

  LogoxResetLocal

  # LogoxSetAudioFormat

  BOOL WINAPI LogoxSetAudioFormat(UINT nAudioFormat)

  Setzt das AudioFormat für die Wave Datei Erstellung.

  ### Rückgabewert

  Ergebnis der Formatänderung:

  TRUE
    Das neue AudioFormat wurde gesetzt.

  FALSE
    Das AudioFormat konnte nicht geändert werden.

  ### Parameter

  nAudioFormat
    Das neue AudioFormat als 32 Bit Wert.

  ### Kommentar

  Das AudioFormat wird als 32 Bit Wert angegeben und besteht aus der SampleRate, Bits pro Sample und der Anzahl der Kanäle.
  Die Informationen werden wie folgt abgelegt:
  (r=Rate,b=Bits,c=Channel) rrrrrrrr rrrrrrrr rrrrrrrr bbbbbbcc
  In der Datei Lgx4.h sind die gängigen Typen vordefiniert:
  #define LOGOX_8kHz8BitMono LOGOX_AUDIOFORMAT(8000,8,1)
  #define LOGOX_8kHz8BitStereo LOGOX_AUDIOFORMAT(8000,8,2)
  #define LOGOX_8kHz16BitMono LOGOX_AUDIOFORMAT(8000,16,1)
  #define LOGOX_8kHz16BitStereo LOGOX_AUDIOFORMAT(8000,16,2)
  #define LOGOX_11kHz8BitMono LOGOX_AUDIOFORMAT(11025,8,1)
  #define LOGOX_11kHz8BitStereo LOGOX_AUDIOFORMAT(11025,8,2)
  #define LOGOX_11kHz16BitMono LOGOX_AUDIOFORMAT(11025,16,1)
  #define LOGOX_11kHz16BitStereo LOGOX_AUDIOFORMAT(11025,16,2)
  #define LOGOX_12kHz8BitMono LOGOX_AUDIOFORMAT(12000,8,1)
  #define LOGOX_12kHz8BitStereo LOGOX_AUDIOFORMAT(12000,8,2)
  #define LOGOX_12kHz16BitMono LOGOX_AUDIOFORMAT(12000,16,1)
  #define LOGOX_12kHz16BitStereo LOGOX_AUDIOFORMAT(12000,16,2)
  #define LOGOX_16kHz8BitMono LOGOX_AUDIOFORMAT(16000,8,1)
  #define LOGOX_16kHz8BitStereo LOGOX_AUDIOFORMAT(16000,8,2)
  #define LOGOX_16kHz16BitMono LOGOX_AUDIOFORMAT(16000,16,1)
  #define LOGOX_16kHz16BitStereo LOGOX_AUDIOFORMAT(16000,16,2)
  #define LOGOX_22kHz8BitMono LOGOX_AUDIOFORMAT(22050,8,1)
  #define LOGOX_22kHz8BitStereo LOGOX_AUDIOFORMAT(22050,8,2)
  #define LOGOX_22kHz16BitMono LOGOX_AUDIOFORMAT(22050,16,1)
  #define LOGOX_22kHz16BitStereo LOGOX_AUDIOFORMAT(22050,16,2)
  #define LOGOX_24kHz8BitMono LOGOX_AUDIOFORMAT(24000,8,1)
  #define LOGOX_24kHz8BitStereo LOGOX_AUDIOFORMAT(24000,8,2)
  #define LOGOX_24kHz16BitMono LOGOX_AUDIOFORMAT(24000,16,1)
  #define LOGOX_24kHz16BitStereo LOGOX_AUDIOFORMAT(24000,16,2)
  #define LOGOX_32kHz8BitMono LOGOX_AUDIOFORMAT(32000,8,1)
  #define LOGOX_32kHz8BitStereo LOGOX_AUDIOFORMAT(32000,8,2)
  #define LOGOX_32kHz16BitMono LOGOX_AUDIOFORMAT(32000,16,1)
  #define LOGOX_32kHz16BitStereo LOGOX_AUDIOFORMAT(32000,16,2)
  #define LOGOX_44kHz8BitMono LOGOX_AUDIOFORMAT(44100,8,1)
  #define LOGOX_44kHz8BitStereo LOGOX_AUDIOFORMAT(44100,8,2)
  #define LOGOX_44kHz16BitMono LOGOX_AUDIOFORMAT(44100,16,1)
  #define LOGOX_44kHz16BitStereo LOGOX_AUDIOFORMAT(44100,16,2)
  #define LOGOX_48kHz8BitMono LOGOX_AUDIOFORMAT(48000,8,1)
  #define LOGOX_48kHz8BitStereo LOGOX_AUDIOFORMAT(48000,8,2)
  #define LOGOX_48kHz16BitMono LOGOX_AUDIOFORMAT(48000,16,1)
  #define LOGOX_48kHz16BitStereo LOGOX_AUDIOFORMAT(48000,16,2)
  #define LOGOX_DEFAULT_AUDIO LOGOX_44kHz16BitMono

  ### Siehe Auch

  LogoxRecord LogoxGetAudioFormat

  # LogoxGetAudioFormat

  UINT WINAPI LogoxGetAudioFormat(void)

  Abfrage des Audio Formats für die Wave Datei Erstellung.

  ### Rückgabewert

  AudioFormat als 32 Bit Wert.

  ### Kommentar

  Das AudioFormat wird als 32 Bit Wert zurückgegeben und besteht aus der SampleRate, Bits pro Sample und der Anzahl der Kanäle.
  Die Informationen werden wie folgt abgelegt:
  (r=Rate,b=Bits,c=Channel) rrrrrrrr rrrrrrrr rrrrrrrr bbbbbbcc In der Datei Lgx4.h stehen Makros zum Auswerten des Formats:
  #define LOGOX_AUDIORATE(fmt) (((fmt)>>8)&0x00FFFFFF)
  #define LOGOX_AUDIOBITS(fmt) (((fmt)>>2)&0x0000003F)
  #define LOGOX_AUDIOCHANNEL(fmt) ((fmt)&0x00000003)

  ### Siehe Auch

  LogoxRecord LogoxSetAudioFormat

  # LogoxSetLocalFont

  BOOL WINAPI LogoxSetLocalFont(UINT nFont)

  Setzt den SpeechFont® für die Applikation.

  ### Rückgabewert

  Zustand der Auswahl:

  TRUE
    Der angegebene SpeechFont® wurde gewählt.

  FALSE
    Fehler beim Ausführen des Befehls.

  ### Parameter

  nFont
    Index auf den SpeechFont® .

  ### Kommentar

  Der SpeechFont® wird in Form einer Indexnummer übergeben. Es gibt keine feste Reihenfolge für die im System befindlichen SpeechFonts® . Die Indexnummer sollte z.B. über den Alias ermittelt werden (siehe LogoxFindFontAlias).
  Wählen Sie als SpeechFont® die Nummer 0xFFFFFFFF (-1) dann wird jeweils der Standardsprecher für die Sprachausgaben gewählt. Dieser kann mit dem Logox 4 Server eingestellt werden.

  ### Beispiel

      // SpeechFont Silke setzen

      UINT nFont=LogoxFindFontAlias("LGX.DE.SILKE");

      LogoxSetLocalFont(nFont);
      LogoxSpeak("Jetzt spreche ich mal mit Silke!");

      LogoxSetLocalFont(0xFFFFFFFF);
      LogoxSpeak("Jetzt wieder mit dem Standard SpeechFont!");

  ### Siehe Auch

  LogoxGetLocalFont LogoxSetGlobalFont LogoxGetGlobalFont

  # LogoxGetLocalFont

  UINT WINAPI LogoxGetLocalFont(void)

  Abfrage des eingestellten SpeechFonts® .

  ### Rückgabewert

  Nummer des eingestellten SpeechFonts® .

  ### Kommentar

  Der SpeechFont® wird in Form einer Indexnummer übergeben. Weitere Informationen über diesen SpeechFont® erhält man mit den Font Funktionen (siehe LogoxGetFontName LogoxGetFontAlias LogoxGetFontUUID LogoxGetFontDate LogoxGetFontVersion LogoxGetFontFlags LogoxFindFontAlias).

  ### Siehe Auch

  LogoxSetLocalFont LogoxSetGlobalFont LogoxGetGlobalFont

  # LogoxSetGlobalFont

  BOOL WINAPI LogoxSetGlobalFont(UINT nFont)

  Setzt den SpeechFont® global.

  ### Rückgabewert

  Zustand der Auswahl:

  TRUE
    Der angegebene SpeechFont® wurde global gesetzt.

  FALSE
    Der SpeechFont® konnte nicht gesetzt werden.

  ### Parameter

  nFont
    Index auf den SpeechFont® .

  ### Kommentar

  Der SpeechFont® wird in Form einer Indexnummer übergeben. Es gibt keine feste Reihenfolge für die im System befindlichen SpeechFonts® . Die Indexnummer sollte z.B. über den Alias ermittelt werden (siehe LogoxFindFontAlias).

  ### Siehe Auch

  LogoxSetLocalFont LogoxGetLocalFont LogoxGetGlobalFont

  # LogoxGetGlobalFont

  UINT WINAPI LogoxGetGlobalFont(void)

  Fragt den globalen SpeechFont® ab.

  ### Rückgabewert

  Nummer des eingestellten SpeechFonts® .

  ### Kommentar

  Der SpeechFont® wird in Form einer Indexnummer übergeben. Weitere Informationen über diesen SpeechFont® erhält man mit den Font Funktionen (siehe LogoxGetFontName LogoxGetFontAlias LogoxGetFontUUID LogoxGetFontDate LogoxGetFontVersion LogoxGetFontFlags LogoxFindFontAlias).

  ### Siehe Auch

  LogoxSetLocalFont LogoxSetGlobalFont LogoxGetGlobalFont

  # LogoxSetLocalVolume

  BOOL WINAPI LogoxSetLocalVolume(long nVolume)

  Setzt die Lautstärke für diese Applikation.

  ### Rückgabewert

  Status der Lautstärkeänderung:

  TRUE
    Der angegebene Lautstärke wurde gesetzt.

  FALSE
    Die Lautstärke konnte nicht gesetzt werden.

  ### Parameter

  nVolume
    Lautstärke in 1/10 dB.

  ### Kommentar

  Die Lautstärke wird in 1/10 dB angegeben. Ein möglicher Wertebereich liegt z.B. zwischen -980 und 120. Dies entspricht einer Lautstärke von -98dB bis 12dB.

  ### Siehe Auch

  LogoxGetLocalVolume LogoxSetGlobalVolume LogoxGetGlobalVolume

  # LogoxGetLocalVolume

  long WINAPI LogoxGetLocalVolume(void)

  Abfrage der Lautstärke für diese Applikation.

  ### Rückgabewert

  Lokale Lautstärke in 1/10 dB.

  ### Siehe Auch

  LogoxSetLocalVolume LogoxSetGlobalVolume LogoxGetGlobalVolume

  # LogoxSetGlobalVolume

  BOOL WINAPI LogoxSetGlobalVolume(long nVolume)

  Setzt die globale Lautstärke.

  ### Rückgabewert

  Status der Lautstärkeänderung.

  TRUE
    Die angegebene Lautstärke wurde gesetzt.

  FALSE
    Die Laustärke konnte nicht gesetzt werden.

  ### Parameter

  nVolume
    Lautstärke in 1/10 dB.

  ### Kommentar

  Die Lautstärke wird in 1/10 dB angegeben. Ein möglicher Wertebereich liegt z.B. zwischen -980 und 120. Dies entspricht einer Lautstärke von -98dB bis 12dB.

  ### Siehe Auch

  LogoxSetLocalVolume LogoxGetLocalVolume LogoxGetGlobalVolume

  # LogoxGetGlobalVolume

  long WINAPI LogoxGetGlobalVolume(void)

  Abfrage der globalen Lautstärke.

  ### Rückgabewert

  Globale Lautstärke in 1/10 dB.

  ### Siehe Auch

  LogoxSetLocalVolume LogoxGetLocalVolume LogoxSetGlobalVolume

  # LogoxSetLocalPitch

  BOOL WINAPI LogoxSetLocalPitch(long nPitch)

  Setzt die Tonhöhe für diese Applikation.

  ### Rückgabewert

  Status der Tonhöhenänderung.

  TRUE
    Die angegebene Tonhöhe wurde gesetzt.

  FALSE
    Die Tonhöhe konnte nicht verändert werden.

  ### Parameter

  nPitch
    Tonhöhe in 1/10 Hz.

  ### Kommentar

  Die Tonhöhe wird in 1/10 Hz angegeben. Ein möglicher Wertebereich liegt z.B. zwischen -1000 und 1000. Dies entspricht einer Tonhöhenänderung von -100Hz bis 100Hz.

  ### Siehe Auch

  LogoxGetLocalPitch LogoxSetGlobalPitch LogoxGetGlobalPitch

  # LogoxGetLocalPitch

  long WINAPI LogoxGetLocalPitch(void)

  Abfrage der Tonhöhe für diese Applikation.

  ### Rückgabewert

  Tonhöhe in 1/10 Hz.

  ### Siehe Auch

  LogoxSetLocalPitch LogoxSetGlobalPitch LogoxGetGlobalPitch

  # LogoxSetGlobalPitch

  BOOL WINAPI LogoxSetGlobalPitch(long nPitch)

  Setzt die globale Tonhöhe.

  ### Rückgabewert

  Status der Tonhöhenänderung:

  TRUE
    Der angegebene Tonhöhe wurde gesetzt.

  FALSE
    Die Tonhöhe konnte nicht verändert werden.

  ### Parameter

  nPitch
    Tonhöhe in 1/10 Hz.

  ### Kommentar

  Die Tonhöhe wird in 1/10 Hz angegeben. Ein möglicher Wertebereich liegt z.B. zwischen -1000 und 1000. Dies entspricht einer Tonhöhenänderung von -100Hz bis 100Hz.

  ### Siehe Auch

  LogoxSetLocalPitch LogoxGetLocalPitch LogoxGetGlobalPitch

  # LogoxGetGlobalPitch

  long WINAPI LogoxGetGlobalPitch(void)

  Abfrage der globalen Tonhöhe.

  ### Rückgabewert

  Globale Tonhöhe in 1/10 Hz.

  ### Siehe Auch

  LogoxSetLocalPitch LogoxGetLocalPitch LogoxSetGlobalPitch

  # LogoxSetLocalSpeed

  BOOL WINAPI LogoxSetLocalSpeed(long nSpeed)

  Setzt die Sprechgeschwindigkeit für diese Applikation.

  ### Rückgabewert

  Status der Sprechgeschwindigkeitsänderung:

  TRUE
    Die angegebene Sprechgeschwindigkeit wurde gesetzt.

  FALSE
    Die Sprechgeschwindigkeit konnte nicht verändert werden.

  ### Parameter

  nSpeed
    Sprechgeschwindigkeit in %.

  ### Kommentar

  Die Sprechgeschwindigkeit wird in % angegeben. Ein möglicher Wertebereich liegt z.B. zwischen 10 und 300. Dies entspricht einer Sprechgeschwindigkeit von 10% bis 300%.

  ### Siehe Auch

  LogoxGetLocalSpeed LogoxSetGlobalSpeed LogoxGetGlobalSpeed

  # LogoxGetLocalSpeed

  long WINAPI LogoxGetLocalSpeed(void)

  Abfrage der Sprechgeschwindigkeit für diese Applikation.

  ### Rückgabewert

  Sprechgeschwindigkeit in %.

  ### Siehe Auch

  LogoxSetLocalSpeed LogoxSetGlobalSpeed LogoxGetGlobalSpeed

  # LogoxSetGlobalSpeed

  BOOL WINAPI LogoxSetGlobalSpeed(long nSpeed)

  Setzt die globale Sprechgeschwindigkeit.

  ### Rückgabewert

  Status der Sprechgeschwindigkeitsänderung:

  TRUE
    Der angegebene Sprechgeschwindigkeit wurde gesetzt.

  FALSE
    Die Sprechgeschwindigkeit konnte nicht verändert werden.

  ### Parameter

  nSpeed
    Sprechgeschwindigkeit in %.

  ### Kommentar

  Die Sprechgeschwindigkeit wird in % angegeben. Ein möglicher Wertebereich liegt z.B. zwischen 10 und 300. Dies entspricht einer Sprechgeschwindigkeit von 10% bis 300%.

  ### Siehe Auch

  LogoxSetLocalSpeed LogoxGetLocalSpeed LogoxGetGlobalSpeed

  # LogoxGetGlobalSpeed

  long WINAPI LogoxGetGlobalSpeed(void)

  Abfrage der globalen Sprechgeschwindigkeit.

  ### Rückgabewert

  Globale Sprechgeschwindigkeit in %.

  ### Siehe Auch

  LogoxSetLocalSpeed LogoxGetLocalSpeed LogoxSetGlobalSpeed

  # LogoxSetLocalIntonation

  BOOL WINAPI LogoxSetLocalIntonation(long nIntonation)

  Setzt die Betonung für diese Applikation.

  ### Rückgabewert

  Status der Änderung.

  TRUE
    Der angegebene Betonung wurde gesetzt.

  FALSE
    Die Betonung konnte nicht verändert werden.

  ### Parameter

  nIntonation
    Betonung in %.

  ### Kommentar

  Die Betonung wird in % angegeben. Ein möglicher Wertebereich liegt z.B. zwischen 0 und 300. Dies entspricht einer Betonung von 0% bis 300%.

  ### Siehe Auch

  LogoxGetLocalIntonation LogoxSetGlobalIntonation LogoxGetGlobalIntonation

  # LogoxGetLocalIntonation

  long WINAPI LogoxGetLocalIntonation(void)

  Abfrage der Betonung für diese Applikation.

  ### Rückgabewert

  Betonung in %.

  ### Siehe Auch

  LogoxSetLocalIntonation LogoxSetGlobalIntonation LogoxGetGlobalIntonation

  # LogoxSetGlobalIntonation

  BOOL WINAPI LogoxSetGlobalIntonation(long nIntonation)

  Setzt die globale Betonung.

  ### Rückgabewert

  Status der Änderung.

  TRUE
    Der angegebene Betonung wurde gesetzt.

  FALSE
    Die Betonung konnte nicht verändert werden.

  ### Parameter

  nIntonation
    Betonung in %.

  ### Kommentar

  Die Betonung wird in % angegeben. Ein möglicher Wertebereich liegt z.B. zwischen 0 und 300. Dies entspricht einer Betonung von 0% bis 300%.

  ### Siehe Auch

  LogoxSetLocalIntonation LogoxGetLocalIntonation LogoxGetGlobalIntonation

  # LogoxGetGlobalIntonation

  long WINAPI LogoxGetGlobalIntonation(void)

  Abfrage der globalen Betonung.

  ### Rückgabewert

  Globale Betonung in %.

  ### Siehe Auch

  LogoxSetLocalIntonation LogoxGetLocalIntonation LogoxSetGlobalIntonation

  # LogoxSetLocalRoughness

  BOOL WINAPI LogoxSetLocalRoughness(long nRoughness)

  Setzt die Rauheit für diese Applikation.

  ### Rückgabewert

  Status der Änderung:

  TRUE
    Der angegebene Rauheit wurde gesetzt.

  FALSE
    Die Rauheit konnte nicht verändert werden.

  ### Parameter

  nRoughness
    Rauheit in 1/10 Hz.

  ### Kommentar

  Die Rauheit wird in 1/10 Hz angegeben. Ein möglicher Wertebereich liegt z.B. zwischen 0 und 1000. Dies etspricht einer Rauheit von 0Hz bis 100Hz.

  ### Siehe Auch

  LogoxGetLocalRoughness LogoxSetGlobalRoughness LogoxGetGlobalRoughness

  # LogoxGetLocalRoughness

  long WINAPI LogoxGetLocalRoughness(void)

  Abfrage der Rauheit für diese Applikation.

  ### Rückgabewert

  Rauheit in 1/10 Hz.

  ### Siehe Auch

  LogoxSetLocalRoughness LogoxSetGlobalRoughness LogoxGetGlobalRoughness

  # LogoxSetGlobalRoughness

  BOOL WINAPI LogoxSetGlobalRoughness(long nRoughness)

  Setzt die globale Rauheit.

  ### Rückgabewert

  Status der Änderung:

  TRUE
    Der angegebene Rauheit wurde gesetzt.

  FALSE
    Die Rauheit konnte nicht verändert werden.

  ### Parameter

  nRoughness
    Rauheit in 1/10 Hz.

  ### Kommentar

  Die Rauheit wird in 1/10 Hz angegeben. Ein möglicher Wertebereich liegt z.B. zwischen 0 und 1000. Dies entspricht einer Rauheit von 0Hz bis 100Hz.

  ### Siehe Auch

  LogoxSetLocalRoughness LogoxGetLocalRoughness LogoxGetGlobalRoughness

  # LogoxGetGlobalRoughness

  long WINAPI LogoxGetGlobalRoughness(void)

  Abfrage der globalen Rauheit.

  ### Rückgabewert

  Rauheit in 1/10 Hz.

  ### Siehe Auch

  LogoxSetLocalRoughness LogoxGetLocalRoughness LogoxSetGlobalRoughness

  # LogoxNotifyModeLocal

  BOOL WINAPI LogoxNotifyModeLocal(void)

  Stellt den Benachrichtigungsmodus auf Lokal. Dieser Modus wird standardmäßig gesetzt: Die Applikation erhält die Nachrichten, die direkt die Applikation betreffen oder von dieser ausgelöst wurden.

  ### Rückgabewert

  Status des Moduswechsels:

  TRUE
    Der Benachrichtigungsmodus wurde auf lokal gesetzt.

  FALSE
    Der Benachrichtigungsmodus wurde nicht verändert.

  ### Beispiel

      if (LogoxNotifyModeLocal())
      {
      	// ab jetzt werden lokale Nachrichten an die Applikation geschickt.
      }

  ### Siehe Auch

  LogoxNotifyModeGlobal LogoxNotifyAction LogoxNotifyMark LogoxNotifyChunk LogoxNotifyParam LogoxNotifySentence LogoxNotifyWord LogoxNotifyMouth LogoxNotifyViseme

  # LogoxNotifyModeGlobal

  BOOL WINAPI LogoxNotifyModeGlobal(void)

  Stellt den Benachrichtigungsmodus auf Global. Alle Nachrichten, also auch Nachrichten für andere Applikationen, werden an die Applikation geschickt.

  ### Rückgabewert

  Status des Moduswechsels:

  TRUE
    Der Benachrichtigunsmodus wurde auf global gesetzt.

  FALSE
    Der Benachrichtigungsmodus wurde nicht verändert.

  ### Beispiel

      if (LogoxNotifyModeGlobal())
      {
      	// ab jetzt werden alle Nachrichten an die Applikation geschickt.
      }

  ### Siehe Auch

  LogoxNotifyModeLocal LogoxNotifyAction LogoxNotifyMark LogoxNotifyChunk LogoxNotifyParam LogoxNotifySentence LogoxNotifyWord LogoxNotifyMouth LogoxNotifyViseme

  # LogoxNotifyAction

  BOOL WINAPI LogoxNotifyAction(HWND hWnd, UINT nMsg, HANDLE hEvent)

  Übergibt das Ziel für die Action-Nachrichten (ausgelöst durch die Angabe einer AktionsID bei Sprachausgaben).

  ### Rückgabewert

  Änderung des Benachrichtigungsziels:

  TRUE
    Das neue Ziel für die Benachrichtigung wurde gesetzt.

  FALSE
    Das Benachrichtigungsziel konnte nicht gesetzt werden.

  ### Parameter

  hWnd
    Fenster Handle für die Nachricht.

  nMsg
    Message für die Nachricht.

  hEvent
    Event Handle.

  ### Kommentar

  Die Benachrichtigung in dem entsprechenden Benachrichtigungsmodus (siehe LogoxNotifyModeLocal LogoxNotifyModeGlobal) werden erst abgeschickt, wenn ein gültiges Ziel angeben wurde.
  Ein gültiges Ziel besteht aus einem Fensterhandle und einer Nachrichtennummer, optional auch einem Eventhandle. Wenn das Fensterhandle und die Nachrichtennummer auf 0 gesetzt werden, erhält die Applikation keine Nachrichten mehr von diesem Typ.

  ### Beispiel

      // Definition der Benutzernachricht

      #define WM_LOGOX_ACTION	WM_USER+0

      // Bei der Initialisierung setzen Sie z.B. ihr Fensterhandle und die Nachrichtennummer.

      LogoxNotifyAction(m_hWnd,WM_LOGOX_ACTION,0);

      // Dann reagieren Sie auf die Nachricht WM_LOGOX_ACTION z.B. mit folgender Methode:

      LRESULT CMyApp::OnLogoxAction(WPARAM wParam,LPARAM lParam)
      {
      	// wParam enthält die Aktionsnummer
      	// lParam enthält 1 (Beginn der Aktion) oder 0 (Ende der Aktion)

      	return 0;	// Rückgabewert wird nicht ausgewertet
      }

  ### Siehe Auch

  LogoxNotifyModeLocal LogoxNotifyModeGlobal LogoxNotifyMark LogoxNotifyChunk LogoxNotifyParam LogoxNotifySentence LogoxNotifyWord LogoxNotifyMouth LogoxNotifyViseme

  # LogoxNotifyMark

  BOOL WINAPI LogoxNotifyMark(HWND hWnd, UINT nMsg, HANDLE hEvent)

  Übergabe des Ziels für die Mark-Nachrichten (diese werden durch BookMarks ausgelöst).

  ### Rückgabewert

  Änderung des Benachrichtigungsziels:

  TRUE
    Das neue Ziel für die Benachrichtigung wurde gesetzt.

  FALSE
    Das Benachrichtigungsziel konnte nicht gesetzt werden.

  ### Parameter

  hWnd
    Fenster Handle für die Nachricht.

  nMsg
    Message für die Nachricht.

  hEvent
    Event Handle.

  ### Kommentar

  Die Benachrichtigung in dem entsprechenden Benachrichtigungsmodus (siehe LogoxNotifyModeLocal LogoxNotifyModeGlobal) werden erst abgeschickt, wenn ein gültiges Ziel angeben wurde.
  Ein gültiges Ziel besteht aus einem Fensterhandle und einer Nachrichtennummer, optional auch einem Eventhandle. Wenn das Fensterhandle und die Nachrichtennummer auf 0 gesetzt werden, erhält die Applikation keine Nachrichten mehr von diesem Typ.

  ### Beispiel

      // Definition der Benutzernachricht

      #define WM_LOGOX_MARK	WM_USER+1

      // Bei der Initialisierung setzen Sie z.B. ihr Fensterhandle und die Nachrichtennummer.

      LogoxNotifyMark(m_hWnd,WM_LOGOX_MARK,0);

      // Dann reagieren Sie auf die Nachricht WM_LOGOX_MARK z.B. mit folgender Methode:

      LRESULT CMyApp::OnLogoxMark(WPARAM wParam,LPARAM lParam)
      {
      	// wParam enthält die BookMark Nummer
      	// lParam enthält 0

      	return 0;	// Rückgabewert wird nicht ausgewertet
      }

  ### Siehe Auch

  LogoxNotifyModeLocal LogoxNotifyModeGlobal LogoxNotifyAction LogoxNotifyChunk LogoxNotifyParam LogoxNotifySentence LogoxNotifyWord LogoxNotifyMouth LogoxNotifyViseme

  # LogoxNotifyChunk

  BOOL WINAPI LogoxNotifyChunk(HWND hWnd, UINT nMsg, HANDLE hEvent)

  Übergabe des Ziels für die Chunk-Nachrichten (diese werden bei Änderungen an den SpeechFonts® ausgelöst, z.B. bei Sprecherwechsel, etc.).

  ### Rückgabewert

  Änderung des Benachrichtigungsziels:

  TRUE
    Das neue Ziel für die Benachrichtigung wurde gesetzt.

  FALSE
    Das Benachrichtigungsziel konnte nicht gesetzt werden.

  ### Parameter

  hWnd
    Fenster Handle für die Nachricht.

  nMsg
    Message für die Nachricht.

  hEvent
    Event Handle.

  ### Kommentar

  Die Benachrichtigung in dem entsprechenden Benachrichtigungsmodus (siehe LogoxNotifyModeLocal LogoxNotifyModeGlobal) werden erst abgeschickt, wenn ein gültiges Ziel angeben wurde.
  Ein gültiges Ziel besteht aus einem Fensterhandle und einer Nachrichtennummer, optional auch einem Eventhandle. Wenn das Fensterhandle und die Nachrichtennummer auf 0 gesetzt werden, erhält die Applikation keine Nachrichten mehr von diesem Typ.

  ### Beispiel

      // Definition der Benutzernachricht

      #define WM_LOGOX_CHUNK	WM_USER+2

      // Bei der Initialisierung setzen Sie z.B. ihr Fensterhandle und die Nachrichtennummer.

      LogoxNotifyChunk(m_hWnd,WM_LOGOX_CHUNK,0);

      // Dann reagieren Sie auf die Nachricht WM_LOGOX_CHUNK z.B. mit folgender Methode:

      LRESULT CMyApp::OnLogoxChunk(WPARAM wParam,LPARAM lParam)
      {
      	// wParam enthält die Anzahl der im Server verwalteten SpeechFonts
      	// lParam enthält die Anzahl der im Server verwalteten SpeechChunks

      	return 0;	// Rückgabewert wird nicht ausgewertet
      }

  ### Siehe Auch

  LogoxNotifyModeLocal LogoxNotifyModeGlobal LogoxNotifyAction LogoxNotifyMark LogoxNotifyParam LogoxNotifySentence LogoxNotifyWord LogoxNotifyMouth LogoxNotifyViseme

  # LogoxNotifyParam

  BOOL WINAPI LogoxNotifyParam(HWND hWnd, UINT nMsg, HANDLE hEvent)

  Übergabe des Ziels für die Parameter-Nachrichten (diese werden bei Änderungen an den Einstellungen ausgelöst).

  ### Rückgabewert

  Änderung des Benachrichtigungsziels:

  TRUE
    Das neue Ziel für die Benachrichtigung wurde gesetzt.

  FALSE
    Das Benachrichtigungsziel konnte nicht gesetzt werden.

  ### Parameter

  hWnd
    Fenster Handle für die Nachricht.

  nMsg
    Message für die Nachricht.

  hEvent
    Event Handle.

  ### Kommentar

  Die Benachrichtigung in dem entsprechenden Benachrichtigungsmodus (siehe LogoxNotifyModeLocal LogoxNotifyModeGlobal) werden erst abgeschickt, wenn ein gültiges Ziel angeben wurde.
  Ein gültiges Ziel besteht aus einem Fensterhandle und einer Nachrichtennummer, optional auch einem Eventhandle. Wenn das Fensterhandle und die Nachrichtennummer auf 0 gesetzt werden, erhält die Applikation keine Nachrichten mehr von diesem Typ.

  ### Beispiel

      // Definition der Benutzernachricht

      #define WM_LOGOX_PARAM	WM_USER+3

      // Bei der Initialisierung setzen Sie z.B. ihr Fensterhandle und die Nachrichtennummer.

      LogoxNotifyParam(m_hWnd,WM_LOGOX_PARAM,0);

      // Dann reagieren Sie auf die Nachricht WM_LOGOX_PARAM z.B. mit folgender Methode:

      LRESULT CMyApp::OnLogoxParam(WPARAM wParam,LPARAM lParam)
      {
      	// wParam enthält die Parameter ID
      	// lParam enthält den Parameter Wert

      	return 0;	// Rückgabewert wird nicht ausgewertet
      }

  ### Siehe Auch

  LogoxNotifyModeLocal LogoxNotifyModeGlobal LogoxNotifyAction LogoxNotifyMark LogoxNotifyChunk LogoxNotifySentence LogoxNotifyWord LogoxNotifyMouth LogoxNotifyViseme

  # LogoxNotifySentence

  BOOL WINAPI LogoxNotifySentence(HWND hWnd, UINT nMsg, HANDLE hEvent)

  Übergabe des Ziels für die Satz-Nachrichten (diese werden bei der Sprachausgabe erzeugt).

  ### Rückgabewert

  Änderung des Benachrichtigungsziels:

  TRUE
    Das neue Ziel für die Benachrichtigung wurde gesetzt.

  FALSE
    Das Benachrichtigungsziel konnte nicht gesetzt werden.

  ### Parameter

  hWnd
    Fenster Handle für die Nachricht.

  nMsg
    Message für die Nachricht.

  hEvent
    Event Handle.

  ### Kommentar

  Die Benachrichtigung in dem entsprechenden Benachrichtigungsmodus (siehe LogoxNotifyModeLocal LogoxNotifyModeGlobal) werden erst abgeschickt, wenn ein gültiges Ziel angeben wurde.
  Ein gültiges Ziel besteht aus einem Fensterhandle und einer Nachrichtennummer, optional auch einem Eventhandle. Wenn das Fensterhandle und die Nachrichtennummer auf 0 gesetzt werden, erhält die Applikation keine Nachrichten mehr von diesem Typ.

  ### Beispiel

      // Definition der Benutzernachricht

      #define WM_LOGOX_SENTENCE	WM_USER+4

      // Bei der Initialisierung setzen Sie z.B. ihr Fensterhandle und die Nachrichtennummer.

      LogoxNotifySentence(m_hWnd,WM_LOGOX_SENTENCE,0);

      // Dann reagieren Sie auf die Nachricht WM_LOGOX_SENTENCE z.B. mit folgender Methode:

      LRESULT CMyApp::OnLogoxSentence(WPARAM wParam,LPARAM lParam)
      {
      	// wParam enthält den Offset auf das erste Zeichen im aktuellen Satze.
      	// lParam enthält die Länge des aktuellen Satzes.

      	return 0;	// Rückgabewert wird nicht ausgewertet
      }

  ### Siehe Auch

  LogoxNotifyModeLocal LogoxNotifyModeGlobal LogoxNotifyAction LogoxNotifyMark LogoxNotifyChunk LogoxNotifyParam LogoxNotifyWord LogoxNotifyMouth LogoxNotifyViseme

  # LogoxNotifyWord

  BOOL WINAPI LogoxNotifyWord(HWND hWnd, UINT nMsg, HANDLE hEvent)

  Übergabe des Ziels für die Wort-Nachrichten (diese werden bei der Sprachausgabe erzeugt).

  ### Rückgabewert

  Änderung des Benachrichtigungsziels:

  TRUE
    Das neue Ziel für die Benachrichtigung wurde gesetzt.

  FALSE
    Das Benachrichtigungsziel konnte nicht gesetzt werden.

  ### Parameter

  hWnd
    Fenster Handle für die Nachricht.

  nMsg
    Message für die Nachricht.

  hEvent
    Event Handle.

  ### Kommentar

  Die Benachrichtigung in dem entsprechenden Benachrichtigungsmodus (siehe LogoxNotifyModeLocal LogoxNotifyModeGlobal) werden erst abgeschickt, wenn ein gültiges Ziel angeben wurde.
  Ein gültiges Ziel besteht aus einem Fensterhandle und einer Nachrichtennummer, optional auch einem Eventhandle. Wenn das Fensterhandle und die Nachrichtennummer auf 0 gesetzt werden, erhält die Applikation keine Nachrichten mehr von diesem Typ.

  ### Beispiel

      // Definition der Benutzernachricht

      #define WM_LOGOX_WORD	WM_USER+5

      // Bei der Initialisierung setzen Sie z.B. ihr Fensterhandle und die Nachrichtennummer.

      LogoxNotifyWord(m_hWnd,WM_LOGOX_WORD,0);

      // Dann reagieren Sie auf die Nachricht WM_LOGOX_WORD z.B. mit folgender Methode:

      LRESULT CMyApp::OnLogoxWord(WPARAM wParam,LPARAM lParam)
      {
      	// wParam enthält den Offset auf das erste Zeichen im aktuellen Wort.
      	// lParam enthält die Länge des aktuellen Wortes.

      	return 0;	// Rückgabewert wird nicht ausgewertet
      }

  ### Siehe Auch

  LogoxNotifyModeLocal LogoxNotifyModeGlobal LogoxNotifyAction LogoxNotifyMark LogoxNotifyChunk LogoxNotifyParam LogoxNotifySentence LogoxNotifyMouth LogoxNotifyViseme

  # LogoxNotifyMouth

  BOOL WINAPI LogoxNotifyMouth(HWND hWnd, UINT nMsg, HANDLE hEvent)

  Übergabe des Ziels für die Mund-Nachrichten (diese werden bei der Sprachausgabe erzeugt).

  ### Rückgabewert

  Änderung des Benachrichtigungsziels:

  TRUE
    Das neue Ziel für die Benachrichtigung wurde gesetzt.

  FALSE
    Das Benachrichtigungsziel konnte nicht gesetzt werden.

  ### Parameter

  hWnd
    Fenster Handle für die Nachricht.

  nMsg
    Message für die Nachricht.

  hEvent
    Event Handle.

  ### Kommentar

  Die Benachrichtigung in dem entsprechenden Benachrichtigungsmodus (siehe LogoxNotifyModeLocal LogoxNotifyModeGlobal) werden erst abgeschickt, wenn ein gültiges Ziel angeben wurde.
  Ein gültiges Ziel besteht aus einem Fensterhandle und einer Nachrichtennummer, optional auch einem Eventhandle. Wenn das Fensterhandle und die Nachrichtennummer auf 0 gesetzt werden, erhält die Applikation keine Nachrichten mehr von diesem Typ.

  ### Beispiel

      // Definition der Benutzernachricht

      #define WM_LOGOX_MOUTH	WM_USER+6

      // Bei der Initialisierung setzen Sie z.B. ihr Fensterhandle und die Nachrichtennummer.

      LogoxNotifyMouth(m_hWnd,WM_LOGOX_MOUTH,0);

      // Dann reagieren Sie auf die Nachricht WM_LOGOX_MOUTH z.B. mit folgender Methode:

      LRESULT CMyApp::OnLogoxMouth(WPARAM wParam,LPARAM lParam)
      {
      	unsigned char Mouth[8];

      	memcpy(Mouth,&wParam,4);
      	memcpy(Mouth+4,&lParam,4);

      	// Mouth[0]	Höhe des Mundes
      	// Mouth[1]	Breite des Mundes
      	// Mouth[2] Wert für die Anhebung der Mundwinkel
      	// Mouth[3] Wert für die Mundöffnung
      	// Mouth[4] Angabe, wie weit die oberen Zähne zu sehen sind
      	// Mouth[5] Angabe, wie weit die unteren Zähne zu sehen sind
      	// Mouth[6] Wert für die Zungenposition
      	// Mouth[7] Wert für die Spannung der Lippen

      	return 0;	// Rückgabewert wird nicht ausgewertet
      }

  ### Siehe Auch

  LogoxNotifyModeLocal LogoxNotifyModeGlobal LogoxNotifyAction LogoxNotifyMark LogoxNotifyChunk LogoxNotifyParam LogoxNotifySentence LogoxNotifyWord LogoxNotifyViseme

  # LogoxNotifyViseme

  BOOL WINAPI LogoxNotifyViseme(HWND hWnd, UINT nMsg, HANDLE hEvent)

  Übergabe des Ziels für die Viseme Nachrichten. (Diese werden bei der Sprachausgabe erzeugt).

  ### Rückgabewert

  Änderung des Benachrichtigungsziels:

  TRUE
    Das neue Ziel für die Benachrichtigung wurde gesetzt.

  FALSE
    Das Benachrichtigungsziel konnte nicht gesetzt werden.

  ### Parameter

  hWnd
    Fenster Handle für die Nachricht.

  nMsg
    Message für die Nachricht.

  hEvent
    Event Handle.

  ### Kommentar

  Die Benachrichtigung in dem entsprechenden Benachrichtigungsmodus (siehe LogoxNotifyModeLocal LogoxNotifyModeGlobal) werden erst abgeschickt, wenn ein gültiges Ziel angeben wurde.
  Ein gültiges Ziel besteht aus einem Fensterhandle und einer Nachrichtennummer, optional auch einem Eventhandle. Wenn das Fensterhandle und die Nachrichtennummer auf 0 gesetzt werden, erhält die Applikation keine Nachrichten mehr von diesem Typ.

  ### Beispiel

      // Definition der Benutzernachricht

      #define WM_LOGOX_VISEME	WM_USER+7

      // Bei der Initialisierung setzen Sie z.B. ihr Fensterhandle und die Nachrichtennummer.

      LogoxNotifyViseme(m_hWnd,WM_LOGOX_VISEME,0);

      // Dann reagieren Sie auf die Nachricht WM_LOGOX_VISEME z.B. mit folgender Methode:

      LRESULT CMyApp::OnLogoxViseme(WPARAM wParam,LPARAM lParam)
      {
      	// wParam enthält das aktuelle Viseme (siehe SAPI 5 Viseme)
      	// lParam enthält 0

      	return 0;	// Rückgabewert wird nicht ausgewertet
      }

  ### Siehe Auch

  LogoxNotifyModeLocal LogoxNotifyModeGlobal LogoxNotifyAction LogoxNotifyMark LogoxNotifyChunk LogoxNotifyParam LogoxNotifySentence LogoxNotifyWord LogoxNotifyMouth

  # LogoxNotifyBroadcast

  BOOL WINAPI LogoxNotifyBroadcast(HWND hWnd)

  Übergabe des Fensterhandles für die Broadcast Nachrichten.

  ### Rückgabewert

  Änderung des Benachrichtigungsziels:

  TRUE
    Das Fensterhandle für die Benachrichtigung wurde gesetzt.

  FALSE
    Das Benachrichtigungsziel konnte nicht gesetzt werden.

  ### Parameter

  hWnd
    Fenster Handle für die Nachricht.

  ### Siehe Auch

  LogoxBroadcast

  # LogoxBroadcast

  BOOL WINAPI LogoxBroadcast(UINT nMsg, WPARAM wParam)

  Schickt eine Broadcast Nachricht an angemeldete Sprachapplikationen.

  ### Rückgabewert

  Status der Nachricht:

  TRUE
    Die Nachricht wurde erfolgreich verschickt.

  FALSE
    Die Nachricht konnte nicht verschickt werden.

  ### Parameter

  nMsg
    Nachrichten Nummer.

  wParam
    Parameter der Nachricht (wParam).

  ### Kommentar

  Mit diesem Befehl können die Sprachapplikationen untereinander kommunizieren, um z.B. bestimmte Zustände zu übermitteln.

  ### Siehe Auch

  LogoxNotifyBroadcast