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
- XmlSchemas.cs
- StdValidatorsAndConverters.cs
- WebColorConverter.cs
- MessageProperties.cs
- WindowsFormsHelpers.cs
- JpegBitmapEncoder.cs
- PerformanceCounterLib.cs
- ParallelActivityDesigner.cs
- OrderablePartitioner.cs
- ViewLoader.cs
- SafeNativeMethods.cs
- ReadWriteSpinLock.cs
- HttpResponseWrapper.cs
- BasicHttpBindingElement.cs
- AdRotator.cs
- CharacterBuffer.cs
- BufferAllocator.cs
- GridSplitter.cs
- VBIdentifierDesigner.xaml.cs
- SqlLiftIndependentRowExpressions.cs
- SupportsPreviewControlAttribute.cs
- JournalEntryStack.cs
- Visitor.cs
- PictureBox.cs
- XmlNamespaceMapping.cs
- CodeDirectiveCollection.cs
- ContextMenu.cs
- _BasicClient.cs
- LinqDataSourceValidationException.cs
- ObjectStateManagerMetadata.cs
- SqlProviderServices.cs
- SamlAuthorizationDecisionStatement.cs
- ActivityDesignerHelper.cs
- smtppermission.cs
- BindingSource.cs
- COM2FontConverter.cs
- PropertyToken.cs
- ISCIIEncoding.cs
- ArgumentNullException.cs
- DataRowCollection.cs
- ChtmlFormAdapter.cs
- SubqueryRules.cs
- RegexCapture.cs
- ApplicationManager.cs
- KeyProperty.cs
- ProxySimple.cs
- NotifyIcon.cs
- FeatureAttribute.cs
- WebBrowsableAttribute.cs
- XmlChoiceIdentifierAttribute.cs
- ListDataBindEventArgs.cs
- XmlEntity.cs
- AttributeParameterInfo.cs
- OleAutBinder.cs
- PropertyPath.cs
- TextBox.cs
- HttpStaticObjectsCollectionWrapper.cs
- QueueProcessor.cs
- WebControl.cs
- XPathException.cs
- HandoffBehavior.cs
- SerializationHelper.cs
- VectorCollection.cs
- OpacityConverter.cs
- Variant.cs
- SqlProcedureAttribute.cs
- TemplateManager.cs
- BitmapEffectDrawingContextWalker.cs
- QueuePathDialog.cs
- TransactionBehavior.cs
- FactoryMaker.cs
- AsymmetricCryptoHandle.cs
- HandlerFactoryCache.cs
- TemplateControlCodeDomTreeGenerator.cs
- HtmlInputControl.cs
- XpsColorContext.cs
- PeerApplication.cs
- DrawingCollection.cs
- COM2Enum.cs
- ControlValuePropertyAttribute.cs
- ExpressionParser.cs
- SqlTriggerAttribute.cs
- CryptoApi.cs
- Bidi.cs
- InstancePersistenceException.cs
- MimeTypeMapper.cs
- UserNamePasswordValidator.cs
- InkPresenter.cs
- Stream.cs
- VectorAnimationUsingKeyFrames.cs
- URLString.cs
- WmlLabelAdapter.cs
- SkewTransform.cs
- SyntaxCheck.cs
- SecureStringHasher.cs
- SerializationInfo.cs
- SystemColors.cs
- TimeZone.cs
- UniqueConstraint.cs
- ListItemParagraph.cs