PARCLASS_INFORMATION 구조체(parallel.h)
PARCLASS_INFORMATION 구조는 병렬 포트에 대한 정보, 병렬 포트를 작동하기 위한 콜백 루틴에 대한 포인터 및 병렬 디바이스에 읽고 쓸 콜백 루틴에 대한 포인터를 지정합니다.
구문
typedef struct _PARCLASS_INFORMATION {
PUCHAR Controller;
ULONG SpanOfController;
PDETERMINE_IEEE_MODES DetermineIeeeModes;
PNEGOTIATE_IEEE_MODE NegotiateIeeeMode;
PTERMINATE_IEEE_MODE TerminateIeeeMode;
PPARALLEL_IEEE_FWD_TO_REV IeeeFwdToRevMode;
PPARALLEL_IEEE_REV_TO_FWD IeeeRevToFwdMode;
PPARALLEL_READ ParallelRead;
PPARALLEL_WRITE ParallelWrite;
PVOID ParclassContext;
ULONG HardwareCapabilities;
ULONG FifoDepth;
ULONG FifoWidth;
} PARCLASS_INFORMATION, *PPARCLASS_INFORMATION;
멤버
Controller
병렬 포트에 할당된 기본 I/O 주소를 지정합니다.
EcrController
SpanOfController
병렬 포트에 할당된 I/O 주소 공간의 범위(바이트)를 지정합니다.
DetermineIeeeModes
병렬 디바이스에서 지원하는 IEEE 프로토콜을 결정하는 PDETERMINE_IEEE_MODES 콜백 루틴에 대한 포인터입니다.
NegotiateIeeeMode
호출자가 지정한 중에서 병렬 포트에 대해 시스템에서 제공하는 버스 드라이버가 지원하는 가장 빠른 프로토콜을 협상하는 PNEGOTIATE_IEEE_MODE 콜백 루틴에 대한 포인터입니다.
TerminateIeeeMode
현재 IEEE 모드를 종료하고 모드를 IEEE_COMPATIBILITY 설정하는 PTERMINATE_IEEE_MODE 콜백 루틴에 대한 포인터입니다.
IeeeFwdToRevMode
전송 모드를 정방향에서 역방향으로 변경하는 PPARALLEL_IEEE_FWD_TO_REV 콜백 루틴에 대한 포인터입니다.
IeeeRevToFwdMode
전송 모드를 역방향에서 앞으로 변경하는 PPARALLEL_IEEE_REV_TO_FWD 콜백 루틴에 대한 포인터입니다.
ParallelRead
클라이언트가 병렬 디바이스에서 읽는 데 사용할 수 있는 PPARALLEL_READ 콜백 루틴에 대한 포인터입니다.
ParallelWrite
클라이언트가 병렬 디바이스에 쓰는 데 사용할 수 있는 PPARALLEL_WRITE 콜백 루틴에 대한 포인터입니다.
ParclassContext
병렬 디바이스의 PDO(물리적 디바이스 개체)의 디바이스 확장에 대한 포인터입니다.
HardwareCapabilities
존재하는 하드웨어 기능을 지정합니다. HardwareCapabilities 는 다음 플래그 중 하나 이상의 비트 OR입니다.
PPT_NO_HARDWARE_PRESENT
PPT_ECP_PRESENT
PPT_EPP_PRESENT
PPT_EPP_32_PRESENT
32비트 읽기 및 쓰기가 지원됩니다.
PPT_BYTE_PRESENT
PPT_BIDI_PRESENT
PPT_1284_3_PRESENT
FifoDepth
ECP FIFO의 크기를 단어 단위로 지정합니다. ECP FIFO 단어 크기(비트)는 FifoWidth 값입니다.
FifoWidth
병렬로 처리되는 비트 수인 ECP FIFO 단어 크기를 비트 단위로 지정합니다.
ParallelTryselect
ParallelDeSelect
설명
커널 모드 드라이버는 IOCTL_INTERNAL_PARCLASS_CONNECT 요청을 사용하여 병렬 포트에 대해 시스템 제공 버스 드라이버에서 이 정보를 가져올 수 있습니다. 병렬 포트에 대한 시스템 제공 버스 드라이버는 모든 콜백 루틴을 제공합니다.
클라이언트는 이 정보를 사용하여 병렬 포트를 작동하고 병렬 디바이스를 읽고 씁니다. 콜백 루틴은 부모 병렬 포트에 대한 잠금을 보유하는 드라이버에서만 사용할 수 있습니다. 드라이버는 IOCTL_INTERNAL_LOCK_PORT 요청을 사용하여 잠금을 가져옵니다.
자세한 내용은 병렬 디바이스에 연결을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | parallel.h(Parallel.h 포함) |