Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Speech / Src / Recognition / SrgsGrammar / SrgsOneOf.cs / 1 / SrgsOneOf.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: // // History: // 5/1/2004 jeanfp Created from the Kurosawa Code //--------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Diagnostics; using System.Globalization; using System.Speech.Internal; using System.Speech.Internal.SrgsParser; using System.Text; using System.Xml; namespace System.Speech.Recognition.SrgsGrammar { /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf"]/*' /> [Serializable] [DebuggerDisplay ("{DebuggerDisplayString ()}")] [DebuggerTypeProxy (typeof (OneOfDebugDisplay))] public class SrgsOneOf : SrgsElement, IOneOf { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf.OneOf1"]/*' /> public SrgsOneOf () { } /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf.OneOf2"]/*' /> public SrgsOneOf (params string [] items) : this () { Helpers.ThrowIfNull (items, "items"); for (int i = 0; i < items.Length; i++) { if (items [i] == null) { throw new ArgumentNullException ("items", SR.Get (SRID.ParamsEntryNullIllegal)); } _items.Add (new SrgsItem (items [i])); } } /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf.OneOf3"]/*' /> public SrgsOneOf (params SrgsItem [] items) : this () { Helpers.ThrowIfNull (items, "items"); for (int i = 0; i < items.Length; i++) { SrgsItem item = items [i]; if (item == null) { throw new ArgumentNullException ("items", SR.Get (SRID.ParamsEntryNullIllegal)); } _items.Add (item); } } #endregion //******************************************************************** // // Public Methods // //******************************************************************* #region public Method ////// TODOC /// /// public void Add (SrgsItem item) { Helpers.ThrowIfNull (item, "item"); Items.Add (item); } #endregion //******************************************************************** // // Public Properties // //******************************************************************** #region public Properties // ISSUE: Do we need more construcors? Take a look at RuleElementCollection.AddOneOf methods. [Bug# 37115] /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf.Elements"]/*' /> public CollectionItems { get { return _items; } } #endregion //******************************************************************* // // Internal Methods // //******************************************************************** #region internal Methods internal override void WriteSrgs (XmlWriter writer) { // Write ... writer.WriteStartElement ("one-of"); foreach (SrgsItem element in _items) { element.WriteSrgs (writer); } writer.WriteEndElement (); } internal override string DebuggerDisplayString () { StringBuilder sb = new StringBuilder ("SrgsOneOf Count = "); sb.Append (_items.Count); return sb.ToString (); } #endregion //******************************************************************* // // Protected Properties // //******************************************************************* #region Protected Properties ////// Allows the Srgs Element base class to implement /// features requiring recursion in the elements tree. /// ///internal override SrgsElement [] Children { get { SrgsElement [] elements = new SrgsElement [_items.Count]; int i = 0; foreach (SrgsItem item in _items) { elements [i++] = item; } return elements; } } #endregion //******************************************************************* // // Private Fields // //******************************************************************** #region Private Fields private SrgsItemList _items = new SrgsItemList (); #endregion //******************************************************************* // // Private Types // //******************************************************************** #region Private Types // Used by the debbugger display attribute internal class OneOfDebugDisplay { public OneOfDebugDisplay (SrgsOneOf oneOf) { _items = oneOf._items; } [DebuggerBrowsable (DebuggerBrowsableState.RootHidden)] public SrgsItem [] AKeys { get { SrgsItem [] items = new SrgsItem [_items.Count]; for (int i = 0; i < _items.Count; i++) { items [i] = _items [i]; } return items; } } private Collection _items; } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // // Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: // // History: // 5/1/2004 jeanfp Created from the Kurosawa Code //--------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Diagnostics; using System.Globalization; using System.Speech.Internal; using System.Speech.Internal.SrgsParser; using System.Text; using System.Xml; namespace System.Speech.Recognition.SrgsGrammar { /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf"]/*' /> [Serializable] [DebuggerDisplay ("{DebuggerDisplayString ()}")] [DebuggerTypeProxy (typeof (OneOfDebugDisplay))] public class SrgsOneOf : SrgsElement, IOneOf { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf.OneOf1"]/*' /> public SrgsOneOf () { } /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf.OneOf2"]/*' /> public SrgsOneOf (params string [] items) : this () { Helpers.ThrowIfNull (items, "items"); for (int i = 0; i < items.Length; i++) { if (items [i] == null) { throw new ArgumentNullException ("items", SR.Get (SRID.ParamsEntryNullIllegal)); } _items.Add (new SrgsItem (items [i])); } } /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf.OneOf3"]/*' /> public SrgsOneOf (params SrgsItem [] items) : this () { Helpers.ThrowIfNull (items, "items"); for (int i = 0; i < items.Length; i++) { SrgsItem item = items [i]; if (item == null) { throw new ArgumentNullException ("items", SR.Get (SRID.ParamsEntryNullIllegal)); } _items.Add (item); } } #endregion //******************************************************************** // // Public Methods // //******************************************************************* #region public Method ////// TODOC /// /// public void Add (SrgsItem item) { Helpers.ThrowIfNull (item, "item"); Items.Add (item); } #endregion //******************************************************************** // // Public Properties // //******************************************************************** #region public Properties // ISSUE: Do we need more construcors? Take a look at RuleElementCollection.AddOneOf methods. [Bug# 37115] /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf.Elements"]/*' /> public CollectionItems { get { return _items; } } #endregion //******************************************************************* // // Internal Methods // //******************************************************************** #region internal Methods internal override void WriteSrgs (XmlWriter writer) { // Write ... writer.WriteStartElement ("one-of"); foreach (SrgsItem element in _items) { element.WriteSrgs (writer); } writer.WriteEndElement (); } internal override string DebuggerDisplayString () { StringBuilder sb = new StringBuilder ("SrgsOneOf Count = "); sb.Append (_items.Count); return sb.ToString (); } #endregion //******************************************************************* // // Protected Properties // //******************************************************************* #region Protected Properties ////// Allows the Srgs Element base class to implement /// features requiring recursion in the elements tree. /// ///internal override SrgsElement [] Children { get { SrgsElement [] elements = new SrgsElement [_items.Count]; int i = 0; foreach (SrgsItem item in _items) { elements [i++] = item; } return elements; } } #endregion //******************************************************************* // // Private Fields // //******************************************************************** #region Private Fields private SrgsItemList _items = new SrgsItemList (); #endregion //******************************************************************* // // Private Types // //******************************************************************** #region Private Types // Used by the debbugger display attribute internal class OneOfDebugDisplay { public OneOfDebugDisplay (SrgsOneOf oneOf) { _items = oneOf._items; } [DebuggerBrowsable (DebuggerBrowsableState.RootHidden)] public SrgsItem [] AKeys { get { SrgsItem [] items = new SrgsItem [_items.Count]; for (int i = 0; i < _items.Count; i++) { items [i] = _items [i]; } return items; } } private Collection _items; } #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
- WebPartDisplayModeCollection.cs
- NameValueFileSectionHandler.cs
- TokenBasedSetEnumerator.cs
- TextWriterTraceListener.cs
- ColumnMap.cs
- BevelBitmapEffect.cs
- DataTableMapping.cs
- Timer.cs
- SerializationAttributes.cs
- BlurEffect.cs
- InternalTypeHelper.cs
- ExceptionHandlerDesigner.cs
- WebPartHeaderCloseVerb.cs
- OleDbParameter.cs
- Double.cs
- Pen.cs
- MetadataWorkspace.cs
- Vector3DKeyFrameCollection.cs
- SrgsRuleRef.cs
- SpeechEvent.cs
- AssemblyInfo.cs
- SimpleApplicationHost.cs
- GCHandleCookieTable.cs
- VectorCollection.cs
- XmlIgnoreAttribute.cs
- Win32KeyboardDevice.cs
- ListViewSortEventArgs.cs
- basemetadatamappingvisitor.cs
- tibetanshape.cs
- ByteStreamBufferedMessageData.cs
- UnsafeNativeMethods.cs
- SplitContainer.cs
- OptionalMessageQuery.cs
- NotFiniteNumberException.cs
- ResourceWriter.cs
- CodeMethodInvokeExpression.cs
- CompilerLocalReference.cs
- ColorConvertedBitmapExtension.cs
- GridLengthConverter.cs
- SequenceFullException.cs
- SqlDataRecord.cs
- PanelStyle.cs
- HttpCacheVaryByContentEncodings.cs
- CompilerGlobalScopeAttribute.cs
- Component.cs
- PtsHelper.cs
- WebPartTracker.cs
- GifBitmapEncoder.cs
- JsonGlobals.cs
- NumberFormatInfo.cs
- ClientRolePrincipal.cs
- TreeNodeCollectionEditorDialog.cs
- ApplicationSecurityInfo.cs
- ReadOnlyPropertyMetadata.cs
- MessageLoggingElement.cs
- DBSqlParser.cs
- TextBoxAutomationPeer.cs
- AttributeTableBuilder.cs
- ViewSimplifier.cs
- ProxyWebPartConnectionCollection.cs
- Funcletizer.cs
- SoapSchemaMember.cs
- WindowInteractionStateTracker.cs
- OpenFileDialog.cs
- CompatibleIComparer.cs
- NamedElement.cs
- Menu.cs
- RequestQueryParser.cs
- PropertyChangedEventArgs.cs
- WebConfigurationFileMap.cs
- UnsafeNativeMethods.cs
- WCFBuildProvider.cs
- RemotingClientProxy.cs
- BulletedListEventArgs.cs
- ListDictionaryInternal.cs
- ProfileProvider.cs
- ProcessThread.cs
- SecurityDescriptor.cs
- FilterableAttribute.cs
- XNodeNavigator.cs
- TextStore.cs
- EndEvent.cs
- ItemList.cs
- Shared.cs
- DecoderFallback.cs
- XmlQueryType.cs
- ListenerServiceInstallComponent.cs
- XmlSchemaExternal.cs
- IOThreadScheduler.cs
- CorrelationTokenTypeConvertor.cs
- DispatchWrapper.cs
- SqlCacheDependencyDatabaseCollection.cs
- TypeUtils.cs
- ImageCodecInfoPrivate.cs
- SafeIUnknown.cs
- WebPart.cs
- ApplicationInfo.cs
- SemaphoreSecurity.cs
- ToolStripProgressBar.cs
- ParsedAttributeCollection.cs