Index: chrome/browser/speech/extension_api/tts_engine_extension_api.h |
diff --git a/chrome/browser/speech/extension_api/tts_engine_extension_api.h b/chrome/browser/speech/extension_api/tts_engine_extension_api.h |
index fdee2b93aa6f82336dadcc98c54005024f6fa1d7..1a2c25b9b91efbaa008aa7e37a8453392f66df78 100644 |
--- a/chrome/browser/speech/extension_api/tts_engine_extension_api.h |
+++ b/chrome/browser/speech/extension_api/tts_engine_extension_api.h |
@@ -28,19 +28,32 @@ |
extern const char kOnResume[]; |
} |
-// TtsEngineDelegate implementation used by TtsController. |
-class TtsExtensionEngine : public TtsEngineDelegate { |
- public: |
- static TtsExtensionEngine* GetInstance(); |
+// Return a list of all available voices registered by extensions. |
+void GetExtensionVoices(Profile* profile, std::vector<VoiceData>* out_voices); |
- // Overridden from TtsEngineDelegate: |
- virtual void GetVoices(Profile* profile, |
- std::vector<VoiceData>* out_voices) OVERRIDE; |
- virtual void Speak(Utterance* utterance, const VoiceData& voice) OVERRIDE; |
- virtual void Stop(Utterance* utterance) OVERRIDE; |
- virtual void Pause(Utterance* utterance) OVERRIDE; |
- virtual void Resume(Utterance* utterance) OVERRIDE; |
-}; |
+// Find the first extension with a tts_voices in its |
+// manifest that matches the speech parameters of this utterance. |
+// If found, store a pointer to the extension in |matching_extension| and |
+// the index of the voice within the extension in |voice_index| and |
+// return true. |
+bool GetMatchingExtensionVoice(Utterance* utterance, |
+ const extensions::Extension** matching_extension, |
+ size_t* voice_index); |
+ |
+// Speak the given utterance by sending an event to the given TTS engine |
+// extension voice. |
+void ExtensionTtsEngineSpeak(Utterance* utterance, |
+ const VoiceData& voice); |
+ |
+// Stop speaking the given utterance by sending an event to the extension |
+// associated with this utterance. |
+void ExtensionTtsEngineStop(Utterance* utterance); |
+ |
+// Pause in the middle of speaking this utterance. |
+void ExtensionTtsEnginePause(Utterance* utterance); |
+ |
+// Resume speaking this utterance. |
+void ExtensionTtsEngineResume(Utterance* utterance); |
// Hidden/internal extension function used to allow TTS engine extensions |
// to send events back to the client that's calling tts.speak(). |