Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Speech / Src / Synthesis / VoiceInfo.cs / 1 / VoiceInfo.cs
//------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------- using System; using System.Collections.ObjectModel; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.Globalization; using System.Speech.AudioFormat; using System.Speech.Internal; using System.Speech.Internal.Synthesis; using System.Speech.Internal.ObjectTokens; using System.Xml; #pragma warning disable 1634, 1691 // Allows suppression of certain PreSharp messages. namespace System.Speech.Synthesis { ////// TODOC /// [DebuggerDisplay ("{(_name != null ? \"'\" + _name + \"' \" : \"\") + (_culture != null ? \" '\" + _culture.ToString () + \"' \" : \"\") + (_gender != VoiceGender.NotSet ? \" '\" + _gender.ToString () + \"' \" : \"\") + (_age != VoiceAge.NotSet ? \" '\" + _age.ToString () + \"' \" : \"\") + (_variant > 0 ? \" \" + _variant.ToString () : \"\")}")] [Serializable] public class VoiceInfo { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors ////// TODOC /// /// internal VoiceInfo (string name) { Helpers.ThrowIfEmptyOrNull (name, "name"); _name = name; } ////// TODOC /// /// internal VoiceInfo (CultureInfo culture) { // Fails if no culture is provided Helpers.ThrowIfNull (culture, "culture"); if (culture.Equals (CultureInfo.InvariantCulture)) { throw new ArgumentException (SR.Get (SRID.InvariantCultureInfo), "culture"); } _culture = culture; } internal VoiceInfo (VoiceObjectToken token) { _registryKeyPath = token._sKeyId; // Retriece the token name _id = token.Name; // Retrieve default display name _description = token.Description; // Get other attributes _name = token.TokenName (); SsmlParserHelpers.TryConvertAge (token.Age.ToLowerInvariant (), out _age); SsmlParserHelpers.TryConvertGender (token.Gender.ToLowerInvariant (), out _gender); string langId; if (token.Attributes.TryGetString ("Language", out langId)) { _culture = SapiAttributeParser.GetCultureInfoFromLanguageString (langId); } string assemblyName; if (token.TryGetString ("Assembly", out assemblyName)) { _assemblyName = assemblyName; } string clsid; if (token.TryGetString ("CLSID", out clsid)) { _clsid = clsid; } if (token.Attributes != null) { // 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.Add (keyName, attributeValue); } } } #if !SPEECHSERVER string audioFormats; if (token.Attributes != null && token.Attributes.TryGetString ("AudioFormats", out audioFormats)) { _audioFormats = new ReadOnlyCollection(SapiAttributeParser.GetAudioFormatsFromString (audioFormats)); } else { _audioFormats = new ReadOnlyCollection (new List ()); } #else _category = token.VoiceCategory; #endif } /// /// TODOC /// /// internal VoiceInfo (VoiceGender gender) { _gender = gender; } ////// TODOC /// /// /// internal VoiceInfo (VoiceGender gender, VoiceAge age) { _gender = gender; _age = age; } ////// TODOC /// /// /// /// internal VoiceInfo (VoiceGender gender, VoiceAge age, int voiceAlternate) { if (voiceAlternate < 0) { throw new ArgumentOutOfRangeException ("voiceAlternate", SR.Get (SRID.PromptBuilderInvalidVariant)); } _gender = gender; _age = age; _variant = voiceAlternate + 1; } #if SPEECHSERVER ////// TODOC /// /// /// /// /// internal VoiceInfo (CultureInfo culture, VoiceGender gender, string name, VoiceAge age) : this (culture) { _name = name; _gender = gender; _age = age; } #endif #endregion //******************************************************************** // // Public Methods // //******************************************************************* #region public Methods ////// Tests whether two AutomationIdentifier objects are equivalent /// public override bool Equals (object obj) { // PreSharp doesn't understand that if obj is null then this will return false. #pragma warning disable 6506 VoiceInfo voice = obj as VoiceInfo; return voice != null && _name == voice._name && (_age == voice._age || _age == VoiceAge.NotSet || voice._age == VoiceAge.NotSet) && (_gender == voice._gender || _gender == VoiceGender.NotSet || voice._gender == VoiceGender.NotSet) && (_culture == null || voice._culture == null || _culture.Equals (voice._culture)); #pragma warning restore 6506 } ////// Overrides Object.GetHashCode() /// public override int GetHashCode () { return _name.GetHashCode (); } #endregion //******************************************************************** // // Public Properties // //******************************************************************** #region public Properties ////// TODOC /// ///public VoiceGender Gender { get { return _gender; } } /// /// TODOC /// ///public VoiceAge Age { get { return _age; } } /// /// TODOC /// ///public string Name { get { return _name; } } /// /// TODOC /// /// Return a copy of the internal Language set. This disable client /// applications to modify the internal languages list. /// ///public CultureInfo Culture { get { return _culture; } } /// /// TODOC /// ///public string Id { get { return _id; } } /// /// TODOC /// ///public string Description { get { return _description != null ? _description : string.Empty; } } #if !SPEECHSERVER /// /// TODOC /// ///[EditorBrowsable (EditorBrowsableState.Advanced)] public ReadOnlyCollection SupportedAudioFormats { get { return _audioFormats; } } #endif /// /// TODOC /// ///[EditorBrowsable (EditorBrowsableState.Advanced)] public IDictionary AdditionalInfo { get { return _attributes; } } #endregion //******************************************************************* // // Internal Methods // //******************************************************************** #region Internal Methods internal static bool ValidateGender (VoiceGender gender) { return gender == VoiceGender.Female || gender == VoiceGender.Male || gender == VoiceGender.Neutral || gender == VoiceGender.NotSet; } internal static bool ValidateAge (VoiceAge age) { return age == VoiceAge.Adult || age == VoiceAge.Child || age == VoiceAge.NotSet || age == VoiceAge.Senior || age == VoiceAge.Teen; } #endregion //******************************************************************* // // Internal Property // //******************************************************************* #region Internal Property /// /// TODOC /// ///internal int Variant { get { return _variant; } } /// /// TODOC /// ///internal string AssemblyName { get { return _assemblyName; } } /// /// TODOC /// ///internal string Clsid { get { return _clsid; } } /// /// TODOC /// ///internal string RegistryKeyPath { get { return _registryKeyPath; } } #if SPEECHSERVER internal VoiceCategory VoiceCategory { get { return _category; } } #endif #endregion //******************************************************************* // // Private Fields // //******************************************************************** #region Private Fields private string _name; private CultureInfo _culture; private VoiceGender _gender = VoiceGender.NotSet; private VoiceAge _age; private int _variant = -1; [NonSerialized] private string _id; [NonSerialized] private string _registryKeyPath; [NonSerialized] private string _assemblyName; [NonSerialized] private string _clsid; [NonSerialized] private string _description; [NonSerialized] private ReadOnlyDictionary _attributes = new ReadOnlyDictionary (); #if !SPEECHSERVER [NonSerialized] private ReadOnlyCollection _audioFormats; #else VoiceCategory _category; #endif #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------- using System; using System.Collections.ObjectModel; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.Globalization; using System.Speech.AudioFormat; using System.Speech.Internal; using System.Speech.Internal.Synthesis; using System.Speech.Internal.ObjectTokens; using System.Xml; #pragma warning disable 1634, 1691 // Allows suppression of certain PreSharp messages. namespace System.Speech.Synthesis { ////// TODOC /// [DebuggerDisplay ("{(_name != null ? \"'\" + _name + \"' \" : \"\") + (_culture != null ? \" '\" + _culture.ToString () + \"' \" : \"\") + (_gender != VoiceGender.NotSet ? \" '\" + _gender.ToString () + \"' \" : \"\") + (_age != VoiceAge.NotSet ? \" '\" + _age.ToString () + \"' \" : \"\") + (_variant > 0 ? \" \" + _variant.ToString () : \"\")}")] [Serializable] public class VoiceInfo { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors ////// TODOC /// /// internal VoiceInfo (string name) { Helpers.ThrowIfEmptyOrNull (name, "name"); _name = name; } ////// TODOC /// /// internal VoiceInfo (CultureInfo culture) { // Fails if no culture is provided Helpers.ThrowIfNull (culture, "culture"); if (culture.Equals (CultureInfo.InvariantCulture)) { throw new ArgumentException (SR.Get (SRID.InvariantCultureInfo), "culture"); } _culture = culture; } internal VoiceInfo (VoiceObjectToken token) { _registryKeyPath = token._sKeyId; // Retriece the token name _id = token.Name; // Retrieve default display name _description = token.Description; // Get other attributes _name = token.TokenName (); SsmlParserHelpers.TryConvertAge (token.Age.ToLowerInvariant (), out _age); SsmlParserHelpers.TryConvertGender (token.Gender.ToLowerInvariant (), out _gender); string langId; if (token.Attributes.TryGetString ("Language", out langId)) { _culture = SapiAttributeParser.GetCultureInfoFromLanguageString (langId); } string assemblyName; if (token.TryGetString ("Assembly", out assemblyName)) { _assemblyName = assemblyName; } string clsid; if (token.TryGetString ("CLSID", out clsid)) { _clsid = clsid; } if (token.Attributes != null) { // 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.Add (keyName, attributeValue); } } } #if !SPEECHSERVER string audioFormats; if (token.Attributes != null && token.Attributes.TryGetString ("AudioFormats", out audioFormats)) { _audioFormats = new ReadOnlyCollection(SapiAttributeParser.GetAudioFormatsFromString (audioFormats)); } else { _audioFormats = new ReadOnlyCollection (new List ()); } #else _category = token.VoiceCategory; #endif } /// /// TODOC /// /// internal VoiceInfo (VoiceGender gender) { _gender = gender; } ////// TODOC /// /// /// internal VoiceInfo (VoiceGender gender, VoiceAge age) { _gender = gender; _age = age; } ////// TODOC /// /// /// /// internal VoiceInfo (VoiceGender gender, VoiceAge age, int voiceAlternate) { if (voiceAlternate < 0) { throw new ArgumentOutOfRangeException ("voiceAlternate", SR.Get (SRID.PromptBuilderInvalidVariant)); } _gender = gender; _age = age; _variant = voiceAlternate + 1; } #if SPEECHSERVER ////// TODOC /// /// /// /// /// internal VoiceInfo (CultureInfo culture, VoiceGender gender, string name, VoiceAge age) : this (culture) { _name = name; _gender = gender; _age = age; } #endif #endregion //******************************************************************** // // Public Methods // //******************************************************************* #region public Methods ////// Tests whether two AutomationIdentifier objects are equivalent /// public override bool Equals (object obj) { // PreSharp doesn't understand that if obj is null then this will return false. #pragma warning disable 6506 VoiceInfo voice = obj as VoiceInfo; return voice != null && _name == voice._name && (_age == voice._age || _age == VoiceAge.NotSet || voice._age == VoiceAge.NotSet) && (_gender == voice._gender || _gender == VoiceGender.NotSet || voice._gender == VoiceGender.NotSet) && (_culture == null || voice._culture == null || _culture.Equals (voice._culture)); #pragma warning restore 6506 } ////// Overrides Object.GetHashCode() /// public override int GetHashCode () { return _name.GetHashCode (); } #endregion //******************************************************************** // // Public Properties // //******************************************************************** #region public Properties ////// TODOC /// ///public VoiceGender Gender { get { return _gender; } } /// /// TODOC /// ///public VoiceAge Age { get { return _age; } } /// /// TODOC /// ///public string Name { get { return _name; } } /// /// TODOC /// /// Return a copy of the internal Language set. This disable client /// applications to modify the internal languages list. /// ///public CultureInfo Culture { get { return _culture; } } /// /// TODOC /// ///public string Id { get { return _id; } } /// /// TODOC /// ///public string Description { get { return _description != null ? _description : string.Empty; } } #if !SPEECHSERVER /// /// TODOC /// ///[EditorBrowsable (EditorBrowsableState.Advanced)] public ReadOnlyCollection SupportedAudioFormats { get { return _audioFormats; } } #endif /// /// TODOC /// ///[EditorBrowsable (EditorBrowsableState.Advanced)] public IDictionary AdditionalInfo { get { return _attributes; } } #endregion //******************************************************************* // // Internal Methods // //******************************************************************** #region Internal Methods internal static bool ValidateGender (VoiceGender gender) { return gender == VoiceGender.Female || gender == VoiceGender.Male || gender == VoiceGender.Neutral || gender == VoiceGender.NotSet; } internal static bool ValidateAge (VoiceAge age) { return age == VoiceAge.Adult || age == VoiceAge.Child || age == VoiceAge.NotSet || age == VoiceAge.Senior || age == VoiceAge.Teen; } #endregion //******************************************************************* // // Internal Property // //******************************************************************* #region Internal Property /// /// TODOC /// ///internal int Variant { get { return _variant; } } /// /// TODOC /// ///internal string AssemblyName { get { return _assemblyName; } } /// /// TODOC /// ///internal string Clsid { get { return _clsid; } } /// /// TODOC /// ///internal string RegistryKeyPath { get { return _registryKeyPath; } } #if SPEECHSERVER internal VoiceCategory VoiceCategory { get { return _category; } } #endif #endregion //******************************************************************* // // Private Fields // //******************************************************************** #region Private Fields private string _name; private CultureInfo _culture; private VoiceGender _gender = VoiceGender.NotSet; private VoiceAge _age; private int _variant = -1; [NonSerialized] private string _id; [NonSerialized] private string _registryKeyPath; [NonSerialized] private string _assemblyName; [NonSerialized] private string _clsid; [NonSerialized] private string _description; [NonSerialized] private ReadOnlyDictionary _attributes = new ReadOnlyDictionary (); #if !SPEECHSERVER [NonSerialized] private ReadOnlyCollection _audioFormats; #else VoiceCategory _category; #endif #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HtmlInputControl.cs
- GcHandle.cs
- ExtensionSimplifierMarkupObject.cs
- ToolStripContainer.cs
- GenerateScriptTypeAttribute.cs
- ActivityExecutorSurrogate.cs
- SerializationStore.cs
- AutomationElement.cs
- StylusButtonCollection.cs
- WindowsListViewGroupHelper.cs
- Exceptions.cs
- GridViewColumnHeaderAutomationPeer.cs
- HybridDictionary.cs
- IdentifierService.cs
- XmlReaderSettings.cs
- UpdateProgress.cs
- HMACSHA384.cs
- NumberFormatInfo.cs
- NetworkInterface.cs
- HttpRuntimeSection.cs
- WebPartVerb.cs
- XPathSelectionIterator.cs
- CommandTreeTypeHelper.cs
- _RequestCacheProtocol.cs
- UnsafeNativeMethods.cs
- SafeNativeMethods.cs
- FloaterBaseParaClient.cs
- EncryptedReference.cs
- AutoResetEvent.cs
- VirtualizingStackPanel.cs
- MouseCaptureWithinProperty.cs
- XmlSchemaChoice.cs
- HtmlControl.cs
- ValidationService.cs
- HtmlEncodedRawTextWriter.cs
- GenericUriParser.cs
- WorkflowFileItem.cs
- SQLInt16Storage.cs
- ThrowHelper.cs
- CredentialCache.cs
- BitmapMetadataBlob.cs
- FixedSOMTableRow.cs
- RegexInterpreter.cs
- UdpAnnouncementEndpoint.cs
- ToolBarTray.cs
- CompModSwitches.cs
- WebConfigurationManager.cs
- TextBoxBase.cs
- StateManagedCollection.cs
- ScopelessEnumAttribute.cs
- ScriptResourceAttribute.cs
- DockAndAnchorLayout.cs
- WebEncodingValidator.cs
- HebrewNumber.cs
- GlyphRunDrawing.cs
- PathFigureCollectionConverter.cs
- RegistryPermission.cs
- SafeNativeMemoryHandle.cs
- TreeViewHitTestInfo.cs
- StateRuntime.cs
- MissingFieldException.cs
- BooleanToVisibilityConverter.cs
- DbDataReader.cs
- NamedElement.cs
- PeerTransportListenAddressConverter.cs
- MarginCollapsingState.cs
- ObjectItemConventionAssemblyLoader.cs
- ModelChangedEventArgsImpl.cs
- StdValidatorsAndConverters.cs
- WeakEventTable.cs
- TextEditorTyping.cs
- ReadOnlyNameValueCollection.cs
- Guid.cs
- FilePrompt.cs
- ButtonChrome.cs
- SettingsPropertyValue.cs
- TracingConnectionListener.cs
- UserControlFileEditor.cs
- Transactions.cs
- ContentAlignmentEditor.cs
- PageClientProxyGenerator.cs
- AttributeCollection.cs
- DynamicValidatorEventArgs.cs
- DropDownButton.cs
- SingleAnimation.cs
- SHA256.cs
- AstTree.cs
- BinaryParser.cs
- Baml2006KnownTypes.cs
- TreeBuilder.cs
- InfoCardHelper.cs
- HttpListenerException.cs
- QilReference.cs
- DataTable.cs
- SchemaManager.cs
- DrawingGroup.cs
- IsolatedStorageException.cs
- Clause.cs
- figurelengthconverter.cs
- NavigationHelper.cs