IKsPin::KsGetCurrentCommunication method (ksproxy.h)
The KsGetCurrentCommunication method retrieves the current communication direction, interface, and medium of a pin.
Syntax
HRESULT KsGetCurrentCommunication(
[out, optional] KSPIN_COMMUNICATION *Communication,
[out, optional] KSPIN_INTERFACE *Interface,
[out, optional] KSPIN_MEDIUM *Medium
);
Parameters
[out, optional] Communication
Pointer to a variable that receives one of the following values from the KSPIN_COMMUNICATION enumerated type describing the current communication direction for a pin:
Value | Description |
---|---|
KSPIN_COMMUNICATION_NONE | The pin factory does not create any pin instances. |
KSPIN_COMMUNICATION_SINK | The pin factory creates instances of IRP sink pins. Such pins can only be connected to IRP source pins. |
KSPIN_COMMUNICATION_SOURCE | The pin factory creates instances of IRP source pins. Such pins can only be connected to IRP sink pins. |
KSPIN_COMMUNICATION_BOTH | The pin factory creates instances of pins that are both IRP sinks and IRP sources. |
KSPIN_COMMUNICATION_BRIDGE | The pin cannot connect to other pins, but instances may be created on it to receive non-KS I/O requests. |
[out, optional] Interface
Pointer to a variable that receives a KSPIN_INTERFACE structure that describes the current interface for a pin.
[out, optional] Medium
Pointer to a variable that receives a KSPIN_MEDIUM structure that describes the current medium for a pin.
Return value
Returns NOERROR if successful; otherwise, returns an error code.
Remarks
Source pins send IRPs to sink pins. Do not confuse the communication direction with data flow direction. (See KSPROPERTY_PIN_DATAFLOW.) A source pin may read or write data, and a sink pin may have data read to it or written from it.
The current communication direction, interface, and medium of a pin are a subset of those available to the pin, and are selected when the pin handle is created.
Requirements
Requirement | Value |
---|---|
Target Platform | Desktop |
Header | ksproxy.h (include Ksproxy.h) |