name
plug ( )
openExample

    import processing.opengl.*;

    import procontroll.*;
    import net.java.games.input.*;

    ControllIO controllIO;
    ControllDevice joypad;
    ControllStick stick1;
    ControllStick stick2;

    float transX;
    float transY;

    void setup(){
      size(600,600,OPENGL);

      transX = width/2;
      transY = height/2;

      controllIO = ControllIO.getInstance(this);

      joypad = controllIO.getDevice("Logitech RumblePad 2 USB");
      joypad.plug(this, "handleButton1Press", ControllIO.ON_PRESS, 1);
      joypad.plug(this, "handleButton1Release", ControllIO.ON_RELEASE, 1);
      joypad.plug(this, "handleMovement", ControllIO.WHILE_PRESS, 0);

      stick1 = joypad.getStick(0);
      stick1.setMultiplier(PI);

      stick2 = joypad.getStick(1);
      stick2.setTolerance(0.06f);
      stick2.setMultiplier(0.05f);
    }

    void handleButton1Press(){
      fill(255,0,0);
      joypad.rumble(1);
    }

    void handleButton1Release(){
      fill(255);
    }

    void handleMovement(final float i_x,final float i_y){
      transX += i_x;
      transY += i_y;
    }

    void draw(){
      background(0);
      lights();
      translate(transX,transY,0);
      rotateX(stick2.getTotalY());
      rotateY(stick2.getTotalX());
      box(200);
    }

description

Plug is a handy method to handle incoming button events. To create a plug you have to implement a method that reacts on the events. To plug a method you need to give ControllIO the method name, the event type you want to react on and the device and button. If your method is inside a class you have to give ControllIO a reference to it.

If you want to handle the events of a simple button, you only have to implement a method without parameters. To react on the events of a cooliehat you method needs to receive two float values, so that proCONTROLL can send you the x and y values of the cooliehat.

syntax

    plug(i_object, i_methodName, i_eventType, i_intputDevice, i_input);
    plug(i_methodName, i_eventType, i_intputDevice, i_input);

parameters
i_object
Object: the object with the method to plug
i_methodName
String: the name of the method that has to be plugged
i_eventType
constant: can be ControllIO.ON_PRESS, ControllIO.ON_RELEASE or ControllIO.WHILE_PRESS
i_intputDevice
int: the number of the device that triggers the plug
i_input
int: the number of the button that triggers the plug
i_intputDevice
String: the name of the device that triggers the plug
i_input
int: the name of the button that triggers the plug
returns
None
usage
Web & Application
related