Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Speech / Src / Internal / SrgsCompiler / propertytag.cs / 1 / propertytag.cs
//------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------- using System; using System.Runtime.InteropServices; using System.Speech.Internal.SrgsParser; #pragma warning disable 1634, 1691 // Allows suppression of certain PreSharp messages. namespace System.Speech.Internal.SrgsCompiler { ////// Summary description for Rule. /// internal sealed class PropertyTag : ParseElement, IPropertyTag { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors internal PropertyTag (ParseElement parent, Backend backend) : base (parent._rule) { } #endregion //******************************************************************** // // Internal Methods // //******************************************************************* #region Internal Methods #pragma warning disable 56507 /// TODOC <_include file='doc\Tag.uex' path='docs/doc[@for="Tag.RepeatProbability"]/*' /> // The probability that this item will be repeated. void IPropertyTag.NameValue (IElement parent, string name, object value) { //Return if the Tag content is empty string sValue = value as string; if (string.IsNullOrEmpty (name) && (value == null || (sValue != null && string.IsNullOrEmpty ((sValue).Trim ())))) { return; } // Build semantic properties to attach to epsilon transition. //Name= pszValue = null vValue = VT_EMPTY //Name="string" pszValue = "string" vValue = VT_EMPTY //Name=true pszValue = null vValue = VT_BOOL //Name=123 pszValue = null vValue = VT_I4 //Name=3.14 pszValue = null vValue = VT_R8 if (!string.IsNullOrEmpty (name)) { // Set property name _propInfo._pszName = name; } else { // If no property, set the name to the anonymous property name _propInfo._pszName = "="; } // Set property value _propInfo._comValue = value; if (value == null) { _propInfo._comType = VarEnum.VT_EMPTY; } else if (sValue != null) { _propInfo._comType = VarEnum.VT_EMPTY; } else if (value is int) { _propInfo._comType = VarEnum.VT_I4; } else if (value is double) { _propInfo._comType = VarEnum.VT_R8; } else if (value is bool) { _propInfo._comType = VarEnum.VT_BOOL; } else { // should never get here System.Diagnostics.Debug.Assert (false); } } void IElement.PostParse (IElement parentElement) { ParseElementCollection parent = (ParseElementCollection) parentElement; _propInfo._ulId = (uint) parent._rule._iSerialize2; // Attach the semantic properties on the parent element. parent.AddSementicPropertyTag (_propInfo); } #pragma warning restore 56507 #endregion //******************************************************************** // // Private Fields // //******************************************************************** #region Private Fields private CfgGrammar.CfgProperty _propInfo = new CfgGrammar.CfgProperty (); #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------- using System; using System.Runtime.InteropServices; using System.Speech.Internal.SrgsParser; #pragma warning disable 1634, 1691 // Allows suppression of certain PreSharp messages. namespace System.Speech.Internal.SrgsCompiler { ////// Summary description for Rule. /// internal sealed class PropertyTag : ParseElement, IPropertyTag { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors internal PropertyTag (ParseElement parent, Backend backend) : base (parent._rule) { } #endregion //******************************************************************** // // Internal Methods // //******************************************************************* #region Internal Methods #pragma warning disable 56507 /// TODOC <_include file='doc\Tag.uex' path='docs/doc[@for="Tag.RepeatProbability"]/*' /> // The probability that this item will be repeated. void IPropertyTag.NameValue (IElement parent, string name, object value) { //Return if the Tag content is empty string sValue = value as string; if (string.IsNullOrEmpty (name) && (value == null || (sValue != null && string.IsNullOrEmpty ((sValue).Trim ())))) { return; } // Build semantic properties to attach to epsilon transition. //Name= pszValue = null vValue = VT_EMPTY //Name="string" pszValue = "string" vValue = VT_EMPTY //Name=true pszValue = null vValue = VT_BOOL //Name=123 pszValue = null vValue = VT_I4 //Name=3.14 pszValue = null vValue = VT_R8 if (!string.IsNullOrEmpty (name)) { // Set property name _propInfo._pszName = name; } else { // If no property, set the name to the anonymous property name _propInfo._pszName = "="; } // Set property value _propInfo._comValue = value; if (value == null) { _propInfo._comType = VarEnum.VT_EMPTY; } else if (sValue != null) { _propInfo._comType = VarEnum.VT_EMPTY; } else if (value is int) { _propInfo._comType = VarEnum.VT_I4; } else if (value is double) { _propInfo._comType = VarEnum.VT_R8; } else if (value is bool) { _propInfo._comType = VarEnum.VT_BOOL; } else { // should never get here System.Diagnostics.Debug.Assert (false); } } void IElement.PostParse (IElement parentElement) { ParseElementCollection parent = (ParseElementCollection) parentElement; _propInfo._ulId = (uint) parent._rule._iSerialize2; // Attach the semantic properties on the parent element. parent.AddSementicPropertyTag (_propInfo); } #pragma warning restore 56507 #endregion //******************************************************************** // // Private Fields // //******************************************************************** #region Private Fields private CfgGrammar.CfgProperty _propInfo = new CfgGrammar.CfgProperty (); #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- UserControl.cs
- KeyFrames.cs
- FeatureManager.cs
- FamilyTypefaceCollection.cs
- OciHandle.cs
- WorkflowOwnerAsyncResult.cs
- ArrayList.cs
- DataGridViewDataConnection.cs
- GroupItem.cs
- XmlSchemaIdentityConstraint.cs
- UniqueConstraint.cs
- SerialPinChanges.cs
- IListConverters.cs
- XmlILConstructAnalyzer.cs
- MiniCustomAttributeInfo.cs
- UserMapPath.cs
- WindowAutomationPeer.cs
- TextModifier.cs
- AnimationStorage.cs
- webeventbuffer.cs
- DataGridViewCellCollection.cs
- PhoneCall.cs
- CultureSpecificCharacterBufferRange.cs
- ReferenceConverter.cs
- PackageRelationship.cs
- PropertyManager.cs
- SkewTransform.cs
- WorkflowInstanceExtensionManager.cs
- XmlILOptimizerVisitor.cs
- IsolatedStorageFileStream.cs
- HttpWebResponse.cs
- ReversePositionQuery.cs
- TypeBinaryExpression.cs
- CompositeScriptReference.cs
- RichTextBoxConstants.cs
- AppDomain.cs
- DependencySource.cs
- DynamicValidatorEventArgs.cs
- TemplateControlParser.cs
- DataGridViewDataErrorEventArgs.cs
- ColumnReorderedEventArgs.cs
- DocComment.cs
- XmlSortKey.cs
- ParameterBuilder.cs
- FormViewDesigner.cs
- ImageSourceConverter.cs
- PagesSection.cs
- Instrumentation.cs
- DesignerView.cs
- WebPartConnectionsCancelEventArgs.cs
- ExpressionPrinter.cs
- Token.cs
- EtwTrace.cs
- PersonalizationState.cs
- FontInfo.cs
- StringUtil.cs
- SecurityUtils.cs
- DataSet.cs
- SQLBoolean.cs
- SessionPageStateSection.cs
- CommonDialog.cs
- QueryAccessibilityHelpEvent.cs
- ActiveXSite.cs
- EditingMode.cs
- OdbcConnection.cs
- XmlCountingReader.cs
- RegexRunner.cs
- XmlSchemaAnnotation.cs
- VisualBrush.cs
- DiagnosticTrace.cs
- UnauthorizedWebPart.cs
- AnimationClockResource.cs
- SqlCacheDependency.cs
- HtmlInputSubmit.cs
- X509PeerCertificateElement.cs
- FixedSOMContainer.cs
- UnsafeNativeMethodsCLR.cs
- DecoderBestFitFallback.cs
- TextEffect.cs
- ThemeDictionaryExtension.cs
- Tuple.cs
- DataGridViewDataConnection.cs
- XmlAutoDetectWriter.cs
- HttpModuleAction.cs
- OrthographicCamera.cs
- DrawingContextWalker.cs
- LiteralControl.cs
- ProfileSection.cs
- CustomCategoryAttribute.cs
- StringAnimationBase.cs
- FreezableOperations.cs
- XmlChildEnumerator.cs
- MSAAWinEventWrap.cs
- RadioButtonBaseAdapter.cs
- XmlSyndicationContent.cs
- ImageMap.cs
- BuildProvider.cs
- IsolatedStorageFileStream.cs
- DnsPermission.cs
- VisualStyleRenderer.cs