All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ptts.h
Go to the documentation of this file.
/*
* ptts.h
*
* Text To Speech classes
*
* Portable Windows Library
*
* Copyright (c) 2002 Equivalence Pty. Ltd.
*
* The contents of this file are subject to the Mozilla Public License
* Version 1.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS"
* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
* the License for the specific language governing rights and limitations
* under the License.
*
* The Original Code is Portable Windows Library.
*
* The Initial Developer of the Original Code is Equivalence Pty. Ltd.
*
* Contributor(s): ______________________________________.
*
* $Revision: 25072 $
* $Author: rjongbloed $
* $Date: 2011-01-18 14:42:32 -0600 (Tue, 18 Jan 2011) $
*/
#ifndef PTLIB_PTTS_H
#define PTLIB_PTTS_H
#ifdef P_USE_PRAGMA
#pragma interface
#endif
#include <ptbuildopts.h>
#if P_TTS
#include <ptlib/pfactory.h>
class PTextToSpeech : public PObject
{
PCLASSINFO(PTextToSpeech, PObject);
public:
enum TextType {
Default,
Literal,
Digits,
Number,
Currency,
Time,
Date,
DateAndTime,
Phone,
IPAddress,
Duration,
Spell
};
virtual PStringArray GetVoiceList() = 0;
virtual PBoolean SetVoice(const PString & voice) = 0;
virtual PBoolean SetRate(unsigned rate) = 0;
virtual unsigned GetRate() = 0;
virtual PBoolean SetVolume(unsigned volume) = 0;
virtual unsigned GetVolume() = 0;
virtual PBoolean OpenFile(const PFilePath & fn) = 0;
virtual PBoolean OpenChannel(PChannel * chanel) = 0;
virtual PBoolean IsOpen() = 0;
virtual PBoolean Close() = 0;
virtual PBoolean Speak(const PString & text, TextType hint = Default) = 0;
};
#if P_SAPI
PFACTORY_LOAD(PTextToSpeech_SAPI);
#endif
#ifndef _WIN32_WCE
PFACTORY_LOAD(PTextToSpeech_Festival);
#endif
#endif // P_TTS
#endif // PTLIB_PTTS_H
// End Of File ///////////////////////////////////////////////////////////////
PCLASSINFO
#define PCLASSINFO(cls, par)
Declare all the standard PTLib class information.
Definition: object.h:1049
pfactory.h
PFilePath
This class describes a full description for a file on the particular platform.
Definition: filepath.h:65
PStringArray
This is an array collection class of PString objects.
Definition: pstring.h:2024
PBoolean
BOOL PBoolean
Definition: object.h:102
PFACTORY_LOAD
#define PFACTORY_LOAD(ConcreteType)
Definition: pfactory.h:431
PChannel
Abstract class defining I/O channel semantics.
Definition: channel.h:107
PString
The character string class.
Definition: pstring.h:108
PObject
Ultimate parent class for all objects in the class library.
Definition: object.h:1118