AcxCircuitCreate 함수(acxcircuit.h)

AcxCircuitCreate 함수는 ACXCIRCUIT를 만드는 데 사용됩니다.

구문

NTSTATUS AcxCircuitCreate(
  WDFDEVICE              Device,
  PWDF_OBJECT_ATTRIBUTES Attributes,
  PACXCIRCUIT_INIT       *Config,
  ACXCIRCUIT             *Circuit
);

매개 변수

Device

회로와 연결될 WDFDEVICE 개체( 프레임워크 개체 요약에 설명됨)입니다.

Attributes

다양한 개체의 값을 설정하는 데 사용되는 WDF_OBJECT_ATTRIBUTES 사용하여 정의된 추가 특성: 콜백 정리 및 삭제, 컨텍스트 형식 및 부모 WDF 개체를 지정합니다.

Config

회로 팩터리 초기화를 정의하는 ACXCIRCUIT_INIT 구조체입니다. ACXCIRCUIT_INIT 회로 팩터리 초기화에 사용되는 불투명 개체입니다. AcxCircuitInitAllocate를 사용하여 ACXCIRCUIT_INIT 구조를 초기화합니다.

Circuit

새 ACXCIRCUIT 개체에 대한 핸들을 수신하는 위치에 대한 포인터입니다. 자세한 내용은 ACX 개체 요약을 참조하세요.

반환 값

호출이 성공하면 를 반환합니다 STATUS_SUCCESS . 그렇지 않으면 적절한 오류 코드를 반환합니다. 자세한 내용은 NTSTATUS 값 사용을 참조하세요.

설명

ACXCIRCUIT는 사용자가 인식한 오디오 디바이스(스피커, 마이크 등)에 대한 전체 또는 부분(다중 회로) 오디오 경로를 나타냅니다.

ACXCIRCUIT에는 하나 이상의 입력 핀(ACXPIN)과 하나의 출력 핀(ACXPIN)이 있으며 하나 이상의 ACXELEMENTS 개체를 집계할 수 있습니다. 기본적으로 ACXELEMENT는 동일한 어셈블리 순서로 '연결'됩니다.

예제

사용 예제는 다음과 같습니다.

    status = AcxCircuitInitAssignName(circuitInit, &circuitName);
    //
    // Add circuit type.
    //
    AcxCircuitInitSetCircuitType(circuitInit, AcxCircuitTypeRender);

    //
    // Assign the circuit's pnp-power callbacks.
    //
    ACX_CIRCUIT_PNPPOWER_CALLBACKS_INIT(&powerCallbacks);
    powerCallbacks.EvtAcxCircuitPowerUp = SdcaR_EvtCircuitPowerUp;
    powerCallbacks.EvtAcxCircuitPowerDown = SdcaR_EvtCircuitPowerDown;
    
    AcxCircuitInitSetAcxCircuitPnpPowerCallbacks(circuitInit, &powerCallbacks);

    //
    // Set circuit-callbacks.
    //
    status = AcxCircuitInitAssignAcxCreateStreamCallback(
                                            circuitInit, 
                                            SdcaR_EvtCircuitCreateStream);
    
    //
    // Create the circuit.
    //
    WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&attributes, SDCA_RENDER_CIRCUIT_CONTEXT);   
    status = AcxCircuitCreate(Device, &attributes, &circuitInit, &circuit);

ACX 요구 사항

최소 ACX 버전: 1.0

ACX 버전에 대한 자세한 내용은 ACX 버전 개요를 참조하세요.

요구 사항

요구 사항
헤더 acxcircuit.h
IRQL PASSIVE_LEVEL

추가 정보