IOCTL_GNSS_MODIFY_FIXSESSION IOCTL(gnssdriver.h)

IOCTL_GNSS_MODIFY_FIXSESSION 제어 코드는 GNSS 어댑터에서 활성 수정 세션의 수정 세션 매개 변수를 수정하는 데 사용됩니다. 이는 GNSS 드라이버가 동일한 수정 유형의 여러 수정 세션을 지원하지 않는 경우에만 필요합니다( 예: 드라이버의 SupportMultipleFixSession 기능이 FALSE인 경우).

주 코드

IRP_MJ_DEVICE_CONTROL

입력 버퍼

GNSS_FIXSESSION_PARAM 구조체에 대한 포인터입니다.

입력 버퍼 길이

sizeof(GNSS_FIXSESSION_PARAM)로 설정합니다.

출력 버퍼

NULL로 설정됨.

출력 버퍼 길이

0으로 설정합니다.

상태 블록

요청이 성공하면 Irp->IoStatus.Status가 STATUS_SUCCESS 설정됩니다. 그렇지 않으면 NTSTATUS 코드로 적절한 오류 조건에 대한 상태입니다.

설명

드라이버는 다음 결과 중 하나를 나타내도록 NTSTATUS 값을 설정합니다.

  • 수정 세션이 수정되었습니다.
  • 수정 세션이 현재 중지되었거나 활성화되지 않았습니다.
  • 수정 세션 매개 변수를 수정할 수 없습니다.

GNSS 어댑터 노트

GNSS 어댑터는 이 IOCTL을 사용하여 LBS 애플리케이션의 새 수정 요청을 수용하도록 활성 수정 세션의 수정 세션 매개 변수를 변경합니다.

호출이 실패하면 GNSS 어댑터는 새 수정 요청을 기존 활성 세션으로 멀티플렉싱하지 않습니다. 대신 활성 수정 세션이 변경되지 않은 상태로 유지될 것으로 계속 기대합니다.

호출이 성공하면 GNSS 어댑터는 후속 수정 데이터가 새로 지정된 세션 매개 변수를 준수할 것으로 예상합니다.

GNSS 드라이버 노트

다중 세션 지원이 없는 경우 GNSS 드라이버는 이 IOCTL을 지원하고 활성 세션에 대한 수정 세션 매개 변수를 즉시 변경해야 합니다.

GNSS 드라이버가 수정 세션 매개 변수를 수락하고, 유효성을 검사하고, GNSS 엔진으로 보내면 성공 반환 코드로 I/O 요청을 즉시 완료해야 합니다.

성공적으로 완료되면 GNSS 드라이버는 새 수정 세션 매개 변수에 따라 모든 수정 데이터를 반환해야 합니다. 그러나 GNSS 어댑터에 이미 제공되고 있는 수정 데이터는 계속 사용할 수 있어야 하며 삭제해서는 안 됩니다.

요구 사항

   
헤더 gnssdriver.h

참고 항목

드라이버에서 IOCTL 요청 만들기

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously