Namespace LeapInternal¶
- namespace LeapInternal
Enums
- enum eLeapConnectionFlag
Values:
- eLeapConnectionFlag_MultipleDevicesAware
Allows subscription to multiple devices
- enum eLeapConnectionStatus
Values:
- eLeapConnectionStatus_NotConnected
A connection has been established.
- eLeapConnectionStatus_Connected
The connection has not been completed. Call OpenConnection.
- eLeapConnectionStatus_HandshakeIncomplete
The connection handshake has not completed.
- eLeapConnectionStatus_NotRunning
A connection could not be established because the server does not appear to be running.
- enum eLeapDeviceCaps
Values:
- eLeapDeviceCaps_Color
The device can send color images.
- enum eLeapDeviceType
Values:
- eLeapDeviceType_Peripheral
The Leap Motion consumer peripheral
- eLeapDeviceType_Dragonfly
Internal research product codename “Dragonfly”.
- eLeapDeviceType_Nightcrawler
Internal research product codename “Nightcrawler”.
- eLeapDevicePID_Rigel
Research product codename “Rigel”.
- eLeapDevicePID_SIR170
The Ultraleap Stereo IR 170 (SIR170) hand tracking module.
- eLeapDevicePID_3Di
The Ultraleap 3Di hand tracking camera.
- eLeapDevicePID_LMC2
The Ultraleap Leap Motion Controller 2 hand tracking camera.
- enum eLeapServiceDisposition
Values:
- eLeapServiceState_LowFpsDetected
The service cannot receive frames fast enough from the underlying hardware.
- Since
3.1.3
- eLeapServiceState_PoorPerformancePause
The service has paused itself due to an insufficient frame rate from the hardware.
- Since
3.1.3
- eLeapServiceState_TrackingErrorUnknown
The service has failed to start tracking due to unknown reasons.
- eLeapServiceState_ALL
The combination of all valid flags in this enumeration
- enum eDistortionMatrixType
Values:
- eDistortionMatrixType_64x64
A 64x64 matrix of pairs of points.
- enum eLeapCameraCalibrationType
Values:
- eLeapCameraCalibrationType_infrared
Infrared calibration (default)
- eLeapCameraCalibrationType_visual
Visual calibration.
- enum eLeapPolicyFlag
Values:
- eLeapPolicyFlag_BackgroundFrames
Allows frame receipt even when this application is not the foreground application.
- eLeapPolicyFlag_Images
Allow streaming images
- eLeapPolicyFlag_OptimizeHMD
Optimize HMD Policy Flag.
- eLeapPolicyFlag_AllowPauseResume
Modifies the security token to allow calls to LeapPauseDevice to succeed
- eLeapPolicyFlag_MapPoints
Allows streaming map points.
- eLeapPolicyFlag_ScreenTop
The policy specifying whether to optimize tracking for screen-top device.
- Since
5.0.0
- enum eLeapDeviceStatus
Values:
- eLeapDeviceStatus_Streaming
Presently sending frames to all clients that have requested them.
- eLeapDeviceStatus_Paused
Device streaming has been paused.
- eLeapDeviceStatus_Robust
There are known sources of infrared interference. Device has transitioned to robust mode in order to compensate.
- eLeapDeviceStatus_Smudged
The device’s window is smudged, tracking may be degraded.
- eLeapDeviceStatus_LowResource
The device has entered low-resource mode.
- eLeapDeviceStatus_UnknownFailure
The device has failed, but the failure reason is not known.
- eLeapDeviceStatus_BadCalibration
Bad calibration, cannot send frames.
- eLeapDeviceStatus_BadFirmware
Corrupt firmware and/or cannot receive a required firmware update.
- eLeapDeviceStatus_BadTransport
Exhibiting USB communications issues.
- eLeapDeviceStatus_BadControl
Missing critical control interfaces needed for communication.
- enum eLeapImageType
Values:
- eLeapImageType_Unknown
- eLeapImageType_Default
Default processed IR image
- eLeapImageType_Raw
Image from raw sensor values
- enum eLeapImageFormat
Values:
- eLeapImageFormat_UNKNOWN
An invalid or unknown format.
- eLeapImageType_IR
An infrared image.
- eLeapImageType_RGBIr_Bayer
A Bayer RGBIr image with uncorrected RGB channels
- enum eLeapPerspectiveType
Values:
- eLeapPerspectiveType_invalid
An unknown or invalid type.
- eLeapPerspectiveType_stereo_left
A canonically left image.
- eLeapPerspectiveType_stereo_right
A canonically right image.
- eLeapPerspectiveType_mono
Reserved for future use.
- enum eLeapHandType
Values:
- eLeapHandType_Left
- eLeapHandType_Right
- enum eLeapLogSeverity
Values:
- eLeapLogSeverity_Unknown
The message severity is not known or was not specified.
- eLeapLogSeverity_Critical
A message about a fault that could render the software or device non-functional.
- eLeapLogSeverity_Warning
A message warning about a condition that could degrade device capabilities.
- eLeapLogSeverity_Information
A system status message.
- enum eLeapValueType
Values:
- eLeapValueType_Unknown
The type is unknown (which is an abnormal condition).
- eLeapValueType_Boolean
- eLeapValueType_Int32
- eLeapValueType_Float
- eLeapValueType_String
- enum eLeapAllocatorType
Values:
- eLeapAllocatorType_Int8
- eLeapAllocatorType_Uint8
- eLeapAllocatorType_Int16
- eLeapAllocatorType_UInt16
- eLeapAllocatorType_Int32
- eLeapAllocatorType_UInt32
- eLeapAllocatorType_Float
- eLeapAllocatorType_Int64
- eLeapAllocatorType_UInt64
- eLeapAllocatorType_Double
- enum eLeapRS
Values:
- eLeapRS_Success
The operation completed successfully.
- eLeapRS_UnknownError
An undetermined error has occurred. This is usually the result of an abnormal operating condition in LeapC, the Leap Motion service, or the host computer itself.
- eLeapRS_InvalidArgument
An invalid argument was specified.
- eLeapRS_InsufficientResources
Insufficient resources existed to complete the request.
- eLeapRS_InsufficientBuffer
The specified buffer was not large enough to complete the request.
- eLeapRS_Timeout
The requested operation has timed out.
- eLeapRS_NotConnected
The operation is invalid because there is no current connection.
- eLeapRS_HandshakeIncomplete
The operation is invalid because the connection is not complete.
- eLeapRS_BufferSizeOverflow
The specified buffer size is too large.
- eLeapRS_ProtocolError
A communications protocol error occurred.
- eLeapRS_InvalidClientID
The server incorrectly specified zero as a client ID.
- eLeapRS_UnexpectedClosed
The connection to the service was unexpectedly closed while reading or writing a message. The server may have terminated.
- eLeapRS_UnknownImageFrameRequest
The specified request token does not appear to be valid
Provided that the token value which identifies the request itself was, at one point, valid, this error condition occurs when the request to which the token refers has already been satisfied or is currently being satisfied.
- eLeapRS_UnknownTrackingFrameID
The specified frame ID is not valid or is no longer valid
Provided that frame ID was, at one point, valid, this error condition occurs when the identifier refers to a frame that occurred further in the past than is currently recorded in the rolling frame window.
- eLeapRS_RoutineIsNotSeer
The specified timestamp references a future point in time
The related routine can only operate on time points having occurred in the past, and the provided timestamp occurs in the future.
- eLeapRS_TimestampTooEarly
The specified timestamp references a point too far in the past
The related routine can only operate on time points occurring within its immediate record of the past.
- eLeapRS_ConcurrentPoll
LeapPollConnection is called concurrently.
- eLeapRS_NotAvailable
A connection to the Leap Motion service could not be established.
- eLeapRS_NotStreaming
The requested operation can only be performed while the device is sending data.
- eLeapRS_CannotOpenDevice
The specified device could not be opened. It is possible that the device identifier is invalid, or that the device has been disconnected since being enumerated.
- eLeapRS_Unsupported
The request is not supported by this version of the service.
- enum eLeapTrackingMode
Values:
- eLeapTrackingMode_Desktop
The tracking mode optimised for desktop devices
- eLeapTrackingMode_HMD
The tracking mode optimised for head-mounted devices
- eLeapTrackingMode_ScreenTop
The tracking mode optimised for screen top-mounted devices
- eLeapTrackingMode_Unknown
Tracking mode is not known (allows triggering of a new LEAP_TRACKING_MODE_EVENT)
- enum eLeapEventType
Values:
- eLeapEventType_None
No event has occurred within the timeout period specified when calling LeapPollConnection().
- eLeapEventType_Connection
A connection to the Leap Motion service has been established.
- eLeapEventType_ConnectionLost
The connection to the Leap Motion service has been lost.
- eLeapEventType_Device
A device has been detected or plugged-in. A device event is dispatched after a connection is established for any devices already plugged in. (The system currently only supports one streaming device at a time.)
- eLeapEventType_DeviceFailure
Note that unplugging a device generates an eLeapEventType_DeviceLost event message, not a failure message.
- eLeapEventType_Policy
A policy change has occurred. This can be due to setting a policy with LeapSetPolicyFlags() or due to changing or policy-related config settings, including images_mode. (A user can also change these policies using the Leap Motion Control Panel.)
- eLeapEventType_Tracking
A tracking frame. The message contains the tracking data for the frame.
- eLeapEventType_ImageRequestError
The request for an image has failed. The message contains information about the failure. The client application will not receive the requested image set.
- eLeapEventType_ImageComplete
The request for an image is complete. The image data has been completely written to the application-provided buffer.
- eLeapEventType_LogEvent
A system message.
- eLeapEventType_DeviceLost
The device connection has been lost.
This event is generally asserted when the device has been detached from the system, when the connection to the service has been lost, or if the device is closed while streaming. Generally, any event where the system can conclude no further frames will be received will result in this message. The DeviceEvent field will be filled with the id of the formerly attached device.
- eLeapEventType_ConfigResponse
The asynchronous response to a call to LeapRequestConfigValue(). Contains the value of requested configuration item.
- eLeapEventType_ConfigChange
The asynchronous response to a call to LeapSaveConfigValue(). Reports whether the change succeeded or failed.
- eLeapEventType_DeviceStatusChange
Notification that a status change has been detected on an attached device.
- eLeapEventType_DroppedFrame
A tracking frame has been dropped by the service.
- eLeapEventType_Image
Notification that an unrequested stereo image pair is available.
- eLeapEventType_PointMappingChange
Notification that point mapping has changed.
- eLeapEventType_TrackingMode
A tracking mode change has occurred. This can be due to changing the hmd or screentop policy with SetPolicyFlags(). or setting the tracking mode using SetTrackingMode().
- eLeapEventType_LogEvents
An array of system messages.
- eLeapEventType_HeadPose
A new head pose is available.
- eLeapEventType_Eyes
A new head pose is available.
- eLeapEventType_IMU
A new IMU information frame is available.
- eLeapEventType_NewDeviceTransform
Notification that the service received a new device transformation matrix Use LeapGetDeviceTransform to update your cached information.
- eLeapEventType_Fiducial
An event provided when a fiducial marker has been tracked
- enum eLeapDeviceFlag
Values:
- eLeapDeviceFlag_Stream
Flag set if the device is presently streaming frames
This flag is updated when the user pauses or resumes tracking on the device from the Leap control panel. Modification of this flag will fail if the AllowPauseResume policy is not set on this device object.
- enum eLeapDroppedFrameType
Values:
- eLeapDroppedFrameType_PreprocessingQueue
- eLeapDroppedFrameType_TrackingQueue
- eLeapDroppedFrameType_Other
- enum eLeapVersionPart
Values:
- eLeapVersionPart_ClientLibrary
- eLeapVersionPart_ClientProtocol
- eLeapVersionPart_ServerLibrary
- eLeapVersionPart_ServerProtocol
Functions
- delegate IntPtr Allocate (UInt32 size, eLeapAllocatorType typeHint, IntPtr state)
- delegate void Deallocate (IntPtr buffer, IntPtr state)
- class CircularObjectBuffer<T>
A Limited capacity, circular LIFO buffer that wraps around when full. Supports indexing to get older items. Array-backed.
Unlike many collections, objects are never removed, just overwritten when the buffer cycles back to their array location.
Object types used must have default parameterless constructor. It should be obvious that such default objects are invalid. I.e. for Leap API objects, the IsValid property should be false.
- class Connection
- class CopyFromLeapCExtensions
- class Image
The Image class represents a stereo image pair from the Leap Motion device.
In addition to image data, the Image object provides a distortion map for correcting lens distortion.
- Since
2.1.0
- class ImageData
- struct LEAP_ALLOCATOR
- struct LEAP_BONE
- struct LEAP_CONFIG_CHANGE_EVENT
- struct LEAP_CONFIG_RESPONSE_EVENT
- struct LEAP_CONFIG_RESPONSE_EVENT_WITH_REF_TYPE
- struct LEAP_CONNECTION_CONFIG
- struct LEAP_CONNECTION_EVENT
- struct LEAP_CONNECTION_INFO
- struct LEAP_CONNECTION_LOST_EVENT
- struct LEAP_CONNECTION_MESSAGE
- struct LEAP_DEVICE_EVENT
- struct LEAP_DEVICE_FAILURE_EVENT
- struct LEAP_DEVICE_INFO
- struct LEAP_DEVICE_REF
- struct LEAP_DEVICE_STATUS_CHANGE_EVENT
- struct LEAP_DIGIT
- struct LEAP_DISCONNECTION_EVENT
- struct LEAP_DROPPED_FRAME_EVENT
- struct LEAP_EYE_EVENT
- struct LEAP_FIDUCIAL_POSE_EVENT
- struct LEAP_FRAME_HEADER
- struct LEAP_HAND
- struct LEAP_HEAD_POSE_EVENT
- struct LEAP_IMAGE
- struct LEAP_IMAGE_EVENT
- struct LEAP_IMAGE_PROPERTIES
- struct LEAP_LOG_EVENT
- struct LEAP_MATRIX_3x3
- struct LEAP_NEW_DEVICE_TRANSFORM
- struct LEAP_PALM
- struct LEAP_POINT_MAPPING
- struct LEAP_POINT_MAPPING_CHANGE_EVENT
- struct LEAP_POLICY_EVENT
- struct LEAP_QUATERNION
- struct LEAP_TELEMETRY_DATA
- struct LEAP_TIP
- struct LEAP_TRACKING_EVENT
- struct LEAP_TRACKING_MODE_EVENT
- struct LEAP_VARIANT_REF_TYPE
- struct LEAP_VARIANT_VALUE_TYPE
- struct LEAP_VECTOR
- struct LEAP_VERSION
- class LeapC
- class Logger
- class MemoryManager
- class ServerStatus
- class StructMarshal<T>
A helper class to marshal between unmanaged memory and structs without creating garbage.