CIP_FRAME 구조체(61883.h)

CIP_FRAME 구조체는 입력 또는 출력 플러그에 연결할 프레임을 설명합니다.

구문

typedef struct _CIP_FRAME {
  union {
    IN PVOID Reserved;
    IN PVOID pNext;
  };
  IN ULONG                 Flags;
  IN PCIP_VALIDATE_ROUTINE pfnValidate;
  IN PVOID                 ValidateContext;
  IN PCIP_NOTIFY_ROUTINE   pfnNotify;
  IN PVOID                 NotifyContext;
  OUT CYCLE_TIME           Timestamp;
  OUT ULONG                Status;
  IN OUT PUCHAR            Packet;
  OUT ULONG                CompletedBytes;
} CIP_FRAME, *PCIP_FRAME;

멤버

Reserved

pNext

내부용으로 예약된 속성입니다.

Flags

이 프레임과 연결된 옵션을 지정합니다.

패킷을 받을 경우 플래그 는 다음 중 하나일 수 있습니다.

CIP_VALIDATE_FIRST_SOURCE

IEC-61883 프로토콜 드라이버가 pfnValidate 에서 클라이언트 드라이버 제공 함수를 호출하여 첫 번째 원본 패킷만 유효성을 검사하도록 지시합니다.

CIP_VALIDATE_ALL_SOURCE

IEC-61883 프로토콜 드라이버가 pfnValidate 에서 클라이언트 드라이버 제공 함수를 호출하여 모든 원본 패킷의 유효성을 검사하도록 지시합니다.

패킷을 수신하려면 CIP_VALIDATE_XXX 다음 중 하나 또는 둘 다와 결합할 수 있습니다.

CIP_STRIP_SOURCE_HEADER

프로토콜 드라이버가 원본 패킷 내에서 원본 헤더 패킷을 제거하도록 지시합니다.

CIP_USE_SOURCE_HEADER_TIMESTAMP

소스 헤더 패킷 내에 있는 타임스탬프를 사용하여 프레임을 타임스탬프하도록 프로토콜 드라이버에 지시합니다.

패킷이 전송되는 경우 플래그 는 다음 중 하나일 수 있습니다.

CIP_DV_STYLE_SYT

TimeStamp의 값은 디지털 비디오 디바이스(SD-DVCR, HD-DVCR 또는 SDL-DVCR)로 데이터 전송을 위해 형식이 지정됩니다.

CIP_AUDIO_STYLE_SYT

TimeStamp의 값은 오디오 디바이스로 오디오 및 음악 데이터 전송을 위해 형식이 지정됩니다.

패킷이 전송되거나 수신되는 경우 플래그 는 다음을 사용하여 설정할 수도 있습니다.

CIP_RESET_FRAME_ON_DISCONTINUITY

프로토콜 드라이버가 다음 원본 패킷 대신 프레임의 시작 부분에서 중지된 스트림을 다시 시작하도록 지시합니다.

pfnValidate

호출자가 제공한 함수를 가리키며 원본 패킷의 유효성을 검사합니다. 이 함수는 다음 프로토타입을 사용합니다. ValidateInfo 매개 변수는 프레임에 대한 정보를 포함하는 CIP_VALIDATE_INFO 구조를 가리킵니다.

ULONG 
  (*PCIP_VALIDATE_ROUTINE) ( 
    IN PCIP_VALIDATE_INFO ValidateInfo
   );

ValidateContext

pfnValidate에서 함수에 대한 선택적 호출자 정의 컨텍스트를 가리킵니다. 함수에 컨텍스트가 필요하지 않은 경우 ValidateContextNULL일 수 있습니다.

pfnNotify

요청된 프레임이 완료될 때 프로토콜 드라이버에서 호출할 호출자 제공 함수를 가리킵니다. 프로토콜 드라이버는 IRQL = DISPATCH_LEVEL 이 함수를 호출합니다.

이 함수는 다음 프로토타입을 사용합니다.

ULONG 
  (*PCIP_NOTIFY_ROUTINE) ( 
     IN PCIP_NOTIFY_INFO NotifyInfo 
 );

NotifyContext

pfnNotify에서 호출자 제공 함수에 대한 선택적 호출자 정의 컨텍스트를 가리킵니다. 함수에 컨텍스트가 필요하지 않은 경우 NotifyContextNULL일 수 있습니다.

Timestamp

프레임 완료와 관련된 시간입니다.

수신할 패킷의 경우 프로토콜 드라이버는 플래그에 CIP_USE_SOURCE_HEADER_TIMESTAMP 설정되지 않은 한 프레임의 전송이 완료된 시간으로 이 멤버를 설정합니다.

전송할 패킷의 경우 플래그 의 CIP DV_STYLE_SYT 또는 CIP_AUDIO_STYLE_SYT 타임스탬프의 형식을 나타냅니다.

Status

프레임의 상태. 다음 중 하나일 수 있습니다.

CIP_STATUS_SUCCESS

CIP_STATUS_CORRUPT_FRAME

CIP_STATUS_FIRST_FRAME

Packet

이 프레임으로 전송되거나 수신될 호출자가 할당한 데이터 버퍼의 시작을 가리킵니다. 연결된 Av61883_AttachFrame 요청에 지정된 프레임 길이는 버퍼의 크기를 나타냅니다.

CompletedBytes

요구 사항

요구 사항
헤더 61883.h(61883.h 포함)

추가 정보

AV_61883_REQUEST 구조체