MCPcopy Create free account
hub / github.com/360Controller/360Controller / SendForceFeedbackCommand

Method SendForceFeedbackCommand

Feedback360/Feedback360.cpp:439–488  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

437}
438
439HRESULT Feedback360::SendForceFeedbackCommand(FFCommandFlag state)
440{
441 __block HRESULT Result = FF_OK;
442
443 dispatch_sync(Queue, ^{
444 switch (state) {
445 case FFSFFC_RESET:
446 EffectList.clear();
447 Stopped = true;
448 Paused = false;
449 break;
450
451 case FFSFFC_STOPALL:
452 for (Feedback360EffectIterator effectIterator = EffectList.begin() ; effectIterator != EffectList.end(); ++effectIterator)
453 {
454 effectIterator->Status = NULL;
455 }
456 Stopped = true;
457 Paused = false;
458 break;
459
460 case FFSFFC_PAUSE:
461 Paused = true;
462 PausedTime = CurrentTimeUsingMach();
463 break;
464
465 case FFSFFC_CONTINUE:
466 for (Feedback360EffectIterator effectIterator = EffectList.begin() ; effectIterator != EffectList.end(); ++effectIterator)
467 {
468 effectIterator->StartTime += ( CurrentTimeUsingMach() - PausedTime );
469 }
470 Paused = false;
471 break;
472
473 case FFSFFC_SETACTUATORSON:
474 Actuator = true;
475 break;
476
477 case FFSFFC_SETACTUATORSOFF:
478 Actuator = false;
479 break;
480
481 default:
482 Result = FFERR_INVALIDPARAM;
483 break;
484 }
485 });
486 //return Result;
487 return FF_OK;
488}
489
490HRESULT Feedback360::InitializeTerminate(NumVersion APIversion, io_object_t hidDevice, boolean_t begin)
491{

Callers 1

Calls 1

CurrentTimeUsingMachFunction · 0.70

Tested by

no test coverage detected