cysp / IOHIDPlayground

Mozilla Public License 2.0
5 stars 1 forks source link

STIOHID

STIOHIDDigitizer * const digitizer = [[STIOHIDDigitizer alloc] init];

STIOHIDDigitizerTouch * __block touch1 = nil;
STIOHIDDigitizerTouch * __block touch2 = nil;
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
    touch1 = [digitizer touchAtPosition:(CGPoint){ 100, 100 }];
    touch2 = [digitizer touchAtPosition:(CGPoint){ 150, 100 }];
    [touch1 setPosition:(CGPoint){ 150, 200 } withDuration:.5];
    [touch2 setPosition:(CGPoint){ 200, 200 } withDuration:.5];
});

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
    [touch2 setTouching:NO];
    [touch1 setPosition:(CGPoint){ 20, 300 } withDuration:.25];
});

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
    [touch2 setTouching:YES];
    [touch1 setPosition:(CGPoint){ 100, 100 } withDuration:.5];
    [touch2 setPosition:(CGPoint){ 150, 100 } withDuration:.5];
});

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
    STIOHIDDigitizerTouch * touch = [digitizer touchAtPosition:(CGPoint){ .x = 300, .y = 400 }];
    (void)touch;
});