DirectInput DirectInput C/C++ 레퍼런스 구조체 DIDEVCAPS [목차열람] [주소복사] [슬롯비우기] |
Microsoft DirectX 9.0 |
Microsoft® DirectInput® 장치의 능력을 나타낸다. 이 구조체는,IDirectInputDevice8::GetCapabilities 메서드로 사용한다.
구문
typedef struct DIDEVCAPS { DWORD dwSize; DWORD dwFlags; DWORD dwDevType; DWORD dwAxes; DWORD dwButtons; DWORD dwPOVs; DWORD dwFFSamplePeriod; DWORD dwFFMinTimeResolution; DWORD dwFirmwareRevision; DWORD dwHardwareRevision; DWORD dwFFDriverVersion; } DIDEVCAPS, *LPDIDEVCAPS;
멤버
- dwSize
- 이 구조체의 사이즈 (바이트 단위). IDirectInputDevice8::GetCapabilities 메서드를 호출하기 전에, 애플리케이션은 이 멤버를 초기화해 두지 않으면 안 된다.
- dwFlags
- 장치에 관련된 플래그. 이하의 값을 조합할 수가 있다.
- DIDC_ALIAS
- 장치는, 다른 DirectInput 장치의 복제이다. 별명의 장치는, 디폴트에서는 IDirectInput8::EnumDevices 에 의해 열거되지 않는다.
- DIDC_ATTACHED
- 장치는, 물리적으로Attach되고 있다.
- DIDC_DEADBAND
- 장치는, 적어도 1 개의 force feedback 조건으로 데드 밴드를 지원 하고 있다.
- DIDC_EMULATED
- 이 플래그가 설정되면 데이터는 HID (Human Interface Device)등의 사용자 모드 장치 인터페이스로부터, 또는 다른 링 3 의 수단에 의해 입력된다. 플래그가 설정되지 않는 경우, 데이터는 커널 모드 드라이버로부터 직접 입력된다.
- DIDC_FORCEFEEDBACK
- 장치는, force feedback를 지원 한다.
- DIDC_FFFADE
- force feedback 시스템은, 적어도 1 개의 이펙트에 대한페이드 파라미터를 지원 하고 있다. 장치가 페이드를 지원 하고 있지 않는 경우,DIENVELOPE 구조체의 페이드 레벨과 페이드 시간의 양파라미터는 무시된다.
IDirectInputDevice8::GetEffectInfo 메서드의 호출 후, 개별의 이펙트가 페이드를 지원 하고 있는 경우, DIEFT_FFFADE 플래그가 설정된다.
- DIDC_FFATTACK
- force feedback 시스템은, 적어도 1 개의 이펙트에 대한어택 파라미터를 지원 하고 있다. 장치가 어택을 지원 하고 있지 않는 경우,DIENVELOPE 구조체의 어택 레벨과 어택 시간의 각 멤버는 무시된다.
IDirectInputDevice8::GetEffectInfo 메서드의 호출 후, 개별의 이펙트가 어택을 지원 하고 있는 경우, DIEFT_FFATTACK 플래그가 설정된다.
- DIDC_HIDDEN
- 장치 드라이버가 키보드 이벤트나 마우스 이벤트를 생성할 수 있도록(듯이) 생성 된 가상 장치. 이러한 장치는, 보통 IDirectInput8::EnumDevices 에 의해 열거되거나IDirectInput8::ConfigureDevices 에 의해 구성 되거나 하지 않는다.
- DIDC_PHANTOM
- 플레이스홀더. 가상 장치는, 디폴트에서는 IDirectInput8::EnumDevices 에 의해 열거되지 않는다.
- DIDC_POLLEDDATAFORMAT
- 현상의 데이터 형식에서 적어도 1 개의 개체가, 세치기 구동은 아니고, 폴링 된다. 이러한 개체를 위해서(때문에), 애플리케이션은 명시적으로 IDirectInputDevice8::Poll 메서드를 호출해, 데이터를 취득해야 한다.
- DIDC_POLLEDDEVICE
- 장치 위에의 적어도 1 개의 개체가, 세치기 구동은 아니고, 폴링 된다. 이러한 개체를 위해서(때문에), 애플리케이션은 명시적으로 IDirectInputDevice8::Poll 메서드를 호출해, 데이터를 취득해야 한다. HID 장치는, 폴링 개체와 비폴링 개체를 혼재해 저장 할 수 있다.
- DIDC_POSNEGCOEFFICIENTS
- force feedback 시스템은, 적어도 1 개의 조건에 대해서 조건의 2 개의 계수값을 지원 한다 (한편은, 축의 정이동, 한편은, 축의 부이동). 장치가 한편의 계수 밖에 지원 하고 있지 않는 경우,DICONDITION 구조체의 부의 계수는 무시된다.
IDirectInputDevice8::GetEffectInfo 메서드의 호출 후, 개별의 조건이 정과 부의 계수를 따로 따로 지원 하고 있는 경우, DIEFT_POSNEGCOEFFICIENTS 플래그가 설정된다.
- DIDC_POSNEGSATURATION
- force feedback 시스템은, 적어도 1 개의 조건에 대해서, 정부의 양쪽 모두의 포스 출력에 대한 최대포화를 지원 한다. 장치가 한편의 포화값 밖에 지원 하고 있지 않는 경우,DICONDITION 구조체의 부의 포화값은 무시된다.
IDirectInputDevice8::GetEffectInfo 메서드의 호출 후, 개별의 조건이 정과 부의 포화값을 따로 따로 지원 하고 있는 경우, DIEFT_POSNEGSATURATION 플래그가 설정된다.
- DIDC_SATURATION
- force feedback 시스템은, 적어도 1 개의 조건에 대해서 조건 이펙트의포화를 지원 한다. 장치가 포화를 지원 하고 있지 않는 경우, 어느 조건에 의해 생성되는 포스는, 장치를 생성할 수 있는 최대 포스에 의해서만 제한된다.
IDirectInputDevice8::GetEffectInfo 메서드의 호출 후, 개별의 조건이 포화를 지원 하고 있는 경우, 그 조건에서는 DIEFT_SATURATION 플래그가 설정된다.
- DIDC_STARTDELAY
- force feedback 시스템은, 적어도 1 개의 이펙트에 대한 지연 파라미터를 지원 한다. 장치가 시작 지연을 지원 하고 있지 않는 경우,DIEFFECT 구조체의 dwStartDelay 멤버는 무시된다.
- dwDevType
- 장치 타입 지정자. 이 멤버는,DIDEVICEINSTANCE 구조체의 dwDevType 멤버와 동등한 값을 저장 할 수 있다.
- dwAxes
- 장치상에서 사용 가능한 축의 수.
- dwButtons
- 장치상에서 사용 가능한 버튼의 수.
- dwPOVs
- 장치상에서 사용 가능한 시점 콘트롤러의 수.
- dwFFSamplePeriod
- 미가공의 포스 커멘드를 연속해 재생할 때의 간격을 나타내는, 마이크로 세컨드 단위의 최소 시간.
- dwFFMinTimeResolution
- 마이크로 세컨드 단위의 장치의 분해가능의 최소 시간. 장치는, 모든 시간을 가장 가까운 증가값에 말다. 예를 들어,dwFFMinTimeResolution 의 값이 1000 의 경우, 장치는 모든 시간을 가장 가까운 밀리 세컨드에 말다.
- dwFirmwareRevision
- 장치의 펌 웨어 리버전 번호.
- dwHardwareRevision
- 장치의 하드웨어 리버전 번호.
- dwFFDriverVersion
- 장치 드라이버의 버전 번호.
주의
버전 번호의 붙이는 방법은 장치 메이커에 따라서 다르다. 확실한 것은, 새로운 버전에는 이전의 버전보다 큰 숫자가 붙는 것 뿐이다.
구조체의 정보
헤더 dinput.h 최저한의 operating system Windows 98
참조
DIDEVICEINSTANCE