| // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "chrome/browser/extensions/extension_tts_api.h" |
| |
| #include "base/memory/singleton.h" |
| |
| namespace util = extension_tts_api_util; |
| |
| namespace { |
| const char kNotSupportedError[] = |
| "Native speech synthesis not supported on this platform."; |
| }; |
| |
| class ExtensionTtsPlatformImplLinux : public ExtensionTtsPlatformImpl { |
| public: |
| virtual bool Speak( |
| const std::string& utterance, |
| const std::string& language, |
| const std::string& gender, |
| double rate, |
| double pitch, |
| double volume) { |
| error_ = kNotSupportedError; |
| return false; |
| } |
| |
| virtual bool StopSpeaking() { |
| error_ = kNotSupportedError; |
| return false; |
| } |
| |
| virtual bool IsSpeaking() { |
| error_ = kNotSupportedError; |
| return false; |
| } |
| |
| // Get the single instance of this class. |
| static ExtensionTtsPlatformImplLinux* GetInstance() { |
| return Singleton<ExtensionTtsPlatformImplLinux>::get(); |
| } |
| |
| private: |
| ExtensionTtsPlatformImplLinux() {} |
| virtual ~ExtensionTtsPlatformImplLinux() {} |
| |
| friend struct DefaultSingletonTraits<ExtensionTtsPlatformImplLinux>; |
| |
| DISALLOW_COPY_AND_ASSIGN(ExtensionTtsPlatformImplLinux); |
| }; |
| |
| // static |
| ExtensionTtsPlatformImpl* ExtensionTtsPlatformImpl::GetInstance() { |
| return ExtensionTtsPlatformImplLinux::GetInstance(); |
| } |