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 / SapiInterop / SapiRecoContext.cs / 1 / SapiRecoContext.cs
//------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // // // All the calls to SAPI interfaces are wraped into the class 'SapiRecognizer', // 'SapiContext' and 'SapiGrammar'. // // The SAPI call are executed in the context of a proxy that is either a // pass-through or forward the request to an MTA proxy for SAPI 5.1 // // History: // 4/1/2006 jeanfp //----------------------------------------------------------------- using System; using System.Collections.Generic; using System.Speech.Recognition; using System.Speech.Internal.ObjectTokens; using System.Runtime.InteropServices; using System.Text; namespace System.Speech.Internal.SapiInterop { internal class SapiRecoContext : IDisposable { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors // This constuctor must be called in the context of the backgroung proxy if any internal SapiRecoContext (ISpRecoContext recoContext, SapiProxy proxy) { _recoContext = recoContext; _proxy = proxy; } public void Dispose () { if (!_disposed) { // Called from the client proxy _proxy.Invoke2 (delegate { Marshal.ReleaseComObject (_recoContext); }); _disposed = true; } GC.SuppressFinalize (this); } #endregion //******************************************************************** // // Internal Methods // //******************************************************************* #region Internal Methods internal void SetInterest (UInt64 eventInterest, UInt64 queuedInterest) { _proxy.Invoke2 (delegate { _recoContext.SetInterest (eventInterest, queuedInterest); }); } internal SapiGrammar CreateGrammar (UInt64 id) { ISpRecoGrammar sapiGrammar; return (SapiGrammar) _proxy.Invoke (delegate { _recoContext.CreateGrammar (id, out sapiGrammar); return new SapiGrammar (sapiGrammar, _proxy); }); } internal void SetMaxAlternates (UInt32 count) { _proxy.Invoke2 (delegate { _recoContext.SetMaxAlternates (count); }); } internal void SetAudioOptions (SPAUDIOOPTIONS options, IntPtr audioFormatId, IntPtr waveFormatEx) { _proxy.Invoke2 (delegate { _recoContext.SetAudioOptions (options, audioFormatId, waveFormatEx); }); } internal void Bookmark (SPBOOKMARKOPTIONS options, UInt64 position, IntPtr lparam) { _proxy.Invoke2 (delegate { _recoContext.Bookmark (options, position, lparam); }); } internal void Resume () { _proxy.Invoke2 (delegate { _recoContext.Resume (0); }); } internal void SetContextState (SPCONTEXTSTATE state) { _proxy.Invoke2 (delegate { _recoContext.SetContextState (state); }); } internal EventNotify CreateEventNotify (AsyncSerializedWorker asyncWorker, bool supportsSapi53) { return (EventNotify) _proxy.Invoke (delegate { return new EventNotify ((ISpEventSource) _recoContext, asyncWorker, supportsSapi53); }); } internal void DisposeEventNotify (EventNotify eventNotify) { _proxy.Invoke2 (delegate { eventNotify.Dispose (); }); } internal void SetGrammarOptions (SPGRAMMAROPTIONS options) { _proxy.Invoke2 (delegate { ((ISpRecoContext2) _recoContext).SetGrammarOptions (options); }); } #endregion //******************************************************************** // // Private Fields // //******************************************************************** #region Private Fields private ISpRecoContext _recoContext; private SapiProxy _proxy; private bool _disposed; #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // // // All the calls to SAPI interfaces are wraped into the class 'SapiRecognizer', // 'SapiContext' and 'SapiGrammar'. // // The SAPI call are executed in the context of a proxy that is either a // pass-through or forward the request to an MTA proxy for SAPI 5.1 // // History: // 4/1/2006 jeanfp //----------------------------------------------------------------- using System; using System.Collections.Generic; using System.Speech.Recognition; using System.Speech.Internal.ObjectTokens; using System.Runtime.InteropServices; using System.Text; namespace System.Speech.Internal.SapiInterop { internal class SapiRecoContext : IDisposable { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors // This constuctor must be called in the context of the backgroung proxy if any internal SapiRecoContext (ISpRecoContext recoContext, SapiProxy proxy) { _recoContext = recoContext; _proxy = proxy; } public void Dispose () { if (!_disposed) { // Called from the client proxy _proxy.Invoke2 (delegate { Marshal.ReleaseComObject (_recoContext); }); _disposed = true; } GC.SuppressFinalize (this); } #endregion //******************************************************************** // // Internal Methods // //******************************************************************* #region Internal Methods internal void SetInterest (UInt64 eventInterest, UInt64 queuedInterest) { _proxy.Invoke2 (delegate { _recoContext.SetInterest (eventInterest, queuedInterest); }); } internal SapiGrammar CreateGrammar (UInt64 id) { ISpRecoGrammar sapiGrammar; return (SapiGrammar) _proxy.Invoke (delegate { _recoContext.CreateGrammar (id, out sapiGrammar); return new SapiGrammar (sapiGrammar, _proxy); }); } internal void SetMaxAlternates (UInt32 count) { _proxy.Invoke2 (delegate { _recoContext.SetMaxAlternates (count); }); } internal void SetAudioOptions (SPAUDIOOPTIONS options, IntPtr audioFormatId, IntPtr waveFormatEx) { _proxy.Invoke2 (delegate { _recoContext.SetAudioOptions (options, audioFormatId, waveFormatEx); }); } internal void Bookmark (SPBOOKMARKOPTIONS options, UInt64 position, IntPtr lparam) { _proxy.Invoke2 (delegate { _recoContext.Bookmark (options, position, lparam); }); } internal void Resume () { _proxy.Invoke2 (delegate { _recoContext.Resume (0); }); } internal void SetContextState (SPCONTEXTSTATE state) { _proxy.Invoke2 (delegate { _recoContext.SetContextState (state); }); } internal EventNotify CreateEventNotify (AsyncSerializedWorker asyncWorker, bool supportsSapi53) { return (EventNotify) _proxy.Invoke (delegate { return new EventNotify ((ISpEventSource) _recoContext, asyncWorker, supportsSapi53); }); } internal void DisposeEventNotify (EventNotify eventNotify) { _proxy.Invoke2 (delegate { eventNotify.Dispose (); }); } internal void SetGrammarOptions (SPGRAMMAROPTIONS options) { _proxy.Invoke2 (delegate { ((ISpRecoContext2) _recoContext).SetGrammarOptions (options); }); } #endregion //******************************************************************** // // Private Fields // //******************************************************************** #region Private Fields private ISpRecoContext _recoContext; private SapiProxy _proxy; private bool _disposed; #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
- EdmProviderManifest.cs
- SourceFileBuildProvider.cs
- XmlComment.cs
- DbConnectionHelper.cs
- MarkerProperties.cs
- ListViewItem.cs
- StateDesignerConnector.cs
- CodeNamespace.cs
- SiteMapNodeItem.cs
- InfoCardCryptoHelper.cs
- ReadOnlyObservableCollection.cs
- OleDbRowUpdatedEvent.cs
- WizardPanelChangingEventArgs.cs
- ExecutionContext.cs
- FontFamilyIdentifier.cs
- XamlFigureLengthSerializer.cs
- TextDecorationUnitValidation.cs
- CompositeScriptReferenceEventArgs.cs
- AllMembershipCondition.cs
- CodeDomLoader.cs
- StyleTypedPropertyAttribute.cs
- KeyedQueue.cs
- AdRotator.cs
- QueryReaderSettings.cs
- ActivityCollectionMarkupSerializer.cs
- XmlDataContract.cs
- MultiView.cs
- DataPagerCommandEventArgs.cs
- CompiledRegexRunnerFactory.cs
- ButtonBase.cs
- ColorContext.cs
- Reference.cs
- PageCatalogPartDesigner.cs
- FrugalMap.cs
- AssociationSetEnd.cs
- QueryCorrelationInitializer.cs
- ObjectReaderCompiler.cs
- ErrorStyle.cs
- _NetRes.cs
- HtmlInputControl.cs
- TypefaceMetricsCache.cs
- XslCompiledTransform.cs
- WindowsComboBox.cs
- RayHitTestParameters.cs
- ErrorsHelper.cs
- SystemColorTracker.cs
- MsmqChannelFactoryBase.cs
- ProgressBarHighlightConverter.cs
- SelfIssuedAuthAsymmetricKey.cs
- Subset.cs
- DataGridViewComboBoxCell.cs
- PtsContext.cs
- SystemPens.cs
- Point3DAnimation.cs
- Token.cs
- Cursors.cs
- TextChangedEventArgs.cs
- InvalidDataException.cs
- GeneralTransformGroup.cs
- Transform.cs
- PriorityBindingExpression.cs
- BooleanConverter.cs
- ListSurrogate.cs
- RadioButtonList.cs
- EarlyBoundInfo.cs
- ToolboxComponentsCreatingEventArgs.cs
- Visual3D.cs
- Code.cs
- RunClient.cs
- Root.cs
- XmlSchemaAnnotation.cs
- IItemProperties.cs
- DataObjectEventArgs.cs
- EntityContainerRelationshipSetEnd.cs
- HtmlEmptyTagControlBuilder.cs
- RightsManagementEncryptionTransform.cs
- StructuredType.cs
- StatusBar.cs
- ManagedIStream.cs
- Animatable.cs
- ReadOnlyHierarchicalDataSource.cs
- ProjectionRewriter.cs
- NavigationPropertyEmitter.cs
- _NetworkingPerfCounters.cs
- TabItem.cs
- Deflater.cs
- documentsequencetextcontainer.cs
- JsonServiceDocumentSerializer.cs
- DBSqlParserTable.cs
- ObjectStateFormatter.cs
- AffineTransform3D.cs
- StringExpressionSet.cs
- Image.cs
- RegistrationServices.cs
- SqlInternalConnectionSmi.cs
- Line.cs
- XmlSchemaSimpleContent.cs
- RequestContext.cs
- NavigationCommands.cs
- PauseStoryboard.cs