KsRemoveItemFromObjectBag 함수(ks.h)

KsRemoveItemFromObjectBag 함수는 개체 모음에서 항목을 제거합니다.

구문

KSDDKAPI ULONG KsRemoveItemFromObjectBag(
  [in] KSOBJECT_BAG ObjectBag,
  [in] PVOID        Item,
  [in] BOOLEAN      Free
);

매개 변수

[in] ObjectBag

이 매개 변수는 Item을 제거할 KSOBJECT_BAG(PVOID 형식과 동일)를 지정 합니다.

[in] Item

요청된 개체 모음에서 제거할 항목에 대한 포인터입니다. Item은 요청된 개체 모음에서만 제거됩니다. 있을 수 있는 다른 개체 모음에서 제거 되지 않습니다.

[in] Free

이 매개 변수는 지정된 개체 모음에서 항목을 제거한 후 해제할지 여부를 지정합니다. Item이 다른 개체 모음에 포함되지 않은 경우에만 FreeTRUE로 설정합니다.

반환 값

Item에 대한 참조 수를 반환합니다. 반환 값이 0이면 호출 시 ItemObjectBag 에 없음을 나타냅니다.

1의 반환 값은 ItemObjectBag 에서 성공적으로 제거되었으며 다른 개체 모음에 없음을 나타냅니다. 이 경우 무료가 요청된 경우 AVStream은 ExFreePool 또는 KsAddItemToObjectBag 호출 시간에 지정된 Free 메서드를 사용하여 Item을 해제합니다.

위의 반환 값은 항목이 다른 개체 모음에 있고 여전히 참조가 있음을 나타냅니다. 이 경우 AVStream은 ObjectBag에서 항목을 제거했지만 Free 값에 관계없이 해제하지 않았습니다.

설명

KsRemoveItemFromObjectBag 은 이 항목에 대한 참조 수가 0이고 무료가 요청된 경우에만 항목을 해제합니다.

개체 모음에 대한 자세한 내용은 개체 모음을 참조하세요.

가방과 연결된 뮤텍스를 보관해야 합니다. 자세한 내용은 AVStream의 뮤텍스를 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Microsoft Windows XP 이상 운영 체제 및 DirectX 8.0 이상 DirectX 버전에서 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 ks.h(Ks.h 포함)
라이브러리 Ks.lib
IRQL PASSIVE_LEVEL

추가 정보

KsAddItemToObjectBag

KsAllocateObjectBag

KsCopyObjectBagItems

KsDiscard

KsFreeObjectBag

KsMergeAutomationTables