Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Speech / Src / Recognition / RecognizerInfo.cs / 1 / RecognizerInfo.cs
//------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------- using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Globalization; using System.Speech.AudioFormat; using System.Speech.Internal; using System.Speech.Internal.SapiInterop; using System.Speech.Internal.ObjectTokens; using RegistryEntry = System.Collections.Generic.KeyValuePair; namespace System.Speech.Recognition { /// TODOC <_include file='doc\RecognizerInfo.uex' path='docs/doc[@for="RecognizerInfo"]/*' /> // This represents the attributes various speech recognizers may, or may not support. public class RecognizerInfo { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors private RecognizerInfo (ObjectToken token, CultureInfo culture) { // Retrieve the token name _id = token.Name; // Retrieve default display name _description = token.Description; // Store full object token id for internal use. _sapiObjectTokenId = token.Id; _name = token.TokenName (); _culture = culture; // Enum all values and add to custom table foreach (string keyName in token.Attributes.GetValueNames ()) { string attributeValue; if (token.Attributes.TryGetString (keyName, out attributeValue)) { _attributes.InternalDictionary [keyName] = attributeValue; } } #if !SPEECHSERVER string audioFormats; if (token.Attributes.TryGetString ("AudioFormats", out audioFormats)) { _supportedAudioFormats = new ReadOnlyCollection (SapiAttributeParser.GetAudioFormatsFromString (audioFormats)); } else { _supportedAudioFormats = new ReadOnlyCollection (new List ()); } #endif } static internal RecognizerInfo Create (ObjectToken token) { // Token for recognizer should have Attributes. if (token.Attributes == null) { return null; } // Get other attributes string langId; // must have a language id if (!token.Attributes.TryGetString ("Language", out langId)) { return null; } CultureInfo cultureInfo = SapiAttributeParser.GetCultureInfoFromLanguageString (langId); if (cultureInfo != null) { return new RecognizerInfo(token, cultureInfo); } else { return null; } } #endregion //******************************************************************** // // Public Properties // //******************************************************************* #region public Properties /// TODOC <_include file='doc\RecognizerInfo.uex' path='docs/doc[@for="RecognizerInfo.Name"]/*' /> public string Id { get { return _id; } } /// TODOC <_include file='doc\RecognizerInfo.uex' path='docs/doc[@for="RecognizerInfo.Name"]/*' /> public string Name { get { return _name; } } /// TODOC <_include file='doc\RecognizerInfo.uex' path='docs/doc[@for="RecognizerInfo.DisplayName"]/*' /> public string Description { get { return _description; } } /// TODOC <_include file='doc\RecognizerInfo.uex' path='docs/doc[@for="RecognizerInfo.CultureInfo"]/*' /> public CultureInfo Culture { get { return _culture; } } #if !SPEECHSERVER /// TODOC <_include file='doc\RecognizerInfo.uex' path='docs/doc[@for="RecognizerInfo.SupportedAudioFormats"]/*' /> public ReadOnlyCollection SupportedAudioFormats { get { return _supportedAudioFormats; } } #endif /// TODOC <_include file='doc\RecognizerInfo.uex' path='docs/doc[@for="RecognizerInfo.AdditionalInfo"]/*' /> public IDictionary AdditionalInfo { get { return _attributes; } } #endregion //******************************************************************** // // Internal Properties // //******************************************************************** #region Internal Properties internal string SapiObjectTokenId { get { return _sapiObjectTokenId; } } #endregion //******************************************************************* // // Private Fields // //******************************************************************** #region Private Fields // This table stores each attribute private ReadOnlyDictionary _attributes = new ReadOnlyDictionary (); // Named attributes - these get initialized in constructor private string _id; private string _name; private string _description; private string _sapiObjectTokenId; private CultureInfo _culture; #if !SPEECHSERVER private ReadOnlyCollection _supportedAudioFormats; #endif #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- NonSerializedAttribute.cs
- TimeoutTimer.cs
- PowerStatus.cs
- MemberExpression.cs
- TypeSystem.cs
- XmlDocumentSurrogate.cs
- AlphaSortedEnumConverter.cs
- AtomContentProperty.cs
- XpsS0ValidatingLoader.cs
- TypeInfo.cs
- MachineSettingsSection.cs
- HostedImpersonationContext.cs
- ExtendedProtectionPolicyElement.cs
- Model3DGroup.cs
- ConnectionPointCookie.cs
- ToolStripProgressBar.cs
- EntityClassGenerator.cs
- ReceiveActivityValidator.cs
- ProtectedProviderSettings.cs
- CompoundFileDeflateTransform.cs
- _FixedSizeReader.cs
- IERequestCache.cs
- SamlAttributeStatement.cs
- ServiceOperation.cs
- XmlSerializerSection.cs
- SecurityElement.cs
- ProjectionPath.cs
- TargetParameterCountException.cs
- PageBreakRecord.cs
- NodeLabelEditEvent.cs
- MinimizableAttributeTypeConverter.cs
- FixedStringLookup.cs
- ExtendLockAsyncResult.cs
- AttributeData.cs
- ThemeableAttribute.cs
- StickyNoteContentControl.cs
- PrimitiveXmlSerializers.cs
- AudioException.cs
- CommandDevice.cs
- XslException.cs
- CodeArrayCreateExpression.cs
- ToolboxItemFilterAttribute.cs
- DbCommandTree.cs
- MatrixConverter.cs
- ElementHostAutomationPeer.cs
- MergeLocalizationDirectives.cs
- VisualBasicDesignerHelper.cs
- MDIClient.cs
- StrongNameMembershipCondition.cs
- VisualBasicExpressionConverter.cs
- SqlDataSourceCommandEventArgs.cs
- VisualProxy.cs
- FormClosedEvent.cs
- DuplicateWaitObjectException.cs
- QueryResponse.cs
- ConfigurationSectionGroup.cs
- StateDesigner.cs
- RangeValidator.cs
- SecurityKeyIdentifierClause.cs
- ConnectionInterfaceCollection.cs
- CodeTypeParameter.cs
- GACMembershipCondition.cs
- ClientTargetCollection.cs
- DbConnectionPoolGroup.cs
- AsyncCompletedEventArgs.cs
- TdsEnums.cs
- FlowLayoutSettings.cs
- DataServiceBuildProvider.cs
- LocationSectionRecord.cs
- mediaeventargs.cs
- SoapRpcMethodAttribute.cs
- DataServiceHost.cs
- ValidationEventArgs.cs
- AttachedPropertyBrowsableWhenAttributePresentAttribute.cs
- CodeCatchClause.cs
- _NegoStream.cs
- XPathArrayIterator.cs
- LocalBuilder.cs
- StylusPointProperty.cs
- CommandPlan.cs
- CachedPathData.cs
- Literal.cs
- StickyNoteContentControl.cs
- XmlnsCompatibleWithAttribute.cs
- DBBindings.cs
- HebrewCalendar.cs
- CodeAttributeDeclarationCollection.cs
- RadioButton.cs
- AnnotationComponentManager.cs
- SyntaxCheck.cs
- XslCompiledTransform.cs
- CodeSubDirectory.cs
- SplineKeyFrames.cs
- EditingCommands.cs
- GenericWebPart.cs
- JoinGraph.cs
- SchemaManager.cs
- QuestionEventArgs.cs
- AsymmetricKeyExchangeFormatter.cs
- PropertyGridView.cs