Skip to content

Latest commit

 

History

History
146 lines (98 loc) · 6.67 KB

ns-portcls-pcpin_descriptor.md

File metadata and controls

146 lines (98 loc) · 6.67 KB
UID title description old-location tech.root ms.date keywords ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames f1_keywords topic_type api_type api_location api_name
NS:portcls.PCPIN_DESCRIPTOR
PCPIN_DESCRIPTOR (portcls.h)
The PCPIN_DESCRIPTOR structure describes a pin factory.
audio\pcpin_descriptor.htm
audio
05/08/2018
PCPIN_DESCRIPTOR structure
*PPCPIN_DESCRIPTOR, PCPIN_DESCRIPTOR, PCPIN_DESCRIPTOR structure [Audio Devices], PPCPIN_DESCRIPTOR, PPCPIN_DESCRIPTOR structure pointer [Audio Devices], audio.pcpin_descriptor, audpc-struct_475141ba-bf2e-4425-92ac-02649248e19f.xml, portcls/PCPIN_DESCRIPTOR, portcls/PPCPIN_DESCRIPTOR
portcls.h
Portcls.h
Windows
Windows
PCPIN_DESCRIPTOR, *PPCPIN_DESCRIPTOR
PPCPIN_DESCRIPTOR
portcls/PPCPIN_DESCRIPTOR
PCPIN_DESCRIPTOR
portcls/PCPIN_DESCRIPTOR
APIRef
kbSyntax
HeaderDef
portcls.h
PPCPIN_DESCRIPTOR
PCPIN_DESCRIPTOR

PCPIN_DESCRIPTOR structure

-description

The PCPIN_DESCRIPTOR structure describes a pin factory.

-struct-fields

-field MaxGlobalInstanceCount

Specifies the global maximum number of times that this pin type can be instantiated. The global maximum counts the number of pin instances that the adapter driver can support across all instances of the filter. The count can be set to zero to indicate that the pin cannot be instantiated. A value of ULONG(-1) indicates the pin can be instantiated any number of times. Any other value indicates a specific number of times that the pin can be instantiated.

-field MaxFilterInstanceCount

Specifies the maximum number times that the pin can be instantiated on a single instance of the filter. The count can be set to zero to indicate that the pin cannot be instantiated. A value of ULONG(-1) indicates the pin can be instantiated any number of times. Any other value indicates a specific number of times that the pin can be instantiated.

-field MinFilterInstanceCount

Specifies the minimum number of times that the pin needs to be instantiated on an instance of the filter. This member is a definite lower bound on the number of instances of a pin that must exist in order for a filter to be able to function.

-field AutomationTable

Pointer to the automation table. This member is a pointer to a structure of type PCAUTOMATION_TABLE. The pointer can be NULL to indicate that no automation is supported. The automation table specifies the handlers for the properties and events belonging to the pin instance.

-field KsPinDescriptor

Describes the pin factory. This member is a structure of type KSPIN_DESCRIPTOR. A pin factory can have zero interfaces and zero mediums. The list of interfaces is ignored in all cases. The standard-medium list will default to a list containing only device I/O (KSMEDIUM_STANDARD_DEVIO).

-remarks

This structure is used to describe each of the pin factories that a miniport driver implements. The driver's PCFILTER_DESCRIPTOR structure contains a pointer to an array of PCPIN_DESCRIPTOR structures. The number of elements in the array is equal to the number of pin factories in the filter.

The MaxGlobalInstanceCount, MaxFilterInstanceCount, and MinFilterInstanceCount members are maximum and minimum counts that describe the pin's resource restrictions and functional requirements. An autoinitialized PCPIN_DESCRIPTOR array can present only a static estimate of the available pin resources. The IPinCount::PinCount method provides a means for the driver to revise its list of available pin resources dynamically as pins are allocated and freed.

The MaxGlobalInstanceCount value is similar in meaning to:

The MaxFilterInstanceCount value is similar in meaning to: The MinFilterInstanceCount value is similar in meaning to: When describing a bridge pin (see Audio Filter Graphs), set MaxGlobalInstanceCount, MaxFilterInstanceCount, and MinFilterInstanceCount to zero, and set AutomationTable to NULL.

For a simple code example that shows how the PCPIN_DESCRIPTOR structure is used, see Exposing Filter Topology.

For more information, see Pin Factories.

-see-also

IPinCount::PinCount

KSPIN_DESCRIPTOR

KSPROPERTY_PIN_CINSTANCES

KSPROPERTY_PIN_GLOBALCINSTANCES

KSPROPERTY_PIN_NECESSARYINSTANCES

PCAUTOMATION_TABLE