| Index: chrome/browser/extensions/extension_tts_api.h
|
| ===================================================================
|
| --- chrome/browser/extensions/extension_tts_api.h (revision 62145)
|
| +++ chrome/browser/extensions/extension_tts_api.h (working copy)
|
| @@ -8,6 +8,46 @@
|
| #include "chrome/browser/extensions/extension_function.h"
|
| #include "chrome/browser/extensions/extension_tts_api_util.h"
|
|
|
| +// Abstract class that defines the native platform TTS interface.
|
| +class ExtensionTtsPlatformImpl {
|
| + public:
|
| + static ExtensionTtsPlatformImpl* GetInstance();
|
| +
|
| + // Speak the given utterance with the given parameters if possible,
|
| + // and return true on success. Utterance will always be nonempty.
|
| + // If the user does not specify the other values, language and gender
|
| + // will be empty strings, and rate, pitch, and volume will be -1.0.
|
| + virtual bool Speak(
|
| + const std::string& utterance,
|
| + const std::string& language,
|
| + const std::string& gender,
|
| + double rate,
|
| + double pitch,
|
| + double volume) = 0;
|
| +
|
| + // Stop speaking immediately and return true on success.
|
| + virtual bool StopSpeaking() = 0;
|
| +
|
| + // Return true if the synthesis engine is currently speaking.
|
| + virtual bool IsSpeaking() = 0;
|
| +
|
| + virtual std::string error() { return error_; }
|
| + virtual void clear_error() { error_ = std::string(); }
|
| + virtual void set_error(const std::string& error) { error_ = error; }
|
| +
|
| + protected:
|
| + ExtensionTtsPlatformImpl() {}
|
| + virtual ~ExtensionTtsPlatformImpl() {}
|
| +
|
| + std::string error_;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(ExtensionTtsPlatformImpl);
|
| +};
|
| +
|
| +//
|
| +// Extension API function definitions
|
| +//
|
| +
|
| class ExtensionTtsSpeakFunction : public SyncExtensionFunction {
|
| ~ExtensionTtsSpeakFunction() {}
|
| virtual bool RunImpl();
|
|
|