Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

KSPIN_DESCRIPTOR structure (ks.h)

The KSPIN_DESCRIPTOR structure describes the basic KSPROPSETID_Pin properties of a pin type.

Syntax

typedef struct {
 ULONG InterfacesCount;
 const KSPIN_INTERFACE *Interfaces;
 ULONG MediumsCount;
 const KSPIN_MEDIUM *Mediums;
 ULONG DataRangesCount;
 const PKSDATARANGE *DataRanges;
 KSPIN_DATAFLOW DataFlow;
 KSPIN_COMMUNICATION Communication;
 const GUID *Category;
 const GUID *Name;
 union {
 LONGLONG Reserved;
 struct {
 ULONG ConstrainedDataRangesCount;
 PKSDATARANGE *ConstrainedDataRanges;
 };
 };
} KSPIN_DESCRIPTOR, *PKSPIN_DESCRIPTOR;

Members

InterfacesCount

Specifies the size of the array pointed to by Interfaces.

Interfaces

An array of KSPIN_INTERFACE structures specifying the interfaces supported by this pin type.

MediumsCount

Specifies the number of elements in the array pointed to by Mediums.

Mediums

An array of KSPIN_MEDIUM structures specifying the mediums supported by this pin type.

DataRangesCount

Specifies the size of the array pointed to by DataRanges.

DataRanges

An array of KSDATARANGE structures specifying the data ranges supported by this pin type.

DataFlow

Specifies either KSPIN_DATAFLOW_IN or KSPIN_DATAFLOW_OUT. See KSPROPERTY_PIN_DATAFLOW.

Communication

Specifies KSPIN_COMMUNICATION_NONE, KSPIN_COMMUNICATION_SINK, KSPIN_COMMUNICATION_SOURCE, KSPIN_COMMUNICATION_BOTH or KSPIN_COMMUNICATION_BRIDGE. See KSPROPERTY_PIN_COMMUNICATION for the meaning of each value.

Category

Specifies a pointer to a KS pin category GUID. The KS pin category GUID identifies the general category of functionality that the pin provides. Examples of KS pin category GUIDs are KSNODETYPE_SPEAKER, KSNODETYPE_HEADPHONES, and KSNODETYPE_MICROPHONE, which are all defined in Ksmedia.h. Also see Pin Category Property.

Name

Specifies the GUID of the localized Unicode string name for the pin type, stored in the Registry.

Reserved

Not used. A member of an unnamed union used to force proper alignment on the unnamed structure.

ConstrainedDataRangesCount

Specifies the number of entries in the array pointed to by ConstrainedDataRanges.

ConstrainedDataRanges

Points to an array of KSDATARANGE structures. Indicates the set of data ranges the pin type currently supports, based on the driver's internal state.

Remarks

Drivers typically define one KSPIN_DESCRIPTOR structure for each pin type they support.

Requirements

Requirement Value
Header ks.h (include Ks.h)

See also

KSDATARANGE

KSPIN_MEDIUM

KSPROPERTY_PIN_COMMUNICATION

KSPROPERTY_PIN_DATAFLOW

KSPROPSETID_Pin


Feedback

Was this page helpful?

Additional resources