00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #include "rpc.h"
00013 #include "rpcndr.h"
00014 #ifndef COM_NO_WINDOWS_H
00015 #include "windows.h"
00016 #include "ole2.h"
00017 #endif
00018
00019 #ifndef __TkInput_h__
00020 #define __TkInput_h__
00021
00022 #ifdef __cplusplus
00023 extern "C"{
00024 #endif
00025
00026
00027
00028 #ifndef __ITk3dInput_FWD_DEFINED__
00029 #define __ITk3dInput_FWD_DEFINED__
00030 typedef interface ITk3dInput ITk3dInput;
00031 #endif
00032
00033
00034 #ifndef __Tk3dInput_FWD_DEFINED__
00035 #define __Tk3dInput_FWD_DEFINED__
00036
00037 #ifdef __cplusplus
00038 typedef class Tk3dInput Tk3dInput;
00039 #else
00040 typedef struct Tk3dInput Tk3dInput;
00041 #endif
00042
00043 #endif
00044
00045
00046
00047 #include "oaidl.h"
00048 #include "ocidl.h"
00049
00050 void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
00051 void __RPC_USER MIDL_user_free( void __RPC_FAR * );
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061 typedef long RETINFO;
00062
00063 typedef long __RPC_FAR *PRETINFO;
00064
00065 typedef struct TTK3DADSTDDATA
00066 {
00067 double Offset[ 7 ];
00068 double Gain[ 7 ];
00069 double Non_Move[ 3 ];
00070 double Ht_Z;
00071 double Ipsiron1;
00072 double Comp_Lev;
00073 } TK3DADSTDDATA;
00074
00075 typedef TK3DADSTDDATA __RPC_FAR *PTK3DADSTDDATA;
00076
00077 typedef TK3DADSTDDATA __RPC_FAR *PTK3DNOWADSTDDATA;
00078
00079 typedef struct TTK3DISTATE
00080 {
00081 double Alfa;
00082 double Beta;
00083 double Gamma;
00084 double Alfa_North;
00085 double AccX;
00086 double AccY;
00087 double VeloX;
00088 double VeloY;
00089 double LocaX;
00090 double LocaY;
00091 long Button;
00092 long mlX;
00093 long mlY;
00094 long ubFlag;
00095 long wRoll;
00096 long wPitch;
00097 long wTurn;
00098 long wLeanFB;
00099 long wLeanRL;
00100 long wMoveFB;
00101 long wMoveRL;
00102 long uwButton;
00103 long uwLED;
00104 } TK3DISTATE;
00105
00106 typedef TK3DISTATE __RPC_FAR *PTK3DISTATE;
00107
00108
00109
00110 extern RPC_IF_HANDLE __MIDL_itf_TkInput_0000_v0_0_c_ifspec;
00111 extern RPC_IF_HANDLE __MIDL_itf_TkInput_0000_v0_0_s_ifspec;
00112
00113 #ifndef __ITk3dInput_INTERFACE_DEFINED__
00114 #define __ITk3dInput_INTERFACE_DEFINED__
00115
00116
00117
00118
00119
00120
00121
00122
00123
00124
00125 EXTERN_C const IID IID_ITk3dInput;
00126
00127 #if defined(__cplusplus) && !defined(CINTERFACE)
00128
00129 interface DECLSPEC_UUID("9E6CA5D0-B131-11D2-ACE7-004854002478")
00130 ITk3dInput : public IUnknown
00131 {
00132 public:
00133 virtual HRESULT STDMETHODCALLTYPE CreateDevice(
00134 PRETINFO pRetInfo) = 0;
00135
00136 virtual HRESULT STDMETHODCALLTYPE SetAdStdData(
00137 short DeviceNumber,
00138 PTK3DADSTDDATA pTk3dAdStdData,
00139 PRETINFO pRetInfo) = 0;
00140
00141 virtual HRESULT STDMETHODCALLTYPE GetAdStdData(
00142 short DeviceNumber,
00143 PTK3DNOWADSTDDATA pTk3dNowAdStdData,
00144 BOOL __RPC_FAR *AdStdData,
00145 PRETINFO pRetInfo) = 0;
00146
00147 virtual HRESULT STDMETHODCALLTYPE Poll(
00148 short DeviceNumber,
00149 PRETINFO pRetInfo) = 0;
00150
00151 virtual HRESULT STDMETHODCALLTYPE GetDeviceData(
00152 short DeviceNumber,
00153 PTK3DISTATE pTk3dIState,
00154 PRETINFO pRetInfo) = 0;
00155
00156 virtual HRESULT STDMETHODCALLTYPE StartMouseData(
00157 long count_x,
00158 long count_y,
00159 PRETINFO pRetInfo) = 0;
00160
00161 virtual HRESULT STDMETHODCALLTYPE StopMouseData( void) = 0;
00162
00163 virtual HRESULT STDMETHODCALLTYPE CloseDevice(
00164 PRETINFO pRetInfo) = 0;
00165
00166 virtual HRESULT STDMETHODCALLTYPE InitDevice(
00167 short DeviceNumber,
00168 PRETINFO pRetInfo) = 0;
00169
00170 };
00171
00172 #else
00173
00174 typedef struct ITk3dInputVtbl
00175 {
00176 BEGIN_INTERFACE
00177
00178 HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
00179 ITk3dInput __RPC_FAR * This,
00180 REFIID riid,
00181 void __RPC_FAR *__RPC_FAR *ppvObject);
00182
00183 ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
00184 ITk3dInput __RPC_FAR * This);
00185
00186 ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
00187 ITk3dInput __RPC_FAR * This);
00188
00189 HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateDevice )(
00190 ITk3dInput __RPC_FAR * This,
00191 PRETINFO pRetInfo);
00192
00193 HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetAdStdData )(
00194 ITk3dInput __RPC_FAR * This,
00195 short DeviceNumber,
00196 PTK3DADSTDDATA pTk3dAdStdData,
00197 PRETINFO pRetInfo);
00198
00199 HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAdStdData )(
00200 ITk3dInput __RPC_FAR * This,
00201 short DeviceNumber,
00202 PTK3DNOWADSTDDATA pTk3dNowAdStdData,
00203 BOOL __RPC_FAR *AdStdData,
00204 PRETINFO pRetInfo);
00205
00206 HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Poll )(
00207 ITk3dInput __RPC_FAR * This,
00208 short DeviceNumber,
00209 PRETINFO pRetInfo);
00210
00211 HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDeviceData )(
00212 ITk3dInput __RPC_FAR * This,
00213 short DeviceNumber,
00214 PTK3DISTATE pTk3dIState,
00215 PRETINFO pRetInfo);
00216
00217 HRESULT ( STDMETHODCALLTYPE __RPC_FAR *StartMouseData )(
00218 ITk3dInput __RPC_FAR * This,
00219 long count_x,
00220 long count_y,
00221 PRETINFO pRetInfo);
00222
00223 HRESULT ( STDMETHODCALLTYPE __RPC_FAR *StopMouseData )(
00224 ITk3dInput __RPC_FAR * This);
00225
00226 HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CloseDevice )(
00227 ITk3dInput __RPC_FAR * This,
00228 PRETINFO pRetInfo);
00229
00230 HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InitDevice )(
00231 ITk3dInput __RPC_FAR * This,
00232 short DeviceNumber,
00233 PRETINFO pRetInfo);
00234
00235 END_INTERFACE
00236 } ITk3dInputVtbl;
00237
00238 interface ITk3dInput
00239 {
00240 CONST_VTBL struct ITk3dInputVtbl __RPC_FAR *lpVtbl;
00241 };
00242
00243
00244
00245 #ifdef COBJMACROS
00246
00247
00248 #define ITk3dInput_QueryInterface(This,riid,ppvObject) \
00249 (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
00250
00251 #define ITk3dInput_AddRef(This) \
00252 (This)->lpVtbl -> AddRef(This)
00253
00254 #define ITk3dInput_Release(This) \
00255 (This)->lpVtbl -> Release(This)
00256
00257
00258 #define ITk3dInput_CreateDevice(This,pRetInfo) \
00259 (This)->lpVtbl -> CreateDevice(This,pRetInfo)
00260
00261 #define ITk3dInput_SetAdStdData(This,DeviceNumber,pTk3dAdStdData,pRetInfo) \
00262 (This)->lpVtbl -> SetAdStdData(This,DeviceNumber,pTk3dAdStdData,pRetInfo)
00263
00264 #define ITk3dInput_GetAdStdData(This,DeviceNumber,pTk3dNowAdStdData,AdStdData,pRetInfo) \
00265 (This)->lpVtbl -> GetAdStdData(This,DeviceNumber,pTk3dNowAdStdData,AdStdData,pRetInfo)
00266
00267 #define ITk3dInput_Poll(This,DeviceNumber,pRetInfo) \
00268 (This)->lpVtbl -> Poll(This,DeviceNumber,pRetInfo)
00269
00270 #define ITk3dInput_GetDeviceData(This,DeviceNumber,pTk3dIState,pRetInfo) \
00271 (This)->lpVtbl -> GetDeviceData(This,DeviceNumber,pTk3dIState,pRetInfo)
00272
00273 #define ITk3dInput_StartMouseData(This,count_x,count_y,pRetInfo) \
00274 (This)->lpVtbl -> StartMouseData(This,count_x,count_y,pRetInfo)
00275
00276 #define ITk3dInput_StopMouseData(This) \
00277 (This)->lpVtbl -> StopMouseData(This)
00278
00279 #define ITk3dInput_CloseDevice(This,pRetInfo) \
00280 (This)->lpVtbl -> CloseDevice(This,pRetInfo)
00281
00282 #define ITk3dInput_InitDevice(This,DeviceNumber,pRetInfo) \
00283 (This)->lpVtbl -> InitDevice(This,DeviceNumber,pRetInfo)
00284
00285 #endif
00286
00287
00288 #endif
00289
00290
00291
00292 HRESULT STDMETHODCALLTYPE ITk3dInput_CreateDevice_Proxy(
00293 ITk3dInput __RPC_FAR * This,
00294 PRETINFO pRetInfo);
00295
00296
00297 void __RPC_STUB ITk3dInput_CreateDevice_Stub(
00298 IRpcStubBuffer *This,
00299 IRpcChannelBuffer *_pRpcChannelBuffer,
00300 PRPC_MESSAGE _pRpcMessage,
00301 DWORD *_pdwStubPhase);
00302
00303
00304 HRESULT STDMETHODCALLTYPE ITk3dInput_SetAdStdData_Proxy(
00305 ITk3dInput __RPC_FAR * This,
00306 short DeviceNumber,
00307 PTK3DADSTDDATA pTk3dAdStdData,
00308 PRETINFO pRetInfo);
00309
00310
00311 void __RPC_STUB ITk3dInput_SetAdStdData_Stub(
00312 IRpcStubBuffer *This,
00313 IRpcChannelBuffer *_pRpcChannelBuffer,
00314 PRPC_MESSAGE _pRpcMessage,
00315 DWORD *_pdwStubPhase);
00316
00317
00318 HRESULT STDMETHODCALLTYPE ITk3dInput_GetAdStdData_Proxy(
00319 ITk3dInput __RPC_FAR * This,
00320 short DeviceNumber,
00321 PTK3DNOWADSTDDATA pTk3dNowAdStdData,
00322 BOOL __RPC_FAR *AdStdData,
00323 PRETINFO pRetInfo);
00324
00325
00326 void __RPC_STUB ITk3dInput_GetAdStdData_Stub(
00327 IRpcStubBuffer *This,
00328 IRpcChannelBuffer *_pRpcChannelBuffer,
00329 PRPC_MESSAGE _pRpcMessage,
00330 DWORD *_pdwStubPhase);
00331
00332
00333 HRESULT STDMETHODCALLTYPE ITk3dInput_Poll_Proxy(
00334 ITk3dInput __RPC_FAR * This,
00335 short DeviceNumber,
00336 PRETINFO pRetInfo);
00337
00338
00339 void __RPC_STUB ITk3dInput_Poll_Stub(
00340 IRpcStubBuffer *This,
00341 IRpcChannelBuffer *_pRpcChannelBuffer,
00342 PRPC_MESSAGE _pRpcMessage,
00343 DWORD *_pdwStubPhase);
00344
00345
00346 HRESULT STDMETHODCALLTYPE ITk3dInput_GetDeviceData_Proxy(
00347 ITk3dInput __RPC_FAR * This,
00348 short DeviceNumber,
00349 PTK3DISTATE pTk3dIState,
00350 PRETINFO pRetInfo);
00351
00352
00353 void __RPC_STUB ITk3dInput_GetDeviceData_Stub(
00354 IRpcStubBuffer *This,
00355 IRpcChannelBuffer *_pRpcChannelBuffer,
00356 PRPC_MESSAGE _pRpcMessage,
00357 DWORD *_pdwStubPhase);
00358
00359
00360 HRESULT STDMETHODCALLTYPE ITk3dInput_StartMouseData_Proxy(
00361 ITk3dInput __RPC_FAR * This,
00362 long count_x,
00363 long count_y,
00364 PRETINFO pRetInfo);
00365
00366
00367 void __RPC_STUB ITk3dInput_StartMouseData_Stub(
00368 IRpcStubBuffer *This,
00369 IRpcChannelBuffer *_pRpcChannelBuffer,
00370 PRPC_MESSAGE _pRpcMessage,
00371 DWORD *_pdwStubPhase);
00372
00373
00374 HRESULT STDMETHODCALLTYPE ITk3dInput_StopMouseData_Proxy(
00375 ITk3dInput __RPC_FAR * This);
00376
00377
00378 void __RPC_STUB ITk3dInput_StopMouseData_Stub(
00379 IRpcStubBuffer *This,
00380 IRpcChannelBuffer *_pRpcChannelBuffer,
00381 PRPC_MESSAGE _pRpcMessage,
00382 DWORD *_pdwStubPhase);
00383
00384
00385 HRESULT STDMETHODCALLTYPE ITk3dInput_CloseDevice_Proxy(
00386 ITk3dInput __RPC_FAR * This,
00387 PRETINFO pRetInfo);
00388
00389
00390 void __RPC_STUB ITk3dInput_CloseDevice_Stub(
00391 IRpcStubBuffer *This,
00392 IRpcChannelBuffer *_pRpcChannelBuffer,
00393 PRPC_MESSAGE _pRpcMessage,
00394 DWORD *_pdwStubPhase);
00395
00396
00397 HRESULT STDMETHODCALLTYPE ITk3dInput_InitDevice_Proxy(
00398 ITk3dInput __RPC_FAR * This,
00399 short DeviceNumber,
00400 PRETINFO pRetInfo);
00401
00402
00403 void __RPC_STUB ITk3dInput_InitDevice_Stub(
00404 IRpcStubBuffer *This,
00405 IRpcChannelBuffer *_pRpcChannelBuffer,
00406 PRPC_MESSAGE _pRpcMessage,
00407 DWORD *_pdwStubPhase);
00408
00409
00410
00411 #endif
00412
00413
00414
00415 #ifndef __TKINPUTLib_LIBRARY_DEFINED__
00416 #define __TKINPUTLib_LIBRARY_DEFINED__
00417
00418
00419
00420
00421
00422
00423
00424
00425
00426
00427 EXTERN_C const IID LIBID_TKINPUTLib;
00428
00429 #ifdef __cplusplus
00430 EXTERN_C const CLSID CLSID_Tk3dInput;
00431
00432 class DECLSPEC_UUID("59F99DD1-ABBF-11D2-ACE7-004854002478")
00433 Tk3dInput;
00434 #endif
00435 #endif
00436
00437
00438
00439
00440
00441 #ifdef __cplusplus
00442 }
00443 #endif
00444
00445 #endif