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
- AuthenticationConfig.cs
- D3DImage.cs
- PersistNameAttribute.cs
- RegexGroup.cs
- ServiceBusyException.cs
- ParallelLoopState.cs
- SystemBrushes.cs
- RegexBoyerMoore.cs
- ReliableDuplexSessionChannel.cs
- VersionConverter.cs
- Binding.cs
- CacheOutputQuery.cs
- BasicViewGenerator.cs
- Ops.cs
- SqlDependencyUtils.cs
- SqlAliaser.cs
- NameValueConfigurationCollection.cs
- OpenTypeLayoutCache.cs
- documentsequencetextview.cs
- DesignTimeXamlWriter.cs
- BinaryParser.cs
- StrokeFIndices.cs
- StringComparer.cs
- ListViewDataItem.cs
- SoapWriter.cs
- SmiContext.cs
- CodeCompiler.cs
- CqlParser.cs
- XmlCharType.cs
- SystemFonts.cs
- BaseDataListActionList.cs
- FrameworkObject.cs
- SoapExtensionStream.cs
- LowerCaseStringConverter.cs
- ObjectConverter.cs
- EncodingDataItem.cs
- EngineSite.cs
- CapabilitiesSection.cs
- DisableDpiAwarenessAttribute.cs
- EntityReference.cs
- PolicyChain.cs
- TreeViewImageIndexConverter.cs
- Font.cs
- WindowsRichEdit.cs
- UnknownWrapper.cs
- FramingFormat.cs
- TableAdapterManagerMethodGenerator.cs
- PropertyMetadata.cs
- EmptyControlCollection.cs
- XmlProcessingInstruction.cs
- XPathScanner.cs
- MediaTimeline.cs
- InsufficientExecutionStackException.cs
- SplitterCancelEvent.cs
- DataSourceControlBuilder.cs
- EdmComplexTypeAttribute.cs
- AlgoModule.cs
- Pens.cs
- X509PeerCertificateElement.cs
- HtmlTable.cs
- TextAutomationPeer.cs
- SoapMessage.cs
- SHA512Managed.cs
- GPStream.cs
- XmlException.cs
- SelectionEditingBehavior.cs
- SystemResourceKey.cs
- RichTextBoxAutomationPeer.cs
- ConnectorDragDropGlyph.cs
- log.cs
- SvcMapFile.cs
- TreeNodeBindingCollection.cs
- CustomPopupPlacement.cs
- KerberosReceiverSecurityToken.cs
- ProfileParameter.cs
- StreamingContext.cs
- SubpageParagraph.cs
- ReturnValue.cs
- XmlBinaryReaderSession.cs
- WindowsSpinner.cs
- HtmlInputSubmit.cs
- ToggleProviderWrapper.cs
- ContextMarshalException.cs
- TreeNodeConverter.cs
- RegexCharClass.cs
- CompiledQuery.cs
- RTLAwareMessageBox.cs
- SafeFileMappingHandle.cs
- ObjectDataSourceDisposingEventArgs.cs
- ContentDisposition.cs
- SeekStoryboard.cs
- DataServiceProcessingPipeline.cs
- _SSPISessionCache.cs
- ExpandCollapseProviderWrapper.cs
- XmlExpressionDumper.cs
- DoubleAnimation.cs
- FtpWebRequest.cs
- FileDialogCustomPlaces.cs
- BaseResourcesBuildProvider.cs
- DiffuseMaterial.cs