schema.yml - Zeukkari/leapgim GitHub Wiki

Feedback:
  type: object
  columns:
    visual:
      type: object
        id:
          type: string (html element id)
        msg:
          type: string
    audio:
      type: string (path to audio file)
Hand:
  columns:
    type:
      type: enum
      values: ['right', 'left']
    pinch:
      type: object
      columns:
        pincher:
          type: enum
          values: ['indexFinger', 'middleFinger', 'ringFinger', 'pinky', 'thumb']
        min:
          type: float
        max:
          type: float
    grab:
      type: object
      columns:
        min:
          type: float
        max:
          type: float
    extendedFingers:
      type: object
      columns:
        indexFinger:
          type: boolean
        middleFinger:
          type: boolean
        ringFinger:
          type: boolean
        pinky:
          type: boolean
        thumb:
          type: boolean
    minTime:
      type: integer
    feedback:
      type: Feedback
    palmDirection:
      type: enum
      values: ['up', 'down', 'left', 'right']
    palmNormal:
      type: enum
      values: ['up', 'down', 'left', 'right']
Gesture:
  columns:
    type: enum
    values: ['swipe', 'circle']
    direction:
      type: enum
      values: ['up', 'down', 'left', 'right', 'clockwise', 'counterclockwise']
      
Action:
  columns:
    type:
      type: enum
      values: ['mouse', 'keyboard', 'profile', 'exec', 'compound']
    action:
      type: string
    actions:
      type: array
      description: Values are action names/keys.
    target:
      type: string
      description: Depending on context. Left/right for mouse. Keyboard button as documented on robot.js for keyboard. Script path for exec.
    feedback:
      type: Feedback
    magnitude:
      type: string
      description: An arithmetic expression representing force.
Sign:
  hands:
    type: array
    description: Values are hand objects.
  gestures:
    type: array
    description: Values are gesture objects.
  feedback:
    type: Feedback
Recipe:
  columns:
    action:
      type: Action
    signs:
      type: array (values are Sign names)
    continuous:
      type: boolean
    chargeDelay:
      type: integer (milliseconds)
    tearDown:
      type: Action
    tearDownDelay:
      type: integer (milliseconds)