Fields (1) Methods (10) Properties (2)
Namespace: CSCore.Win32

Syntax

public class ComObject : IUnknown, IDisposable

Implements

Summary

Represents a native COM object.

Uses

Used by

Fields

UnsafeBasePtr

Unsafe native pointer to the COM object.

protected  Void* UnsafeBasePtr

Methods

ComObject()

Initializes a new instance of the ComObject class.

public void ComObject()

ComObject(IntPtr ptr)

Initializes a new instance of the ComObject class.

public void ComObject(IntPtr ptr)

Parameters

ptr

IntPtr

The native pointer of the COM object.

AddRef()

Increments the reference count for an interface on an object. This method should be called for every new copy of a pointer to an interface on an object.

none Int32 AddRef()

Returns

The method returns the new reference count. This value is intended to be used only for test purposes.

Dispose()

Releases the COM object.

public void Dispose()

Dispose(Boolean disposing)

Releases the COM object.

protected virtual void Dispose(Boolean disposing)

Parameters

disposing

Boolean

True to release both managed and unmanaged resources; false to release only unmanaged resources.

Finalize()

Finalizes an instance of the ComObject class.

protected void Finalize()

QueryInterface(Guid& riid, IntPtr& ppvObject)

Retrieves pointers to the supported interfaces on an object.

none Int32 QueryInterface(Guid& riid, IntPtr& ppvObject)

Parameters

riid

Guid&

The identifier of the interface being requested.

ppvObject

IntPtr&

The address of a pointer variable that receives the interface pointer requested in the riid parameter.

Returns

This method returns SOK if the interface is supported, and ENOINTERFACE otherwise. If ppvObject is NULL, this method returns E_POINTER.

QueryInterface(Type type)

Retrieves a pointer to the supported interface on an object.

public IntPtr QueryInterface(Type type)

Parameters

type

Type

Type of the requested ComObject.

Returns

A pointer to the requested interface.

QueryInterface()

Queries supported interfaces/objects on a ComObject.

public T QueryInterface<T>()

Type Parameters

T

The ComObject being requested.

Returns

The queried com interface/object.

Release()

Decrements the reference count for an interface on an object.

none Int32 Release()

Returns

The method returns the new reference count. This value is intended to be used only for test purposes.

Properties

BasePtr

Native pointer to the COM object.

public IntPtr BasePtr { get; set; }

IsDisposed

Gets a value which indicates whether the ComObject got already disposed.

public Boolean IsDisposed { get; }

Class Diagram

public classComObjectUnsafeBasePtrAddRefDisposeDisposeFinalizeQueryInterfaceQueryInterfaceQueryInterfaceReleaseComObjectComObjectBasePtr { get; set; }IsDisposed { get; }public interfaceIUnknownAddRefQueryInterfaceReleasepublic interfaceIDisposablepublic classAudioSessionManager2DisposeFromMMDeviceGetSessionEnumeratorGetSessionEnumeratorNativeRegisterDuckNotificationRegisterDuckNotificationNativeRegisterSessionNotificationRegisterSessionNotificationNativeUnregisterDuckNotificationUnregisterDuckNotificationNativeUnregisterSessionNotificationUnregisterSessionNotificationNativeAudioSessionManager2public classMMDeviceActivateActivateNativeDisposeGetIdNativeGetStateNativeOpenPropertyStoreOpenPropertyStoreNativeToStringMMDeviceDeviceID { get; }DeviceState { get; }FriendlyName { get; }PropertyStore { get; }public classMMNotificationClientDefaultDeviceChangedDeviceAddedDevicePropertyChangedDeviceRemovedDeviceStateChangedDisposeFinalizeOnDefaultDeviceChangedOnDeviceAddedOnDeviceRemovedOnDeviceStateChangedOnPropertyValueChangedMMNotificationClientMMNotificationClientpublic classMediaFoundationEncoderCreateAACEncoderCreateAACEncoderCreateMP3EncoderCreateMP3EncoderCreateWMAEncoderCreateWMAEncoderDisposeDisposeEncodeWholeSourceFinalizeFindBestMediaTypeGetEncoderMediaTypesSetTargetStreamWriteMediaFoundationEncoderEncodedDuration { get; }OutputMediaType { get; }SinkWriter { get; set; }TargetBaseStream { get; }TargetStream { get; set; }public classMFByteStreamBeginReadNativeBeginWriteNativeCloseCloseNativeDisposeEndReadNativeEndWriteNativeFlushFlushNativeGetCapabilitiesNativeGetCurrentPositionNativeGetLengthNativeIsEndOfStreamNativeReadReadNativeSeekSeekNativeSetCurrentPositionNativeSetLengthNativeWriteWriteNativeMFByteStreamMFByteStreamCapabilities { get; }CurrentPosition { get; set; }IsEndOfStream { get; }Length { get; set; }public classXAudio2VoiceDestroyVoiceDisableEffectDisableEffectDisableEffectNativeDisposeEnableEffectEnableEffectEnableEffectNativeGetChannelVolumesGetChannelVolumesNativeGetEffectParametersGetEffectParametersNativeGetEffectStateNativeGetFilterParametersGetFilterParametersNativeGetOutputFilterParametersGetOutputFilterParametersNativeGetOutputMatrixGetOutputMatrixNativeGetVoiceDetailsNativeGetVolumeGetVolumeNativeIsEffectEnabledSetChannelVolumesSetChannelVolumesSetChannelVolumesNativeSetEffectChainSetEffectChainNativeSetEffectParametersSetEffectParametersSetEffectParametersNativeSetFilterParametersSetFilterParametersNativeSetOutputFilterParametersSetOutputFilterParametersSetOutputFilterParametersNativeSetOutputMatrixSetOutputMatrixSetOutputMatrixNativeSetOutputVoicesSetOutputVoicesNativeSetVolumeSetVolumeNativeXAudio2VoiceFilterParameters { get; set; }Version { get; }VoiceDetails { get; }Volume { get; set; }public interfaceIUnknownAddRefQueryInterfaceRelease

save

reset

Drag to pan - Use Mousewheel + Ctrl to zoom