SRB_OPEN_DEVICE_INSTANCE

The class driver sends this request to open an instance of the adapter.

Return Value

The minidriver should set one of the following as the status in the SRB:

STATUS_SUCCESS
Indicates successful completion of the command.

STATUS_NOT_IMPLEMENTED
Indicates that the function is not supported by the minidriver.

STATUS_TOO_MANY_NODES
Indicates that there are not enough resources to open this stream.

STATUS_IO_DEVICE_ERROR
Indicates that a hardware failure occurred.

Comments

If the minidriver supports multiple instances of a device, this command is sent by the class driver each time a new instance of the adapter is opened. As an example, consider a DSP decoder that can allocate n number of instances of the streams specified. The HwInstanceExtension field in the SRB should then be set to the minidriver's per-instance workspace by the class driver.

Most adapters do not support multiple instances, so in those cases the FilterInstanceExtensionSize field in the HW_INITIALIZATION_DATA structure should be set to zero and should never receive this command.

See also

SRB_CLOSE_DEVICE_INSTANCE