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
- TableItemPatternIdentifiers.cs
- CreatingCookieEventArgs.cs
- GeometryModel3D.cs
- EntityDataSourceWrapper.cs
- SystemMulticastIPAddressInformation.cs
- RawStylusInputReport.cs
- UserInitiatedRoutedEventPermission.cs
- RuntimeHandles.cs
- ManipulationVelocities.cs
- EditorAttribute.cs
- BitmapPalette.cs
- ConnectionManagementElementCollection.cs
- TTSEngineTypes.cs
- TemplateBindingExpression.cs
- NonVisualControlAttribute.cs
- WSHttpSecurityElement.cs
- MailAddress.cs
- X509Certificate2.cs
- RawStylusInputCustomData.cs
- SystemIcons.cs
- SimpleColumnProvider.cs
- wgx_render.cs
- ControlCachePolicy.cs
- GcSettings.cs
- XmlSchemaException.cs
- ScrollData.cs
- SystemFonts.cs
- Expressions.cs
- TargetControlTypeAttribute.cs
- XmlAttribute.cs
- DataServiceQuery.cs
- SourceFileInfo.cs
- FormViewDeletedEventArgs.cs
- CollectionViewGroup.cs
- DefaultValueTypeConverter.cs
- XamlTemplateSerializer.cs
- ProfileModule.cs
- MatrixIndependentAnimationStorage.cs
- ListViewCommandEventArgs.cs
- GenericParameterDataContract.cs
- Point.cs
- AutoGeneratedField.cs
- input.cs
- MarkupWriter.cs
- AttachInfo.cs
- XmlSchemaImport.cs
- XamlFigureLengthSerializer.cs
- DataExpression.cs
- APCustomTypeDescriptor.cs
- MultipleViewProviderWrapper.cs
- SafeNativeMethodsMilCoreApi.cs
- MarshalDirectiveException.cs
- ObjectSpanRewriter.cs
- __ComObject.cs
- Console.cs
- SchemaElementLookUpTable.cs
- CompositeTypefaceMetrics.cs
- FtpWebResponse.cs
- ComplexTypeEmitter.cs
- Command.cs
- ListViewGroup.cs
- EntityKey.cs
- ActivityInterfaces.cs
- ValidationErrorCollection.cs
- _OSSOCK.cs
- UnsafeNativeMethodsTablet.cs
- Pen.cs
- RegexStringValidator.cs
- LockedBorderGlyph.cs
- UnhandledExceptionEventArgs.cs
- EventLogger.cs
- SurrogateSelector.cs
- DynamicRenderer.cs
- PropertyDescriptorComparer.cs
- GlyphManager.cs
- CustomError.cs
- HttpMethodAttribute.cs
- XmlNodeReader.cs
- XmlFileEditor.cs
- SynchronizedInputProviderWrapper.cs
- SiteMap.cs
- SystemTcpStatistics.cs
- UpdateTracker.cs
- FixedPageAutomationPeer.cs
- SourceFileInfo.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- UTF7Encoding.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- httpserverutility.cs
- MembershipValidatePasswordEventArgs.cs
- CodeCatchClauseCollection.cs
- NativeObjectSecurity.cs
- VSWCFServiceContractGenerator.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- VirtualizedContainerService.cs
- DiagnosticsConfiguration.cs
- Translator.cs
- EncodingConverter.cs
- FileVersion.cs
- UserControlParser.cs