1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CONTENT_PUBLIC_BROWSER_SPEECH_RECOGNITION_SESSION_CONFIG_H_ 6 #define CONTENT_PUBLIC_BROWSER_SPEECH_RECOGNITION_SESSION_CONFIG_H_ 7 8 #include "base/basictypes.h" 9 #include "base/memory/ref_counted.h" 10 #include "base/memory/weak_ptr.h" 11 #include "content/common/content_export.h" 12 #include "content/public/browser/speech_recognition_session_context.h" 13 #include "content/public/common/speech_recognition_grammar.h" 14 #include "net/url_request/url_request_context_getter.h" 15 16 namespace content { 17 18 class SpeechRecognitionEventListener; 19 20 // Configuration params for creating a new speech recognition session. 21 struct CONTENT_EXPORT SpeechRecognitionSessionConfig { 22 SpeechRecognitionSessionConfig(); 23 ~SpeechRecognitionSessionConfig(); 24 25 // TODO(hans): The legacy API is dead; remove this flag (crbug.com/223198). 26 bool is_legacy_api; 27 28 std::string language; 29 SpeechRecognitionGrammarArray grammars; 30 std::string origin_url; 31 bool filter_profanities; 32 bool continuous; 33 bool interim_results; 34 uint32 max_hypotheses; 35 SpeechRecognitionSessionContext initial_context; 36 scoped_refptr<net::URLRequestContextGetter> url_request_context_getter; 37 base::WeakPtr<SpeechRecognitionEventListener> event_listener; 38 }; 39 40 } // namespace content 41 42 #endif // CONTENT_PUBLIC_BROWSER_SPEECH_RECOGNITION_SESSION_CONFIG_H_ 43