Difference between revisions of "Unit Touch"
From Ultibo.org
Line 778: | Line 778: | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! Touch |
− | | | + | | The Touch device to destroy |
+ | |- | ||
+ | ! Return | ||
+ | | ERROR_SUCCESS if completed or another error code on failure | ||
|- | |- | ||
|} | |} | ||
Line 790: | Line 793: | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! Touch |
− | | | + | | The Touch device to register |
+ | |- | ||
+ | ! Return | ||
+ | | ERROR_SUCCESS if completed or another error code on failure | ||
|- | |- | ||
|} | |} | ||
Line 802: | Line 808: | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! Touch |
− | | | + | | The Touch device to dregister |
+ | |- | ||
+ | ! Return | ||
+ | | ERROR_SUCCESS if completed or another error code on failure | ||
|- | |- | ||
|} | |} | ||
Line 810: | Line 819: | ||
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
<pre style="border: 0; padding-bottom:0px;">function TouchDeviceFind(TouchId:LongWord):PTouchDevice;</pre> | <pre style="border: 0; padding-bottom:0px;">function TouchDeviceFind(TouchId:LongWord):PTouchDevice;</pre> | ||
− | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' | + | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Find a Touch device by ID in the Touch device table</div> |
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! TouchId |
− | | | + | | The ID number of the Touch device to find |
+ | |- | ||
+ | ! Return | ||
+ | | Pointer to Touch device entry or nil if not found | ||
|- | |- | ||
|} | |} | ||
Line 822: | Line 834: | ||
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
<pre style="border: 0; padding-bottom:0px;">function TouchDeviceFindByName(const Name:String):PTouchDevice; inline;</pre> | <pre style="border: 0; padding-bottom:0px;">function TouchDeviceFindByName(const Name:String):PTouchDevice; inline;</pre> | ||
− | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' | + | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Find a Touch device by name in the device table</div> |
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! Name |
− | | | + | | The name of the Touch device to find (eg Touch0) |
+ | |- | ||
+ | ! Return | ||
+ | | Pointer to Touch device entry or nil if not found | ||
|- | |- | ||
|} | |} | ||
Line 834: | Line 849: | ||
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
<pre style="border: 0; padding-bottom:0px;">function TouchDeviceFindByDescription(const Description:String):PTouchDevice; inline;</pre> | <pre style="border: 0; padding-bottom:0px;">function TouchDeviceFindByDescription(const Description:String):PTouchDevice; inline;</pre> | ||
− | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' | + | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Find a Touch device by description in the device table</div> |
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! Description |
− | | | + | | The description of the Touch to find (eg USB Touchscreen) |
+ | |- | ||
+ | ! Return | ||
+ | | Pointer to Touch device entry or nil if not found | ||
|- | |- | ||
|} | |} | ||
Line 846: | Line 864: | ||
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
<pre style="border: 0; padding-bottom:0px;">function TouchDeviceEnumerate(Callback:TTouchEnumerate; Data:Pointer):LongWord;</pre> | <pre style="border: 0; padding-bottom:0px;">function TouchDeviceEnumerate(Callback:TTouchEnumerate; Data:Pointer):LongWord;</pre> | ||
− | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' | + | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Enumerate all Touch devices in the Touch device table</div> |
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! Callback |
− | | | + | | The callback function to call for each Touch device in the table |
+ | |- | ||
+ | ! Data | ||
+ | | A private data pointer to pass to callback for each Touch device in the table | ||
+ | |- | ||
+ | ! Return | ||
+ | | ERROR_SUCCESS if completed or another error code on failure | ||
|- | |- | ||
|} | |} | ||
Line 858: | Line 882: | ||
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
<pre style="border: 0; padding-bottom:0px;">function TouchDeviceNotification(Touch:PTouchDevice; Callback:TTouchNotification; Data:Pointer; Notification,Flags:LongWord):LongWord;</pre> | <pre style="border: 0; padding-bottom:0px;">function TouchDeviceNotification(Touch:PTouchDevice; Callback:TTouchNotification; Data:Pointer; Notification,Flags:LongWord):LongWord;</pre> | ||
− | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' | + | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Register a notification for Touch device changes</div> |
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! Touch |
− | | | + | | The Touch device to notify changes for (Optional, pass nil for all Touch devices) |
+ | |- | ||
+ | ! Callback | ||
+ | | The function to call when a notification event occurs | ||
+ | |- | ||
+ | ! Data | ||
+ | | A private data pointer to pass to callback when a notification event occurs | ||
+ | |- | ||
+ | ! Notification | ||
+ | | The events to register for notification of (eg DEVICE_NOTIFICATION_REGISTER) | ||
+ | |- | ||
+ | ! Flags | ||
+ | | The flags to control the notification (eg NOTIFIER_FLAG_WORKER) | ||
+ | |- | ||
+ | ! Return | ||
+ | | ERROR_SUCCESS if completed or another error code on failure | ||
|- | |- | ||
|} | |} | ||
Line 877: | Line 916: | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! Return |
− | | | + | | The number of Touch devices |
|- | |- | ||
|} | |} | ||
Line 889: | Line 928: | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! Return |
− | | | + | | Pointer to default Touch device entry |
|- | |- | ||
|} | |} | ||
Line 901: | Line 940: | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! Touch |
− | | | + | | The Touch device to set as default |
+ | |- | ||
+ | ! Return | ||
+ | | ERROR_SUCCESS if completed or another error code on failure | ||
|- | |- | ||
|} | |} | ||
Line 913: | Line 955: | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
|- | |- | ||
− | ! | + | ! Touch |
− | | | + | | The Touch device to check |
+ | |- | ||
+ | ! Return | ||
+ | | Pointer to Touch device entry or nil if not found | ||
|- | |- | ||
|} | |} | ||
Line 921: | Line 966: | ||
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
<pre style="border: 0; padding-bottom:0px;">function TouchDeviceTypeToString(TouchType:LongWord):String;</pre> | <pre style="border: 0; padding-bottom:0px;">function TouchDeviceTypeToString(TouchType:LongWord):String;</pre> | ||
− | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' | + | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return a string describing the Touch device type (eg TOUCH_TYPE_CAPACITIVE)</div> |
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" | ||
Line 933: | Line 978: | ||
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
<pre style="border: 0; padding-bottom:0px;">function TouchDeviceStateToString(TouchState:LongWord):String;</pre> | <pre style="border: 0; padding-bottom:0px;">function TouchDeviceStateToString(TouchState:LongWord):String;</pre> | ||
− | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' | + | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return a string describing the Touch device state (eg TOUCH_STATE_ENABLED)</div> |
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
{| class="wikitable" style="font-size: 14px; background: white;" | {| class="wikitable" style="font-size: 14px; background: white;" |
Revision as of 05:48, 16 November 2022
Return to Unit Reference
Contents
[hide]Description
Ultibo Touch Interface unit
Constants
[Expand]
Touch specific constants
TOUCH_*
[Expand]
Touch device type
TOUCH_TYPE_*
[Expand]
Touch device state
TOUCH_STATE_*
[Expand]
Touch device flag
TOUCH_FLAG_*
[Expand]
Touch device control code
TOUCH_CONTROL_*
[Expand]
Touch buffer size
TOUCH_BUFFER_*
[Expand]
Touch data definitions
TOUCH_FINGER*, TOUCH_ID_*
[Expand]
Touch rotation
TOUCH_ROTATION_*
[Expand]
Touch logging
TOUCH_LOG_*
Type definitions
Touch data
Touch buffer
Touch properties
Touch enumeration callback
TTouchEnumerate = function(Touch:PTouchDevice; Data:Pointer):LongWord;
|
Touch notification callback
TTouchNotification = function(Device:PDevice; Data:Pointer; Notification:LongWord):LongWord;
|
Touch device start
TTouchDeviceStart = function(Touch:PTouchDevice):LongWord;
|
Touch device stop
TTouchDeviceStop = function(Touch:PTouchDevice):LongWord;
|
Touch device peek
TTouchDevicePeek = function(Touch:PTouchDevice):LongWord;
|
Touch device read
TTouchDeviceRead = function(Touch:PTouchDevice; Buffer:Pointer; Size,Flags:LongWord; var Count:LongWord):LongWord;
|
Touch device write
TTouchDeviceWrite = function(Touch:PTouchDevice; Buffer:Pointer; Size,Count:LongWord):LongWord;
|
Touch device flush
TTouchDeviceFlush = function(Touch:PTouchDevice):LongWord;
|
Touch device update
TTouchDeviceUpdate = function(Touch:PTouchDevice):LongWord;
|
Touch device control
TTouchDeviceControl = function(Touch:PTouchDevice; Request:Integer; Argument1:LongWord; var Argument2:LongWord):LongWord;
|
Touch device get properties
TTouchDeviceGetProperties = function(Touch:PTouchDevice; Properties:PTouchProperties):LongWord;
|
Touch device
Public variables
Touch logging
TOUCH_DEFAULT_LOG_LEVEL:LongWord = TOUCH_LOG_LEVEL_DEBUG;
|
Minimum level for Touch messages. Only messages with level greater than or equal to this will be printed. |
TOUCH_LOG_ENABLED:Boolean;
|
Function declarations
Initialization functions
Touch functions
[Expand]
function TouchDeviceStart(Touch:PTouchDevice):LongWord;
Description: Start the specified Touch device ready for receiving events
[Expand]
function TouchDeviceStop(Touch:PTouchDevice):LongWord;
Description: Stop the specified Touch device and terminate receiving events
[Expand]
function TouchDevicePeek(Touch:PTouchDevice):LongWord;
Description: Peek at the buffer of the specified touch device to see if any data packets are ready
[Expand]
function TouchDeviceRead(Touch:PTouchDevice; Buffer:Pointer; Size,Flags:LongWord; var Count:LongWord):LongWord;
Description: Read touch data packets from the buffer of the specified touch device
[Expand]
function TouchDeviceWrite(Touch:PTouchDevice; Buffer:Pointer; Size,Count:LongWord):LongWord;
Description: Write touch data packets to the buffer of the specified touch device
[Expand]
function TouchDeviceFlush(Touch:PTouchDevice):LongWord;
Description: Flush the contents of the buffer of the specified touch device
[Expand]
function TouchDeviceUpdate(Touch:PTouchDevice):LongWord;
Description: Request the specified touch device to update the current configuration
[Expand]
function TouchDeviceControl(Touch:PTouchDevice; Request:Integer; Argument1:LongWord; var Argument2:LongWord):LongWord;
Description: Perform a control request on the specified touch device
[Expand]
function TouchDeviceProperties(Touch:PTouchDevice; Properties:PTouchProperties):LongWord; inline;
Description: Get the properties for the specified Touch device
[Expand]
function TouchDeviceGetProperties(Touch:PTouchDevice;Properties:PTouchProperties):LongWord;
Description: Get the properties for the specified Touch device
[Expand]
function TouchDeviceCreateEx(Size:LongWord):PTouchDevice;
Description: Create a new Touch device entry
[Expand]
function TouchDeviceDestroy(Touch:PTouchDevice):LongWord;
Description: Destroy an existing Touch device entry
[Expand]
function TouchDeviceRegister(Touch:PTouchDevice):LongWord;
Description: Register a new Touch device in the Touch device table
[Expand]
function TouchDeviceDeregister(Touch:PTouchDevice):LongWord;
Description: Deregister an Touch device from the Touch device table
[Expand]
function TouchDeviceFind(TouchId:LongWord):PTouchDevice;
Description: Find a Touch device by ID in the Touch device table
[Expand]
function TouchDeviceFindByName(const Name:String):PTouchDevice; inline;
Description: Find a Touch device by name in the device table
[Expand]
function TouchDeviceFindByDescription(const Description:String):PTouchDevice; inline;
Description: Find a Touch device by description in the device table
[Expand]
function TouchDeviceEnumerate(Callback:TTouchEnumerate; Data:Pointer):LongWord;
Description: Enumerate all Touch devices in the Touch device table
[Expand]
function TouchDeviceNotification(Touch:PTouchDevice; Callback:TTouchNotification; Data:Pointer; Notification,Flags:LongWord):LongWord;
Description: Register a notification for Touch device changes
Touch helper functions
[Expand]
function TouchDeviceGetDefault:PTouchDevice; inline;
Description: Get the current default Touch device
[Expand]
function TouchDeviceSetDefault(Touch:PTouchDevice):LongWord;
Description: Set the current default Touch device
[Expand]
function TouchDeviceCheck(Touch:PTouchDevice):PTouchDevice;
Description: Check if the supplied Touch device is in the Touch device table
[Expand]
function TouchDeviceTypeToString(TouchType:LongWord):String;
Description: Return a string describing the Touch device type (eg TOUCH_TYPE_CAPACITIVE)
[Expand]
function TouchDeviceStateToString(TouchState:LongWord):String;
Description: Return a string describing the Touch device state (eg TOUCH_STATE_ENABLED)
[Expand]
function TouchDeviceRotationToString(Rotation:LongWord):String;
Description: Return a string describing the supplied touch rotation value
[Expand]
function TouchDeviceResolveRotation(ARotation:LongWord):LongWord;
Description: Resolve a value of 0, 90, 180 or 270 to a touch rotation constant (eg TOUCH_ROTATION_180)
[Expand]
function TouchInsertData(Touch:PTouchDevice; Data:PTouchData; Signal:Boolean):LongWord;
Description: Insert a TTouchData entry into the touch device buffer
[Expand]
procedure TouchLog(Level:LongWord; Touch:PTouchDevice; const AText:String);
Description: To be documented
[Expand]
procedure TouchLogInfo(Touch:PTouchDevice; const AText:String); inline;
Description: To be documented
[Expand]
procedure TouchLogWarn(Touch:PTouchDevice; const AText:String); inline;
Description: To be documented
[Expand]
procedure TouchLogError(Touch:PTouchDevice; const AText:String); inline;
Description: To be documented
[Expand]
procedure TouchLogDebug(Touch:PTouchDevice; const AText:String); inline;
Description: To be documented
Return to Unit Reference