SOFA plugin: LeapMotion  master
Open source framework for multi-physics simuation
Leap::Listener Class Reference

#include <Leap.h>

Inheritance diagram for Leap::Listener:

Detailed Description

The Listener class defines a set of callback functions that you can override in a subclass to respond to events dispatched by the Leap.

To handle Leap events, create an instance of a Listener subclass and assign it to the Controller instance. The Controller calls the relevant Listener callback function when an event occurs, passing in a reference to itself. You do not have to implement callbacks for events you do not want to handle.

The Controller object calls these Listener functions from a thread created by the Leap library, not the thread used to create or set the Listener instance.

Public Member Functions

LEAP_EXPORT Listener ()
 
virtual LEAP_EXPORT ~Listener ()
 
virtual LEAP_EXPORT void onInit (const Controller &)
 
virtual LEAP_EXPORT void onConnect (const Controller &)
 
virtual LEAP_EXPORT void onDisconnect (const Controller &)
 
virtual LEAP_EXPORT void onExit (const Controller &)
 
virtual LEAP_EXPORT void onFrame (const Controller &)
 
virtual LEAP_EXPORT void onFocusGained (const Controller &)
 
virtual LEAP_EXPORT void onFocusLost (const Controller &)
 

Constructor details

◆ Listener()

LEAP_EXPORT Leap::Listener::Listener ( )
inline

Constructs a Listener object.

◆ ~Listener()

virtual LEAP_EXPORT Leap::Listener::~Listener ( )
inlinevirtual

Destructs this Listener object.

Function details

◆ onConnect()

virtual LEAP_EXPORT void Leap::Listener::onConnect ( const Controller )
inlinevirtual

Called when the Controller object connects to the Leap software, or when this Listener object is added to a Controller that is already connected.

Parameters
controllerThe Controller object invoking this callback function.

Reimplemented in MyListener.

◆ onDisconnect()

virtual LEAP_EXPORT void Leap::Listener::onDisconnect ( const Controller )
inlinevirtual

Called when the Controller object disconnects from the Leap software. The controller can disconnect when the Leap device is unplugged, the user shuts the Leap software down, or the Leap software encounters an unrecoverable error.

Note: When you launch a Leap-enabled application in a debugger, the Leap library does not disconnect from the application. This is to allow you to step through code without losing the connection because of time outs.

Parameters
controllerThe Controller object invoking this callback function.

Reimplemented in MyListener.

◆ onExit()

virtual LEAP_EXPORT void Leap::Listener::onExit ( const Controller )
inlinevirtual

Called when this Listener object is removed from the Controller or the Controller instance is destroyed.

Parameters
controllerThe Controller object invoking this callback function.

Reimplemented in MyListener.

◆ onFocusGained()

virtual LEAP_EXPORT void Leap::Listener::onFocusGained ( const Controller )
inlinevirtual

Called when this application becomes the foreground application.

Only the foreground application receives tracking data from the Leap Motion Controller. This function is only called when the controller object is in a connected state.

Parameters
controllerThe Controller object invoking this callback function.

Reimplemented in MyListener.

◆ onFocusLost()

virtual LEAP_EXPORT void Leap::Listener::onFocusLost ( const Controller )
inlinevirtual

Called when this application loses the foreground focus.

Only the foreground application receives tracking data from the Leap Motion Controller. This function is only called when the controller object is in a connected state.

Parameters
controllerThe Controller object invoking this callback function.

Reimplemented in MyListener.

◆ onFrame()

virtual LEAP_EXPORT void Leap::Listener::onFrame ( const Controller )
inlinevirtual

Called when a new frame of hand and finger tracking data is available. Access the new frame data using the Controller::frame() function.

Note, the Controller skips any pending onFrame events while your onFrame handler executes. If your implementation takes too long to return, one or more frames can be skipped. The Controller still inserts the skipped frames into the frame history. You can access recent frames by setting the history parameter when calling the Controller::frame() function. You can determine if any pending onFrame events were skipped by comparing the ID of the most recent frame with the ID of the last received frame.

Parameters
controllerThe Controller object invoking this callback function.

Reimplemented in MyListener.

◆ onInit()

virtual LEAP_EXPORT void Leap::Listener::onInit ( const Controller )
inlinevirtual

Called once, when this Listener object is newly added to a Controller.

Parameters
controllerThe Controller object invoking this callback function.

Reimplemented in MyListener.