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
- WindowAutomationPeer.cs
- PagesSection.cs
- IntPtr.cs
- Pkcs9Attribute.cs
- SmiRecordBuffer.cs
- GridViewSortEventArgs.cs
- TransformProviderWrapper.cs
- CellConstant.cs
- TreeViewItem.cs
- VScrollProperties.cs
- DeviceFilterEditorDialog.cs
- CollectionEditVerbManager.cs
- Tag.cs
- Enum.cs
- WebPartConnectionsConnectVerb.cs
- PopupEventArgs.cs
- ObjectAnimationUsingKeyFrames.cs
- ColumnWidthChangingEvent.cs
- HashAlgorithm.cs
- SerializationSectionGroup.cs
- FixedPageProcessor.cs
- OdbcConnectionStringbuilder.cs
- formatter.cs
- InstanceDataCollectionCollection.cs
- SQLMembershipProvider.cs
- GridViewColumn.cs
- AddInSegmentDirectoryNotFoundException.cs
- AdapterUtil.cs
- StrongNameMembershipCondition.cs
- HttpListenerContext.cs
- StackBuilderSink.cs
- PasswordBox.cs
- GridSplitterAutomationPeer.cs
- RepeaterItem.cs
- BypassElementCollection.cs
- XmlSchemaInferenceException.cs
- SafeSecurityHelper.cs
- MouseOverProperty.cs
- FilterElement.cs
- validation.cs
- ControlIdConverter.cs
- Compilation.cs
- ActivityMarkupSerializer.cs
- TraceUtility.cs
- XmlQualifiedNameTest.cs
- TraceLevelHelper.cs
- NavigationProgressEventArgs.cs
- TransactionContext.cs
- PaperSource.cs
- IsolatedStorageFile.cs
- SimplePropertyEntry.cs
- BindingExpression.cs
- BufferedGraphicsContext.cs
- X509CertificateStore.cs
- ValidationPropertyAttribute.cs
- MatrixAnimationUsingKeyFrames.cs
- TemplateLookupAction.cs
- AsymmetricAlgorithm.cs
- SmiTypedGetterSetter.cs
- WebSysDefaultValueAttribute.cs
- SqlUdtInfo.cs
- IgnoreSectionHandler.cs
- MethodBuilder.cs
- GroupBox.cs
- If.cs
- LinkArea.cs
- MonthChangedEventArgs.cs
- CellIdBoolean.cs
- ReadOnlyDictionary.cs
- HtmlInputButton.cs
- ShimAsPublicXamlType.cs
- MemberJoinTreeNode.cs
- Panel.cs
- PeerTransportListenAddressValidatorAttribute.cs
- XmlCollation.cs
- MultiSelector.cs
- StylusButtonCollection.cs
- OrderedHashRepartitionEnumerator.cs
- ObjectDisposedException.cs
- BitVector32.cs
- ValidationHelpers.cs
- CompletionProxy.cs
- DetailsViewUpdatedEventArgs.cs
- ManagedFilter.cs
- TrustManager.cs
- ObjectKeyFrameCollection.cs
- CheckBox.cs
- FlowDocumentFormatter.cs
- SafeFileMappingHandle.cs
- AppSettingsExpressionBuilder.cs
- AdornedElementPlaceholder.cs
- XmlRootAttribute.cs
- SqlParameter.cs
- EditorPartDesigner.cs
- WindowsSlider.cs
- MsdtcWrapper.cs
- unitconverter.cs
- AdRotator.cs
- DataGridPagerStyle.cs
- XmlSchemaParticle.cs