Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Speech / Src / Internal / GrammarBuilding / SemanticKeyElement.cs / 1 / SemanticKeyElement.cs
//------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------- using System.Collections.Generic; using System.Speech.Recognition; using System.Speech.Internal.SrgsParser; using System.Text; namespace System.Speech.Internal.GrammarBuilding { ////// /// internal sealed class SemanticKeyElement : BuilderElements { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors ////// /// /// internal SemanticKeyElement (string semanticKey) { _semanticKey = semanticKey; RuleElement rule = new RuleElement (semanticKey); _ruleRef = new RuleRefElement (rule, _semanticKey); Items.Add (rule); Items.Add (_ruleRef); } #endregion //******************************************************************** // // Public Methods // //******************************************************************* #region Public Methods /// TODOC <_include file='doc\SpeechAudioFormatInfo.uex' path='docs/doc[@for="SpeechAudioFormatInfo.Equals"]/*' /> public override bool Equals (object obj) { SemanticKeyElement refObj = obj as SemanticKeyElement; if (refObj == null) { return false; } if (!base.Equals (obj)) { return false; } // No need to check for the equality on _ruleRef. The children are in the Items, not the underlying rule return _semanticKey == refObj._semanticKey; } /// TODOC <_include file='doc\SpeechAudioFormatInfo.uex' path='docs/doc[@for="SpeechAudioFormatInfo.GetHashCode"]/*' /> public override int GetHashCode () { return base.GetHashCode (); } #endregion //******************************************************************** // // Internal Methods // //******************************************************************** #region Internal Methods ////// /// /// new internal void Add (string phrase) { _ruleRef.Add (new GrammarBuilderPhrase (phrase)); } ////// /// /// new internal void Add (GrammarBuilder builder) { foreach (GrammarBuilderBase item in builder.InternalBuilder.Items) { _ruleRef.Add (item); } } ////// /// ///internal override GrammarBuilderBase Clone () { SemanticKeyElement semanticKeyElement = new SemanticKeyElement (_semanticKey); semanticKeyElement._ruleRef.CloneItems (_ruleRef); return semanticKeyElement; } /// /// /// /// /// /// /// ///internal override IElement CreateElement (IElementFactory elementFactory, IElement parent, IRule rule, IdentifierCollection ruleIds) { // Create the rule associated with this key _ruleRef.Rule.CreateElement (elementFactory, parent, rule, ruleIds); // Create the ruleRef IElement ruleRef = _ruleRef.CreateElement (elementFactory, parent, rule, ruleIds); return ruleRef; } #endregion //******************************************************************* // // Internal Properties // //******************************************************************** #region Internal Properties override internal string DebugSummary { get { return _ruleRef.Rule.DebugSummary; } } #endregion //******************************************************************* // // Private Fields // //******************************************************************* #region Private Fields /// /// /// private readonly string _semanticKey; private readonly RuleRefElement _ruleRef; #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
- HtmlInputButton.cs
- CompressedStack.cs
- SmtpReplyReader.cs
- PathNode.cs
- ConvertersCollection.cs
- SourceChangedEventArgs.cs
- DataGridViewLayoutData.cs
- wgx_render.cs
- DataPointer.cs
- FunctionDetailsReader.cs
- PersistChildrenAttribute.cs
- ConfigXmlElement.cs
- Transaction.cs
- ErrorTableItemStyle.cs
- XmlHelper.cs
- SvcMapFileLoader.cs
- BooleanFunctions.cs
- FormsAuthenticationUser.cs
- InlinedAggregationOperatorEnumerator.cs
- GridViewHeaderRowPresenter.cs
- SchemaElementDecl.cs
- MimeMultiPart.cs
- DataServiceSaveChangesEventArgs.cs
- FragmentNavigationEventArgs.cs
- CollectionContainer.cs
- XsdBuildProvider.cs
- MimeParameters.cs
- CodeNamespaceImport.cs
- RecordsAffectedEventArgs.cs
- ScrollBar.cs
- PropertyInfoSet.cs
- XmlSignificantWhitespace.cs
- XmlAttributeCollection.cs
- SocketElement.cs
- Image.cs
- ProfileService.cs
- ExecutionProperties.cs
- NotifyCollectionChangedEventArgs.cs
- ObjectDataSourceEventArgs.cs
- ReachPageContentSerializerAsync.cs
- FormViewInsertEventArgs.cs
- WsdlInspector.cs
- DefaultSettingsSection.cs
- DesignerHelpers.cs
- ItemsChangedEventArgs.cs
- StyleXamlParser.cs
- XmlCountingReader.cs
- UIElement3D.cs
- ClientSponsor.cs
- WindowProviderWrapper.cs
- BuiltInExpr.cs
- InternalEnumValidatorAttribute.cs
- StreamGeometryContext.cs
- OpCopier.cs
- DataConnectionHelper.cs
- safemediahandle.cs
- IsolationInterop.cs
- MetadataProperty.cs
- DesignerAdapterAttribute.cs
- MenuTracker.cs
- StringExpressionSet.cs
- LinearQuaternionKeyFrame.cs
- DisposableCollectionWrapper.cs
- ToolBarTray.cs
- XmlAttributeCache.cs
- XsltConvert.cs
- SoapObjectWriter.cs
- RequestCache.cs
- EnumerableCollectionView.cs
- LazyTextWriterCreator.cs
- WinCategoryAttribute.cs
- FrugalList.cs
- PassportIdentity.cs
- SecurityElement.cs
- SessionPageStatePersister.cs
- CryptoApi.cs
- Button.cs
- ValidationSummary.cs
- CodeTypeReferenceCollection.cs
- dataprotectionpermission.cs
- OrderedEnumerableRowCollection.cs
- MailAddress.cs
- EntityDataSourceColumn.cs
- EnumBuilder.cs
- ListViewInsertionMark.cs
- OdbcParameter.cs
- TimeSpanSecondsConverter.cs
- StartUpEventArgs.cs
- ExpressionStringBuilder.cs
- SHA1.cs
- EventWaitHandle.cs
- MailHeaderInfo.cs
- SystemMulticastIPAddressInformation.cs
- XmlSchemaAnyAttribute.cs
- CodeTypeMemberCollection.cs
- SystemUdpStatistics.cs
- HtmlTableRow.cs
- SlotInfo.cs
- TreeBuilderXamlTranslator.cs
- ParagraphVisual.cs