Code:
/ DotNET / DotNET / 8.0 / untmp / 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 wrapped 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 [....] //----------------------------------------------------------------- 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- PackagingUtilities.cs
- EntityDataReader.cs
- DesignerCategoryAttribute.cs
- AssertHelper.cs
- TableRowsCollectionEditor.cs
- PathData.cs
- ToolboxItemFilterAttribute.cs
- ConvertEvent.cs
- LineServicesRun.cs
- SubMenuStyleCollection.cs
- ArrayTypeMismatchException.cs
- BaseTemplateCodeDomTreeGenerator.cs
- TraceHandler.cs
- _UncName.cs
- DataGridCell.cs
- SystemWebSectionGroup.cs
- XslNumber.cs
- __TransparentProxy.cs
- COAUTHIDENTITY.cs
- CodeStatementCollection.cs
- EpmCustomContentWriterNodeData.cs
- X509Chain.cs
- StaticDataManager.cs
- _HeaderInfoTable.cs
- FixUpCollection.cs
- SystemNetworkInterface.cs
- LogArchiveSnapshot.cs
- CodeFieldReferenceExpression.cs
- DateTimeOffset.cs
- TableParaClient.cs
- KeyEventArgs.cs
- TouchesCapturedWithinProperty.cs
- InvokeMemberBinder.cs
- WindowsGraphicsCacheManager.cs
- RequestResponse.cs
- DataStorage.cs
- CapabilitiesState.cs
- LocalizableAttribute.cs
- TextFormatterHost.cs
- SqlClientWrapperSmiStream.cs
- XmlDomTextWriter.cs
- ModuleBuilderData.cs
- ChannelToken.cs
- CodeSubDirectory.cs
- DataGridAddNewRow.cs
- AlignmentYValidation.cs
- SHA512.cs
- ImportContext.cs
- RepeaterCommandEventArgs.cs
- CqlParserHelpers.cs
- MediaPlayer.cs
- SymLanguageType.cs
- _SslSessionsCache.cs
- RequestCacheValidator.cs
- ResXResourceReader.cs
- ActivityBuilderXamlWriter.cs
- BooleanToSelectiveScrollingOrientationConverter.cs
- Descriptor.cs
- DataGridCommandEventArgs.cs
- DataGridViewCellStyleChangedEventArgs.cs
- __TransparentProxy.cs
- CommandHelpers.cs
- linebase.cs
- DesignerUtility.cs
- CustomAssemblyResolver.cs
- SqlWriter.cs
- SchemaTypeEmitter.cs
- CodeDomSerializerBase.cs
- ResumeStoryboard.cs
- ExecutedRoutedEventArgs.cs
- DataGrid.cs
- Knowncolors.cs
- DataView.cs
- InkCanvasAutomationPeer.cs
- WindowsUserNameSecurityTokenAuthenticator.cs
- XmlBaseReader.cs
- JsonSerializer.cs
- SessionStateItemCollection.cs
- Point3DIndependentAnimationStorage.cs
- WebEncodingValidatorAttribute.cs
- ZoomingMessageFilter.cs
- KnownAssembliesSet.cs
- SafeEventLogReadHandle.cs
- EntityDescriptor.cs
- UIElementParaClient.cs
- ForeignConstraint.cs
- ConfigurationValue.cs
- Timer.cs
- ComEventsMethod.cs
- DotExpr.cs
- sqlmetadatafactory.cs
- MeasureData.cs
- COSERVERINFO.cs
- WebRequest.cs
- RenderTargetBitmap.cs
- ScrollEventArgs.cs
- DeploymentSectionCache.cs
- MetadataException.cs
- WorkflowMarkupSerializationProvider.cs
- RtType.cs