23 const TUint KMaxDeviceNumber=10; |
23 const TUint KMaxDeviceNumber=10; |
24 |
24 |
25 TUint gDeviceNumber=1; // Device Number |
25 TUint gDeviceNumber=1; // Device Number |
26 TUint gRegisteredDeviceNumber; // Represents the registered Hal Entry |
26 TUint gRegisteredDeviceNumber; // Represents the registered Hal Entry |
27 TBool gHalEntryRegistered; // States HAL Entry Successfully registered or not |
27 TBool gHalEntryRegistered; // States HAL Entry Successfully registered or not |
28 static TDigitiserInfoV02 gDigitserHalData; // Buffer to hold the HAL data; |
28 static TDigitiserInfoV02 gDigitserHalData; // Buffer to hold the HAL data; |
29 static TUint gPointer3DSupported; // States whether the pointing device supports 3rd dimension. |
29 static TUint gPointer3DSupported; // States whether the pointing device supports 3rd dimension. |
|
30 static TRawEvent kEvent; |
|
31 |
30 |
32 |
31 class DDigitiserLDDTestFactory : public DLogicalDevice |
33 class DDigitiserLDDTestFactory : public DLogicalDevice |
32 // |
34 // |
33 // Test LDD factory |
35 // Test LDD factory |
34 // |
36 // |
35 { |
37 { |
36 public: |
38 public: |
37 DDigitiserLDDTestFactory(); |
|
38 virtual TInt Install(); //overriding pure virtual |
39 virtual TInt Install(); //overriding pure virtual |
39 virtual void GetCaps(TDes8& aDes) const; //overriding pure virtual |
40 virtual void GetCaps(TDes8& aDes) const; //overriding pure virtual |
40 virtual TInt Create(DLogicalChannelBase*& aChannel); //overriding pure virtual |
41 virtual TInt Create(DLogicalChannelBase*& aChannel); //overriding pure virtual |
41 }; |
42 }; |
42 |
43 |
309 break; |
310 break; |
310 case (RLddDigitiserTest::EGET_EPOINTER3DPRESSURESTEP): |
311 case (RLddDigitiserTest::EGET_EPOINTER3DPRESSURESTEP): |
311 r=gDigitserHalData.iPressureStep; |
312 r=gDigitserHalData.iPressureStep; |
312 break; |
313 break; |
313 case (RLddDigitiserTest::ESET_EPOINTER3DPRESSURESTEP): |
314 case (RLddDigitiserTest::ESET_EPOINTER3DPRESSURESTEP): |
314 gDigitserHalData.iPressureStep=(TInt)a1; |
315 gDigitserHalData.iPressureStep=(TInt)a1; |
315 break; |
316 break; |
|
317 |
|
318 //Testing TRawEvents; |
|
319 |
|
320 |
|
321 case (RLddDigitiserTest::ESET_TRAWEVENT_EVENTTYPE): |
|
322 kEvent.Set(static_cast<TRawEvent::TType>((TInt)a1)); |
|
323 break; |
|
324 |
|
325 case (RLddDigitiserTest::EGET_TRAWEVENT_EVENTTYPE): |
|
326 r=kEvent.Type(); |
|
327 break; |
|
328 |
|
329 case (RLddDigitiserTest::ESET_TRAWEVENT_TILT): |
|
330 kumemget32(&eventBuf,a1,sizeof(eventBuf)); |
|
331 kEvent.SetTilt(static_cast<TRawEvent::TType>(eventBuf().iType),eventBuf().iPhi,eventBuf().iTheta); |
|
332 break; |
|
333 |
|
334 |
|
335 case (RLddDigitiserTest::EGET_TRAWEVENT_TILT): |
|
336 angle3D=kEvent.Tilt(); |
|
337 eventBuf().iPhi = angle3D.iPhi; |
|
338 eventBuf().iTheta = angle3D.iTheta; |
|
339 kumemput32(a1,&eventBuf,sizeof(eventBuf)); |
|
340 break; |
|
341 |
|
342 |
|
343 case (RLddDigitiserTest::ESET_TEVENT_DNMBR): |
|
344 |
|
345 kEvent.SetDeviceNumber((TInt)a1); |
|
346 break; |
|
347 case (RLddDigitiserTest::EGET_TEVENT_DNMBR): |
|
348 r=kEvent.DeviceNumber(); |
|
349 break; |
|
350 |
|
351 case (RLddDigitiserTest::ESET_TRAWEVENT_ROTATION): |
|
352 kumemget32(&eventBuf,a1,sizeof(eventBuf)); |
|
353 kEvent.SetRotation(static_cast<TRawEvent::TType>(eventBuf().iType),eventBuf().iAlpha); |
|
354 break; |
|
355 |
|
356 case (RLddDigitiserTest::EGET_TRAWEVENT_ROTATION): |
|
357 r=kEvent.Rotation(); |
|
358 break; |
|
359 |
|
360 case (RLddDigitiserTest::ESET_TRAWEVENT_REPEAT): |
|
361 kumemget32(&eventBuf,a1,sizeof(eventBuf)); |
|
362 kEvent.SetRepeat(static_cast<TRawEvent::TType>(eventBuf().iType),eventBuf().iScanCode,eventBuf().iRepeats); |
|
363 break; |
|
364 |
|
365 case (RLddDigitiserTest::EGET_TRAWEVENT_REPEAT): |
|
366 r=kEvent.Repeats(); |
|
367 break; |
|
368 |
|
369 case (RLddDigitiserTest::ESET_TRAWEVENT_SCANCODE): |
|
370 kumemget32(&eventBuf,a1,sizeof(eventBuf)); |
|
371 kEvent.Set(static_cast<TRawEvent::TType>(eventBuf().iType),eventBuf().iScanCode); |
|
372 break; |
|
373 case (RLddDigitiserTest::EGET_TRAWEVENT_SCANCODE): |
|
374 r=kEvent.ScanCode(); |
|
375 break; |
|
376 |
|
377 case (RLddDigitiserTest::ESET_TRAWEVENT_POS2D): |
|
378 kumemget32(&eventBuf,a1,sizeof(eventBuf)); |
|
379 kEvent.Set(static_cast<TRawEvent::TType>(eventBuf().iType),eventBuf().iX,eventBuf().iY); |
|
380 break; |
|
381 case (RLddDigitiserTest::EGET_TRAWEVENT_POS2D): |
|
382 point2D=kEvent.Pos(); |
|
383 eventBuf().iX = point2D.iX; |
|
384 eventBuf().iY = point2D.iY; |
|
385 kumemput32(a1,&eventBuf,sizeof(eventBuf)); |
|
386 break; |
|
387 |
|
388 |
|
389 case (RLddDigitiserTest::ESET_TRAWEVENT_PTRNMBR): |
|
390 kEvent.SetPointerNumber(static_cast<TUint8>((TInt)a1)); |
|
391 break; |
|
392 |
|
393 case (RLddDigitiserTest::ESET_TRAWEVENT_3DNPTRNMBR): |
|
394 kumemget32(&eventBuf,a1,sizeof(eventBuf)); |
|
395 //IMPORT_C void Set (TType aType, TInt aX, TInt aY, TInt aZ, TUint8 aPointerNumbe |
|
396 kEvent.Set(static_cast<TRawEvent::TType>(eventBuf().iType),eventBuf().iX,eventBuf().iY,eventBuf().iZ,eventBuf().iPointerNumber); |
|
397 break; |
|
398 case (RLddDigitiserTest::EGET_TRAWEVENT_PTRNMBR): |
|
399 r=kEvent.PointerNumber(); |
|
400 break; |
|
401 |
|
402 case (RLddDigitiserTest::EGET_TRAWEVENT_TICKS): |
|
403 r=kEvent.Ticks(); |
|
404 break; |
|
405 |
|
406 case (RLddDigitiserTest::ESET_TRAWEVENT_TIP): |
|
407 kEvent.SetTip(static_cast<TBool>((TInt)a1)); |
|
408 break; |
|
409 case (RLddDigitiserTest::EGET_TRAWEVENT_TIP): |
|
410 r=kEvent.IsTip(); |
|
411 break; |
|
412 |
|
413 case (RLddDigitiserTest::ESET_TRAWEVENT_POS3D): |
|
414 kumemget32(&eventBuf,a1,sizeof(eventBuf)); |
|
415 kEvent.Set(static_cast<TRawEvent::TType>(eventBuf().iType),eventBuf().iX,eventBuf().iY,eventBuf().iZ); |
|
416 break; |
|
417 |
|
418 case (RLddDigitiserTest::EGET_TRAWEVENT_POS3D): |
|
419 |
|
420 point3D=kEvent.Pos3D(); |
|
421 eventBuf().iX = point3D.iX; |
|
422 eventBuf().iY = point3D.iY; |
|
423 eventBuf().iZ = point3D.iZ; |
|
424 kumemput32(a1,&eventBuf,sizeof(eventBuf)); |
|
425 break; |
|
426 |
|
427 |
|
428 case (RLddDigitiserTest::ESET_TRAWEVENT_ALL): |
|
429 kumemget32(&eventBuf,a1,sizeof(eventBuf)); |
|
430 kEvent.Set(static_cast<TRawEvent::TType>(eventBuf().iType),eventBuf().iX,eventBuf().iY,eventBuf().iZ,eventBuf().iPhi,eventBuf().iTheta,eventBuf().iAlpha); |
|
431 break; |
|
432 |
316 default: |
433 default: |
317 r=KErrNotSupported; |
434 r=KErrNotSupported; |
318 break; |
435 break; |
319 } |
436 } |
320 return r; |
437 return r; |