Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Speech / Src / Internal / GrammarBuilding / GrammarBuilderPhrase.cs / 1 / GrammarBuilderPhrase.cs
//------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------- using System.Diagnostics; using System.Speech.Internal.SrgsCompiler; using System.Speech.Internal.SrgsParser; using System.Speech.Recognition; namespace System.Speech.Internal.GrammarBuilding { #if VSCOMPILE [DebuggerDisplay ("{DebugSummary}")] #endif internal sealed class GrammarBuilderPhrase : GrammarBuilderBase { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors ////// /// /// internal GrammarBuilderPhrase (string phrase) : this (phrase, false, SubsetMatchingMode.OrderedSubset) { } ////// /// /// /// internal GrammarBuilderPhrase (string phrase, SubsetMatchingMode subsetMatchingCriteria) : this (phrase, true, subsetMatchingCriteria) { } ////// /// /// /// /// private GrammarBuilderPhrase (string phrase, bool subsetMatching, SubsetMatchingMode subsetMatchingCriteria) { _phrase = string.Copy (phrase); _subsetMatching = subsetMatching; switch (subsetMatchingCriteria) { case SubsetMatchingMode.OrderedSubset: _matchMode = MatchMode.OrderedSubset; break; case SubsetMatchingMode.OrderedSubsetContentRequired: _matchMode = MatchMode.OrderedSubsetContentRequired; break; case SubsetMatchingMode.Subsequence: _matchMode = MatchMode.Subsequence; break; case SubsetMatchingMode.SubsequenceContentRequired: _matchMode = MatchMode.SubsequenceContentRequired; break; } } ////// /// /// /// /// private GrammarBuilderPhrase (string phrase, bool subsetMatching, MatchMode matchMode) { _phrase = string.Copy (phrase); _subsetMatching = subsetMatching; _matchMode = matchMode; } #endregion //******************************************************************** // // Public Methods // //******************************************************************* #region Public Methods /// TODOC <_include file='doc\SpeechAudioFormatInfo.uex' path='docs/doc[@for="SpeechAudioFormatInfo.Equals"]/*' /> public override bool Equals (object obj) { GrammarBuilderPhrase refObj = obj as GrammarBuilderPhrase; if (refObj == null) { return false; } return _phrase == refObj._phrase && _matchMode == refObj._matchMode && _subsetMatching == refObj._subsetMatching; } /// TODOC <_include file='doc\SpeechAudioFormatInfo.uex' path='docs/doc[@for="SpeechAudioFormatInfo.GetHashCode"]/*' /> public override int GetHashCode () { return _phrase.GetHashCode (); } #endregion //******************************************************************** // // Internal Methods // //******************************************************************** #region Internal Methods ////// /// ///internal override GrammarBuilderBase Clone () { return new GrammarBuilderPhrase (_phrase, _subsetMatching, _matchMode); } /// /// /// /// /// /// /// ///internal override IElement CreateElement (IElementFactory elementFactory, IElement parent, IRule rule, IdentifierCollection ruleIds) { return CreatePhraseElement (elementFactory, parent); } #endregion //******************************************************************* // // Internal Properties // //******************************************************************** #region Internal Properties override internal string DebugSummary { get { return "�" + _phrase + "�"; } } #endregion //******************************************************************* // // Private Methods // //******************************************************************* #region Private Methods /// /// /// /// /// ///private IElement CreatePhraseElement (IElementFactory elementFactory, IElement parent) { if (_subsetMatching) { // Create and return the ISubset representing the current phrase return elementFactory.CreateSubset (parent, _phrase, _matchMode); } else { if (elementFactory is SrgsElementCompilerFactory) { XmlParser.ParseText (parent, _phrase, null, null, -1f, new CreateTokenCallback (elementFactory.CreateToken)); } else { // Create and return the IElementText representing the current phrase return elementFactory.CreateText (parent, _phrase); } } return null; } #endregion //******************************************************************* // // Private Fields // //******************************************************************** #region Private Fields private readonly string _phrase; private readonly bool _subsetMatching; private readonly MatchMode _matchMode; #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
- TableCellCollection.cs
- ExpressionBuilderContext.cs
- PreviewKeyDownEventArgs.cs
- SortableBindingList.cs
- PrintPageEvent.cs
- XsdBuilder.cs
- ToolStripArrowRenderEventArgs.cs
- cookiecontainer.cs
- RoutingExtensionElement.cs
- ThumbButtonInfo.cs
- HyperlinkAutomationPeer.cs
- XmlChildEnumerator.cs
- RangeValueProviderWrapper.cs
- WebPartCloseVerb.cs
- HtmlSelect.cs
- MemberPath.cs
- StylusCollection.cs
- Pair.cs
- MeasureData.cs
- RowParagraph.cs
- CharEnumerator.cs
- OledbConnectionStringbuilder.cs
- TabletCollection.cs
- DesignSurfaceCollection.cs
- EncryptedKey.cs
- ListViewItemMouseHoverEvent.cs
- AsymmetricKeyExchangeDeformatter.cs
- TableLayoutPanelDesigner.cs
- TdsRecordBufferSetter.cs
- RectangleGeometry.cs
- DataGridViewCellConverter.cs
- FixedPageAutomationPeer.cs
- DatatypeImplementation.cs
- DocumentXmlWriter.cs
- QueuePropertyVariants.cs
- CommandValueSerializer.cs
- MethodToken.cs
- DataBindingHandlerAttribute.cs
- Unit.cs
- columnmapfactory.cs
- BufferModesCollection.cs
- LoginView.cs
- ActivityExecutor.cs
- ByteConverter.cs
- BoundingRectTracker.cs
- InputScope.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- MemberAccessException.cs
- WindowsListViewGroupSubsetLink.cs
- MatrixCamera.cs
- MostlySingletonList.cs
- FilterQueryOptionExpression.cs
- HttpVersion.cs
- XmlSchemaAnnotation.cs
- DateTimeFormat.cs
- SymDocumentType.cs
- CollectionTypeElement.cs
- PathGradientBrush.cs
- RequestCachingSection.cs
- Rect.cs
- HtmlProps.cs
- PartManifestEntry.cs
- ObjectStateEntryBaseUpdatableDataRecord.cs
- DataGridViewHitTestInfo.cs
- StringConverter.cs
- SqlBuilder.cs
- ColumnHeaderConverter.cs
- Event.cs
- ExpressionParser.cs
- Classification.cs
- SqlExpressionNullability.cs
- WebPartCatalogAddVerb.cs
- KeyedHashAlgorithm.cs
- Win32SafeHandles.cs
- ScrollItemPatternIdentifiers.cs
- DataRow.cs
- ToolStripPanel.cs
- ResolveNameEventArgs.cs
- PermissionSetTriple.cs
- ConfigurationManagerInternalFactory.cs
- ActiveXContainer.cs
- ArrangedElementCollection.cs
- SafeNativeMethods.cs
- ViewStateException.cs
- ImageDrawing.cs
- SystemIPGlobalProperties.cs
- ArrayElementGridEntry.cs
- BaseDataListPage.cs
- X500Name.cs
- metadatamappinghashervisitor.hashsourcebuilder.cs
- ListSourceHelper.cs
- SystemWebCachingSectionGroup.cs
- NonSerializedAttribute.cs
- XamlDesignerSerializationManager.cs
- DoubleStorage.cs
- ScrollItemProviderWrapper.cs
- ConstraintCollection.cs
- EventSetter.cs
- IgnoreDeviceFilterElement.cs
- WmlPhoneCallAdapter.cs