AcxCircuitInitAssignMethods function (acxcircuit.h)

The AcxCircuitInitAssignMethods function assigns one or more ACX methods for the ACXCIRCUIT.

Syntax

NTSTATUS AcxCircuitInitAssignMethods(
  PACXCIRCUIT_INIT CircuitInit,
  PACX_METHOD_ITEM Methods,
  ULONG            MethodsCount
);

Parameters

CircuitInit

The ACXCIRCUIT_INIT structure that defines the circuit initialization. ACXCIRCUIT_INIT is an opaque object used for circuit initialization. Use AcxCircuitInitAllocate to initialize the ACXCIRCUIT_INIT structure.

Methods

An ACX_METHOD_ITEM structure that defines a set of methods that will be used for circuit initialization.

MethodsCount

The number of methods that will be added to the circuit. This is a one based count.

Return value

Returns STATUS_SUCCESS if the call was successful. Otherwise, it returns an appropriate error code. For more information, see Using NTSTATUS Values.

Remarks

Drivers should only add driver owned methods.

Example

Example usage is shown below.


static ACX_METHOD_ITEM CircuitMethods[] =
{
    {
        &KSMETHODSETID_AcxTestMethod,
        KSMETHOD_ACXCIRCUIT_TEST2_IN2OUT,
        ACX_METHOD_ITEM_FLAG_SEND,
        Amp_EvtTestIn2OutMethodCallback,
        NULL,               // Reserved
        sizeof(ULONG),      // ArgsCb
        sizeof(ULONG),      // ResultCb
    },
};

static ULONG CircuitMethodsCount = SIZEOF_ARRAY(CircuitMethods);


    status = AcxCircuitInitAssignMethods(circuitInit,
                                         CircuitMethods,
                                         CircuitMethodsCount);

ACX requirements

Minimum ACX version: 1.0

For more information about ACX versions, see ACX version overview.

Requirements

Requirement Value
Header acxcircuit.h
IRQL PASSIVE_LEVEL

See also