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
- NavigationEventArgs.cs
- LinkClickEvent.cs
- SettingsPropertyCollection.cs
- DeferredElementTreeState.cs
- TargetPerspective.cs
- LocalizedNameDescriptionPair.cs
- ComponentChangingEvent.cs
- ActivatableWorkflowsQueryResult.cs
- DataRowCollection.cs
- EasingKeyFrames.cs
- DataTemplateKey.cs
- ListViewInsertedEventArgs.cs
- BrowsableAttribute.cs
- BrowserTree.cs
- DataGridColumn.cs
- Selection.cs
- CodeCastExpression.cs
- IisTraceWebEventProvider.cs
- DiscoveryClientDocuments.cs
- DesignTimeXamlWriter.cs
- VideoDrawing.cs
- ControlPager.cs
- OdbcConnectionOpen.cs
- PointHitTestParameters.cs
- TimerExtension.cs
- OdbcDataReader.cs
- SimpleHandlerFactory.cs
- LambdaCompiler.Logical.cs
- UnitySerializationHolder.cs
- COM2ExtendedBrowsingHandler.cs
- Array.cs
- UTF32Encoding.cs
- XmlSchemaSimpleContent.cs
- MutexSecurity.cs
- Point3DAnimationUsingKeyFrames.cs
- WebPartConnectionCollection.cs
- coordinatorfactory.cs
- PropertyChangingEventArgs.cs
- HTMLTextWriter.cs
- PublishLicense.cs
- Queue.cs
- Encoder.cs
- GlobalizationAssembly.cs
- DownloadProgressEventArgs.cs
- StringTraceRecord.cs
- SqlInfoMessageEvent.cs
- XmlCharType.cs
- SortKey.cs
- WebWorkflowRole.cs
- DataGridViewRowsRemovedEventArgs.cs
- GAC.cs
- ManualResetEvent.cs
- SymbolMethod.cs
- MeshGeometry3D.cs
- BindingListCollectionView.cs
- CqlQuery.cs
- XLinq.cs
- TagPrefixAttribute.cs
- Function.cs
- localization.cs
- AsnEncodedData.cs
- KeyPullup.cs
- ObjectParameterCollection.cs
- ShaperBuffers.cs
- _DisconnectOverlappedAsyncResult.cs
- PrintDialog.cs
- FileUpload.cs
- CollectionContainer.cs
- TextDecorations.cs
- TextAnchor.cs
- SessionStateSection.cs
- ParallelRangeManager.cs
- Image.cs
- MouseButtonEventArgs.cs
- x509store.cs
- PhysicalAddress.cs
- userdatakeys.cs
- RawStylusSystemGestureInputReport.cs
- ProcessHostServerConfig.cs
- ResXResourceSet.cs
- IDataContractSurrogate.cs
- WindowsToolbarItemAsMenuItem.cs
- ScopeElement.cs
- TableLayoutPanel.cs
- HttpCapabilitiesBase.cs
- AnonymousIdentificationModule.cs
- StatusBar.cs
- CompilerScope.cs
- BrushConverter.cs
- StdValidatorsAndConverters.cs
- MD5.cs
- ServiceParser.cs
- DoubleMinMaxAggregationOperator.cs
- BitmapEffectState.cs
- DrawingState.cs
- Stacktrace.cs
- SafeCryptoHandles.cs
- StagingAreaInputItem.cs
- HandleRef.cs
- SizeAnimationClockResource.cs