libs-gui/Tools/speech/GSSpeechEngine.h
Gregory John Casamento 0e43459d49 * config.make.in: Change to include BUILD_SPEECH in output
* configure: Regenerated
	* configure.ac: Check for flite library and flite.h header.
	* Tools/GNUmakefile: Add ${BUILD_SPEECH} to subproject list.
	* Tools/say/GNUmakefile
	* Tools/say/say.m: Say utility
	* Tools/speech/FliteSpeechEngine.m: 
	* Tools/speech/GNUmakefile
	* Tools/speech/GSSpeechEngine.[hm]
	* Tools/speech/GSSpeechServer.[hm]
	* Tools/speech/GSSpeechSynthesizer.[hm]: Speech synthesis engine
	implementation using flite.
	* Tools/speech/main.m: main for the server application.
	Speech code by David Chisnall <theraven@sucs.org>
	Changes to makefiles and config by Gregory Casamento.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28430 72102866-910b-0410-8b05-ffd578937521
2009-08-02 00:33:19 +00:00

50 lines
1.3 KiB
Objective-C

#import <Foundation/Foundation.h>
/**
* GSSpeechEngine is an abstract speech server. One concrete subclass should
* be implemented for each speech engine. Currently, only one may be compiled
* in to the speech server at any given time. This limitation may be removed
* in future if pluggable speech engines are considered beneficial.
*/
@interface GSSpeechEngine : NSObject
/**
* Returns a new instance of the default speech engine.
*/
+ (GSSpeechEngine*)defaultSpeechEngine;
/**
* Begin speaking the specified string.
*/
- (void)startSpeaking: (NSString*)aString notifyWhenDone: (id)aDelegate;
/**
* Stop speaking.
*/
- (void)stopSpeaking;
/**
* Returns YES if the engine is currently outputting speech.
*/
- (BOOL)isSpeaking;
/**
* Returns an array of voices supported by this speech synthesizer.
*/
- (NSArray*)voices;
/**
* Sets the voice.
*/
- (void)setVoice: (NSString*)aVoice;
/**
* Returns the current voice.
*/
- (NSString*)voice;
/**
* Returns the name of the default voice for this speech engine.
*/
- (NSString*)defaultVoice;
@end
@interface NSObject (GSSpeechEngineDelegate)
/**
* Called when the speech engine has finished speaking a phrase. Should be
* used to notify the original caller.
*/
- (void)didFinishSpeaking: (BOOL)didFinish;
@end