Apéndice B

Kit de desarrollo del software Elo

Introducción

Elo SDK provee un API para programadores para la comunicación con los controladores Elo Serial y USB. La funcionalidad disponible para los programadores es la siguiente:

Get Raw and Calibrated Touch Points from the Touchscreen

Obtener datos táctiles del controlador. Estos datos pueden recuperarse en coordenadas Elo crudas o traducirse en formato de coordenadas de Windows. Para obtener datos use EloGetTouch. Esta llamada podría bloquear dependiendo de las banderas utilizadas para el tipo de datos esperados. Para cancelar la llamada de bloqueo use EloCancel

EloGetTouch

EloCancel

Cambiar modos operativos de la pantalla táctil

La pantalla táctil opera en los siguientes modos:

Clic al tocar: Clic al tocar inmediatamente envía un mensaje de ratón arriba/abajo al punto de contacto sobre la pantalla táctil. El dedo del usuario debe retirarse de la pantalla táctil antes de que un nuevo toque en otra ubicación sea reconocido. El cursor o los objetos seleccionados NO pueden ser "arrastrados" sobre la pantalla en esta modalidad.

Clic al liberar: Al momento de liberar (dejar de tocar), un mensaje de ratón abajo/arriba es enviado al punto donde la pantalla fue tocada por última vez. Arrastrar los objetos en la pantalla no los seleccionará a menos que ocurra la liberación cuando el contacto es justo sobre el objeto. (Arrastre y doble clic)

Emulación del ratón: envía un mensaje de ratón abajo al punto de contacto. Selecciona un objeto si fue el punto de contacto inicial. Arrastra el objeto seleccionado en la pantalla. Envía un mensaje de ratón arriba al punto de contacto. Doble clic sobre un objeto cuando la pantalla es tocada dos veces en sucesión en la misma ubicación.

Estos son los mismos modos táctiles del Panel de Control Elo. Usted puede obtener o cambiar el modo de operación, utilizando las llamadas a continuación:

EloGetMouseMode

EloSetMouseMode

Configurar la demora del arrastre

Dragdelay permite la funcionalidad de arrastre para la pantalla táctil. La pantalla táctil debe ser calibrada antes de usar esta funcionalidad. Este valor puede ser recuperado o modificado usando:

EloGetDragDelay

EloSetDragDelay

Habilitar/deshabilitar la funcionalidad táctil

La pantalla táctil puede ser habilitada para reportar datos táctiles al sistema de Windows o deshabilitada para no reportar tales datos.

EloGetTouchState

EloSetTouchState

Configurar sonido durante los toques

Cada toque completo es indicado por un pitido proveniente del sistema. La pantalla táctil debe ser calibrada antes de usar esta funcionalidad. La frecuencia y el tiempo y el pitido son configurables.

EloGetBeep

EloSetBeep

Guardar la alineación para la pantalla táctil usando la calibración API

Elo provee una utilidad de calibración estándar para la alineación del video. La CALIBRACIÓN se utiliza para convertir toques del sistema de coordenadas Elo al sistema de coordenadas virtuales de Windows.

El controlador utiliza la siguiente ecuación para convertir un punto de coordenada de toque crudo desde el sistema de coordenadas Elo al sistema de coordenadas de pantalla de Windows.

Calibration equation is

Xcal = a + m*Xuncal,

where,

Xuncal, is in Elo coordinate system

Xcal, is in Windows coordinate system

m = nScrDx / nEloDx

"a", is the X offset value entry

nScrDx = distance between targets in Windows virtual coordinates

nEloDx = distance between targets in Elo coordinates.

Esto es especialmente útil si desea guardar la calibración en la red o en algún otro lugar, y configurar luego la pantalla táctil usando un juego de datos común.

Para obtener los datos de calibración actuales del controlador, utilice EloGetCalibrationData.Para cambiar los datos de calibración, utilice EloSetCalibrationData.

EloGetCalibrationData

EloSetCalibrationData

Definir el límite de la pantalla táctil

Los límites de la pantalla táctil definen el rectángulo contenedor para la pantalla táctil en el escritorio virtual de Windows. Esto permite/prohíbe que los toques en un monitor se propaguen al monitor correspondiente. La pantalla táctil debe calibrarse antes de usar esta funcionalidad.

EloGetTouchBoundary

EloSetTouchBoundary

Intercambiar botones de la pantalla táctil

Utilice esta llamada para usar la pantalla táctil con los botones intercambiados para los siguientes toques en la pantalla.

Intercambia los botones para el monitor táctil para el conteo de toques especificado. Una vez que el conteo es agotado, el SDK notifica a la aplicación enviando un mensaje WM_SWAPBUTTON a la ventana de la aplicación. La pantalla táctil debe configurarse antes de usar esta funcionalidad.

EloSwapButton

Configurar la pantalla táctil para usuarios zurdos

Para usuarios zurdos del ratón, configure el modo de pantalla táctil usando EloSetLeftHandedMouse call.

EloSetLeftHandedMouse

Recuperar datos de diagnóstico de la pantalla táctil

La información de diagnóstico de la pantalla táctil puede recuperarse usando EloGetDiagnosticsData.

Esta información también se visualiza en el Panel de Control>pestaña de Propiedades de Elo.

EloGetDiagnosticData

Configurar la pantalla táctil para modo específico de juegos habilitando el modo de toque rápido

Toque rápido es un modo mejorado para la pantalla táctil, normalmente utilizado para los juegos.

En operación estándar, los toques en pantalla siguiéndose el uno al otro muy rápidamente en modo de "Emulación del Ratón" crean un cuadro de arrastre del sistema.

Esta función permite que los toques que se siguen los unos a los otros muy rápidamente sean interpretados como toques independiente que resultan en clics separados del ratón.

La pantalla táctil debe calibrarse antes de usar esta funcionalidad.

EloGetQuickTouch

EloSetQuickTouch

Configurar la función de aceleración hacia el borde

Tocar hacia el borde de la pantalla táctil puede a veces ser difícil. Esta función permite que el cursor sea acelerado hacia los bordes de la pantalla.

La pantalla táctil debe calibrarse antes de usar esta funcionalidad.

EloGetAcceleration

EloSetAcceleration

Definir la pantalla táctil para que se desconecte automáticamente después de un toque constante en la mismo ubicación usando la función de tiempo de desconexión por falta de toque

Si se crean toques en la misma constante ubicación, se genera automáticamente una falta de toque por el controlador sobre la base de este tiempo de desconexión.

Esta es una función muy útil en caso de suciedad en la pantalla.

La pantalla táctil debe calibrarse antes de usar esta funcionalidad.

EloGetUntouchTimeout

EloSetUntouchTimeout

Configurara la funcionalidad de clic derecho en espera

Esta función permite que la pantalla táctil genere clics derechos. Un clic derecho es generado cuando el usuario continúa tocando la pantalla. La pantalla táctil debe calibrarse antes de usar esta funcionalidad. Se puede configurar usando:

EloGetRightClickOnHold

EloSetRightClickOnHold

EloPubIf.lib provee el SDK para comunicar con los controladores Elo Serial y USB. Para poder comunicar con cualquiera de los controladores, agregue esta biblioteca a la lista de dependencias en el tiempo de compilación de su aplicación y use las llamadas de función de la interfaz apropiadas en su programa. Incluya el archivo de encabezado, EloInterface.h y EloErrorCodes.h en su aplicación.

Estos archivos se pueden encontrar en la carpeta Program Files\EloTouchsystems.

Por favor, refiérase al Apéndice C, Código de Muestra EnableDisable para uso con la interfaz.

Funciones de Interfaz del Dispositivo Elo

Function Name: EloGetScreenInfo

int EloGetScreenInfo(DWORD dwMonNum[32], int iScrCnt)

Parameters:
dwMonNum [in]: Array of DWORD to receive the Windows monitor number associated with the touchscreens.

iScrCnt [out]: It retrieves the total number of Elo touchscreens found.

Return Values: Returns EloSuccess if the call succeeds, it returns an error code otherwise. See Error Codes section for list of error values.

Comentarios:

Devuelve la lista de números de monitor de Windows asociados con las pantallas táctiles donde el índice es el número del monitor táctil y el valor es el número del monitor de Windows.

Las pantallas táctiles se basan en 0 y los números de monitores de Windows se basan en 1.

Si una pantalla táctil no está calibrada, el monitor de Windows devuelto es -1.

Soporta un máximo de 32 pantallas táctiles.

Requerimientos
Incluidos en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluyen EloInterface.h.

Biblioteca: Usar EloPubIf.lib.

Ver también Sample y Error Codes

Function Name: EloGetTouch

int EloGetTouch (PTOUCH_POINT xy, BOOL xlated, GETPOINTS_CODE getCode, UINT nScrNo)

Parameters:
xy [out]: Pointer to TOUCH_POINT structure to receive the touch coordinates from the touchscreen. The application is responsible for allocating / freeing memory. Please see structure definition section for TOUCH_POINT.

xlated [in]: If TRUE, the coordinates are returned translated for Windows coordinate system. If FALSE, raw coordinate data are returned.

getCode [in]: This can be one of the following values: ReturnImmediately, ReturnOnTouch, ReturnOnUntouch, ReturnOnNextValidTouch. Please see definition for GETPOINTS_CODE.

nScrNo [in/out]: This must be initialized to the zero based touchscreen number. Returns the zero based touchscreen number for the touchscreen touched.

Return Values: Returns EloSuccess if the call succeeds, it returns an error code otherwise. See Error Codes section for list of error values.

Comentarios:

A menos que se utilice el valor GetCode, esta llamada no regresará hasta que el usuario toque la pantalla especificada.

Para cancelar la espera bloqueada, use la función EloCancel.

Requerimientos:
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluye EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también EloCancel, EloGetScreenInfo, Sample y Error Codes

Function Name: EloCancel

int EloCancel()

Parámetros:
Ninguno.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver Error Codes para una lista de valores de error.

Comentarios:
Cancela cualquier solicitud pendiente con el controlador.

Requerimientos:
Incluido en la Versión 4.20 y posteriores.
Header: Declared in EloInterface.h; include EloInterface.h.
Library: Use EloPubIf.lib.

Ver también EloGetTouch,EloGetScreenInfo, Sample y Error Codes

Function Name: EloGetMouseMode

int EloGetMouseMode (WORD *wMode,UINT nScrNo)

Parámetros:
wMode [out]: Returns the touchscreen mode. Please see Constant definition section for TOUCHSCREEN_MODE.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Recupera el modo táctil para la pantalla táctil especificada.

Requerimientos:
Included in Version 4.20 and later.
Header: Declared in EloInterface.h; include EloInterface.h.
Library: Use EloPubIf.lib.

Ver también
EloSetMouseMode, EloGetScreenInfo, Sample y
Error Codes

Function Name: EloSetMouseMode

int EloSetMouseMode (WORD wMode,UINT nScrNo)

Parámetros:
wMode [in]: Touchscreen mode. Please see Constant definition section for TOUCHSCREEN_MODE.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Requerimientos:
Included in Version 4.20 and later.
Header: Declared in EloInterface.h; include EloInterface.h.
Library: Use EloPubIf.lib.

Ver también EloGetMouseMode, EloGetScreenInfo, Sample y Error Codes

Function Name: EloGetTouchReportingState

int EloGetTouchReportingState (BOOL *bFlag , UINT nScrNo)

Parámetros:
bFlag [out]: Touch state enabled / disabled. If TRUE, touch data is reported. If FALSE, touch data is not reported.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Obtiene el estado táctil para la pantalla táctil especificada. Lo guarda en bFlag.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también EloSetTouchReportingState, EloGetScreenInfo, Sample y Error Codes

Function Name: EloSetTouchReportingState

int EloSetTouchReportingState (BOOL bFlag, int nScrNo)

Parámetros:
bFlag [in]: Touch state enabled / disabled. If TRUE, touch data is reported. If FALSE, touch data is not reported.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Habilita o deshabilita el toque dependiendo del bFlag.

Requerimientos:
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también EloGetTouchReportingState, EloGetScreenInfo, Sample y Error Codes

Function Name: EloGetDragDelay

int EloGetDragDelay (PDRAG_DELAY pDragDelay,UINT nScrNo)

Parámetros:
pDragDelay [out]: Pointer to DRAG_DELAY to receive Drag Delay . Please see structure definition section for PDRAG_DELAY.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Obtiene los parámetros de dragdelay para la pantalla táctil especificada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también EloSetDragDelay, EloGetScreenInfo, Sample y Error Codes

Function Name: EloSetDragDelay

int EloSetDragDelay (PDRAG_DELAY pDragDelay, UINT nScrNo)

Parámetros:
pDragDelay [in]: Dragdelay data. Please see structure definition section for DRAG_DELAY.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Configura la demora en el arrastre para la pantalla táctil especificada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también EloGetDragDelay, EloGetScreenInfo, Sample y Error Codes

Function Name: EloGetBeep

int EloGetBeep (PBEEP pBeepVal, UINT nScrNo)

Parámetros:
pBeepVal [out]: Pointer to BEEP structure to receive data. Please see structure definition section for BEEP.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Obtiene los datos de pitido de la pantalla táctil para la pantalla táctil especificada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también EloSetBeep, EloGetScreenInfo, Sample y Error Codes

Function Name: EloSetBeep

int EloSetBeep (PBEEP pBeepVal, UINT nScrNo)

Parámetros:
pBeepVal [in]: Pointer to sound structure to receive data. Please see structure definition section for BEEP definition.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Sets the touchscreen beep data for the specified touchscreen.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también EloGetBeep, EloGetScreenInfo, Sample y Error Codes

Function Name: EloGetTouchBoundary

int EloGetTouchBoundary(PTOUCH_BOUNDARY ptBndry , UINT nScrNo)

Parámetros:
ptBndry [out]: Pointer to TOUCH_BOUNDARY structure containing full screen boundary data in pixels. Please see structure definition section for TOUCH_BOUNDARY.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Obtiene el rectángulo contenedor de pantalla completa y el modo contenedor para la pantalla táctil especificada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también EloSetTouchBoundary, EloGetScreenInfo, Sample y Error Codes

Function Name: EloSetTouchBoundary

int EloSetTouchBoundary(PTOUCH_BOUNDARY ptBndry, UINT nScrNo)

Parámetros:
ptBndry [in]: Pointer to TOUCH_BOUNDARY structure containing full screen boundary data in pixels. Please see structure definition section for TOUCH_BOUNDARY.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Configura el rectángulo contenedor de la pantalla completa y el modo contenedor para la pantalla táctil especificada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también EloGetTouchBoundary, EloGetScreenInfo, Sample y Error Codes

Function Name: EloGetCalibrationData

int EloGetCalibrationData (PCALIBRATION pCalData, UINT nScrNo)

Parámetros:
pCalData [out]: Pointer to CALIBRATION structure to receive the calibration data. Please see structure definition section for CALIBRATION.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Recupera los datos de calibración para la pantalla táctil especificada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también EloSetCalibrationData, EloGetScreenInfo, Sample y Error Codes

Function Name: EloSetCalibrationData

int EloSetCalibrationData (CALIBRATION *pCalData,UINT nScrNo)

Parámetros:
pCalData [in]: Pointer to CALIBRATION structure which stores the calibration data for the touchscreen. Please see structure definition section for CALIBRATION.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Configura los datos de calibración para la pantalla táctil especificada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también EloGetCalibrationData, EloGetScreenInfo, Sample y Error Codes

Function Name: EloSwapButton

int EloSwapButton (HWND hWnd, DWORD dwCnt, UINT nScrNo)

Parámetros:
hWnd [in]: Handle to window to receive the WM_ELOSWAPBUTTON message. if NULL, there is no message.

dwCnt [in]: Touch count for which the button should be swapped.

nScrNo [in]: 0 based touchscreen number.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Swaps the button for the touch monitor for the touch count specified in dwCnt. Once the count is exhausted the DLL notifies the application, by sending a WM_ELOSWAPBUTTON message to the application window specified in hWnd.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también: EloGetScreenInfo, Sample y Error Codes

Function Name: EloSetLeftHandedMouse

int EloSetLeftHandedMouse (BOOL bFlag)

Parámetros:
bFlag [in]: If TRUE it sets touchscreen mode to left-handed mouse.

Valores devueltos: devuelve EloSuccess si la llamada es exitosa, devuelve un código de error en cualquier otro caso. Ver la sección Error Codes par una lista de valores del error.

Comentarios:
Sets the touchscreen mode to left-handed mouse. This does not affect the Windows left-handed mouse settings.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también: EloGetScreenInfo, Sample y Error Codes

Function Name: EloGetDiagnosticsData

int EloGetDiagnosticsData(PSCREEN_PROPERTIES pData, UINT nScrNo)

Parameters:
pData [in]: Pointer to SCREEN_PROPERTIES structure to receive the diagnostics for the touchscreen. Please see structure definition section for SCREEN_PROPERTIES.
nScrNo [in]: 0 based touchscreen number.Return Values: Returns EloSucces if the call succeeds, it returns an error code otherwise. See Error Codes section for list of error values.

Comentarios:
Obtiene los diagnósticos para la pantalla táctil especificada. La información también se visualiza en Panel de Control>pestaña de Propiedades de Elo.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también: EloGetScreenInfo, Sample y Error Codes

Function Name: EloGetQuickTouch

int EloGetQuickTouch (PQUICK_TOUCH pQTouch, UINT nScrNo)

Parameters:
pQTouch [out]: Pointer to QUICK_TOUCH structure to receive the quick touch configuration data from the selected touchscreen. Please see structure definition section for QUICK_TOUCH.

nScrNo [in]: 0 based touchscreen number.

Return Values: Returns EloSucces if the call succeeds, it returns an error code otherwise. See Error Codes section for list of error values.

Comentarios:
Obtiene los parámetros de configuración de Toque Rápido para la pantalla táctil especificada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también: EloSetQuickTouch EloGetScreenInfo, Sample y Error Codes

Function Name: EloSetQuickTouch

int EloSetQuickTouch (PQUICK_TOUCH pQTouch, UINT nScrNo)

Parameters:
pQTouch [in]: Pointer to QUICK_TOUCH structure containing the quick touch configuration data for the touchscreen. Please see structure definition section for QUICK_TOUCH.

nScrNo [in]: 0 based touchscreen number.

Return Values: Returns EloSuccess if the call succeeds, it returns an error code otherwise. See Error Codes section for list of error values.

Comentarios:
Establece los parámetros de configuración de Toque Rápido para todas la pantallas táctiles.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también: EloGetQuickTouch, EloGetScreenInfo, Sample y Error Codes

Function Name: EloGetEdgeAccel

int EloGetEdgeAccel(PEDGE_ACCEL pAccel, UINT nScrNo)

Parameters:
pAccel [out]: Pointer to EDGE_ACCEL structure to receive the edge accleration data for the touchscreen. Please see structure definition section for EDGE_ACCEL.

nScrNo [in]: 0 based touchscreen number.

Return Values: Returns EloSuccess if the call succeeds, it returns an error code otherwise. See Error Codes section for list of error values.

Comentarios:
Obtiene los límites de aceleración hacia los bordes y el valor de aceleración para la pantalla táctil dada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.


Ver también: EloSetEdgeAccel, EloGetScreenInfo, Sample y Error Codes


Function Name: EloSetEdgeAccel

int EloSetEdgeAccel(PEDGE_ACCEL pAccel, UINT nScrNo)

Parameters:
pAccel [in]: Pointer to EDGE_ACCEL structure to containing the edge accleration data for the touchscreen. Please see structure definition section for EDGE_ACCEL.

nScrNo [in]: 0 based touchscreen number.

Return Values: Returns EloSuccess if the call succeeds, it returns an error code otherwise. See Error Codes section for list of error values.

Comentarios:
Obtiene los límites de aceleración hacia los bordes y la escala de aceleración para la pantalla táctil dada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también: EloGetEdgeAccel, EloGetScreenInfo, Sample y Error Codes

Function Name: EloGetUntouchTimeout

int EloGetUntouchTimeout(PUNTOUCH_TIMEOUT pUTimeout, UINT nScrNo)

Parameters:
pUTimeout [out]: Pointer to UNTOUCH_TIMEOUT structure to receive the untouch timeout data for the touchscreen. Please see structure definition section for UNTOUCH_TIMEOUT.

nScrNo [in]: 0 based touchscreen number.

Return Values: Returns EloSuccess if the call succeeds, it returns an error code otherwise. See
Error Codes section for list of error values.

Comentarios:
Obtiene el tiempo de desconexión por falta de toque para la pantalla táctil dada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también: EloSetUntouchTimeout, EloGetScreenInfo, Sample y Error Codes

Function Name: EloSetUntouchTimeout

int EloSetUntouchTimeout(PUNTOUCH_TIMEOUT pUTimeout, UINT nScrNo)

Parameters:
pUTimeout [in]: Pointer to UNTOUCH_TIMEOUT structure to containing the untouch timeout data for the touchscreen. Please see structure definition section for UNTOUCH_TIMEOUT.

nScrNo [in]: 0 based touchscreen number.

Return Values: Returns EloSuccess if the call succeeds, it returns an error code otherwise. See
Error Codes section for list of error values.

Comentarios:
Establece el tiempo de desconexión por falta de toque para la pantalla táctil dada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también: EloGetUntouchTimeout, EloGetScreenInfo, Sample y Error Codes
.

Function Name: EloGetRightClickOnHold

int EloGetRightClickOnHold(PRIGHT_BUTTON pRBHold, UINT nScrNo)

Parameters:
pRBHold [out]: Pointer to RIGHT_BUTTON structure to receive the right button on hold data for the touchscreen. The application is responsible for allocating / freeing memory. Please see structure definition section for RIGHT_BUTTON.

nScrNo [in]: 0 based touchscreen number.

Return Values: Returns EloSuccess if the call succeeds, it returns an error code otherwise. See
Error Codes section for list of error values.

Comentarios:
Obtiene los datos de botón de derecho en espera para la pantalla táctil dada.

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también: EloSetRightClickOnHold, EloGetScreenInfo, Sample y Error Codes.

Function Name: EloSetRightClickOnHold

int EloSetRightClickOnHold(PRIGHT_BUTTON pRBHold, UINT nScrNo)

Parameters:
pRBHold [in]: Pointer to RIGHT_BUTTON structure to containing the right button on hold data for the touchscreen. Please see structure definition section for RIGHT_BUTTON.

nScrNo [in]: 0 based touchscreen number.

Return Values: Returns EloSuccess if the call succeeds, it returns an error code otherwise. See
Error Codes section for list of error values.

Comentarios:
Establece los datos de botón de derecho en espera para la pantalla táctil dada

Requerimientos
Incluido en la Versión 4.20 y posteriores.
Encabezado: Declarado en EloInterface.h; incluido en EloInterface.h.
Biblioteca: Usar EloPubIf.lib.

Ver también: EloGetRightClickOnHold, EloGetScreenInfo, Sample y Error Codes.

Interface Data Structures

Structure Name: SCREEN_PROPERTIES

The SCREEN_PROPERTIES structure contains the diagnostics data for the touchscreen.
typedef struct _SCREEN_PROPERTIES
{

int iWindowsMonNo ;
ULONG Type;
char Port[256];
char SerialNumber[18];
DWORD HardwareHandshaking ;
CONTRL_STAT ctrl_status;
LONG BaudRate;
char crevminor;
char crevmajor;
char trevminor;
char trevmajor;
char diagcodes[8];
char id[8];
char cnt_id[8];
char driver_id[32];

}SCREEN_PROPERTIES, *LPSCREEN_PROPERTIES ;

Members

iWindowsMonNo: Windows monitor number associated with the touchscreen.

Type: Defines the type of touchscreen. Expected values are

USB: 0x01
PNP_SERIAL: 0x02
NT_SERIAL: 0x04
LEGACY_SERIAL: 0x08
RESERVED: 0xFF

Port:The serial port on which this serial touchscreen device is connected. This is blank for USB.

SerialNumber: Serial number for connected touchscreen. Serial numbers uniquely identify a touchscreen.

HardwareHandshaking: This is used only for serial touchscreens. If it is set to 1 hardware handshaking is turned on else if it is set to 0 it is turned off.

ctrl_status: Controller status returned at the time of diagnostics. Please see constants definition for CONTRL_STAT.

BaudRate: This specifies the baud rate for the serial port, valid only for serial touchscreens.

crevminor: Minor revision of controller.

crevmajor: Major revision of controller.

trevminor: Unused.

trevmajor: Unused.

diagcodes: The response received for the diagnostics smartest command sent to the controller.

id: Elo OEM identification returned from the controller.

cnt_id: Contains the response to controller id smartest command to the controller.

driver_id: Driver identification / version string.

Structure Name: TOUCH_POINT

The TOUCH_POINT structure defines a touch coordinate.
typedef struct TOUCH_POINT
{

LONG x;

LONG y;

LONG z;

GETPOINTS_STATUS Status ;

}TOUCH_POINT, *PTOUCH_POINT ;

Members
x: x co-ordinate for touch.

y: y co-ordinate for touch.

z: z co-ordinate for touch.

Status: Receives the touch status. Please see constants definition for GETPOINTS_STATUS.

Structure Name: CALIBRACIÓN

La estructura de CALIBRACIÓN define los datos de calibración utilizados para convertir toques desde el sistema de coordenadas Elo al sistema de coordenadas virtuales de Windows.

El controlador utiliza la siguiente ecuación para convertir el punto de la coordenada del toque crudo desde el sistema de coordenadas Elo al sistema de coordenadas de pantalla de Windows.
Calibration equation is

Xcal = a + m*Xuncal,

where,
Xuncal, is in Elo coordinate system
Xcal, is in Windows coordinate system
m = nScrDx / nEloDx
"a", is the X offset value entry
nScrDx = distance between targets in Windows virtual coordinates
nEloDx = distance between targets in Elo coordinates.

typedef struct _Calibration
{

LONG VDeskMode ;
LONG nScrDx ;
LONG nEloDx ;
LONG nOffsetX ;
LONG nScrDy ;
LONG nEloDy ;
LONG nOffsetY ;
LONG xyswap;
LONG MonitorNumber ;
RegistryOperation CalMode ;
LONG xRes ;
LONG yRes ;
LONG xVirtScrSize ;
LONG yVirtScrSize ;
LONG xVirtScrCoord ;
LONG yVirtScrCoord ;
LONG xMonLocn ;
LONG yMonLocn ;

} CALIBRATION, *PCALIBRATION

Members
VDeskMode: Reserved.

nScrDx:
nEloDx:
nOffsetX:
nScrDy:
nEloDy:
nOffsetY:
Data required by calibration. Use the equation above to calculate these values.

xyswap: Specifies if the touchscreen is rotated 90 degrees or 270 degrees. Set to 1 if touchscreen is rotated 90 degrees or 270 degrees else set to 0.

MonitorNumber: Windows monitor numbers are 1 based.

CalMode: Set to TempWrite if the value does not have to be saved over system reboot. For values to be saved over system reboot set this value to Write. Please see constants definition for RegistryOperation.

xRes: Screen width in pixels.

yRes: Screen height in pixels.

xMonLocn: Monitor location (X) for this monitor on the virtual desktop in pixels.

yMonLocn: Monitor location (Y) for this monitor on the virtual desktop in pixels.

xVirtScrSize: Width in pixels of the windows virtual screen.

yVirtScrSize: Height in pixels of the windows virtual screen.

xVirtScrCoord: Top left X coordinate of the Windows virtual screen.

yVirtScrCoord: Top left Y coordinate of the Windows virtual screen.

Structure Name: DRAG_DELAY

The DRAG_DELAY structure is used to get or set drag delay.
typedef struct _Drag_Delay{
DWORD MinDragDelay ;
DWORD MaxDragDelay ;
DWORD DragDelay ;
} DRAG_DELAY, *PDRAG_DELAY ;

Members
MinDragDelay:
MaxDragDelay:
Reserved.

DragDelay: Drag delay value in milliseconds.


Structure Name: BEEP


The BEEP structure is used to get or set beep parameter data.
typedef struct _Beep{
BOOL BeepFlag;
DWORD BeepFreq ;
DWORD BeepTime ;
} SOUND, *PBEEP ;

Members
BeepFlag: If TRUE touchscreen beeps on touch.

BeepFreq: Frequency of beep in Hz.

BeepTime: Duration of beep in milliseconds.

Structure Name: TOUCH_BOUNDARY

The TOUCH_BOUNDARY structure defines the full screen bounding rectangle and bounding mode for the touchscreen.
typedef struct _Touch_Boundry
{
ClippingBounds Bounds;
LONG ClippingMode;
} TOUCH_BOUNDARY, *PTOUCH_BOUNDARY ;

Miembros
Límites: Define el rectángulo contenedor de toques para la pantalla. Ver la estructura de ClippingBounds. Para interpretación de estos límites, ver ClippingMode a continuación.

ClippingMode: Define el modo para los límites de la pantalla táctil en el escritorio virtual. Los valores posibles son los siguientes:
0: Deshabilita el escritorio virtual. Los toques en todas las pantallas se reflejarán en el monitor principal.
1: Habilitar el escritorio virtual. En este modo, no se utilizan los límites de ninguna pantalla individual para el monitor. Los toques hacia los bordes podrían generar clics en monitores adyacentes.
2: Habilita el escritorio virtual. Los límites de las pantallas están habilitados para cada monitor. Los toques en la pantalla siempre generarán clics en el monitor asociado. Un toque fuera del rectángulo contenedor ocasionará que el cursor se mueva a un punto a lo largo del límite que está más cercano al punto de contacto.
3: Habilitar el escritorio virtual. Los límites de la pantalla son habilitados para cada monitor. Los toques en la pantalla siempre generarán clics en el monitor asociado. Toques fuera del rectángulo contenedor no son enviados al sistema.

Structure Name: QUICK_TOUCH

The QUICK_TOUCH data structure defines the Quick touch configuration parameters.
typedef struct _Quick_Touch
{
DWORD bEnable ;
ULONG Dx ;
ULONG Dy ;
} QUICK_TOUCH, *PQUICK_TOUCH;

Members
bEnable: 0 disables quick touch , 1 enables it.

Dx: X distance in pixels. Touches outside this distance will generate quick touches.

Dy: Y distance in pixels. Touches outside this distance will generate quick touches.

Structure Name: ClippingBounds

The ClippingBounds structure is used to define the bounding rectangle.
typedef struct _ClippingBounds{
ULONG X_Max;
ULONG X_Min;
ULONG Y_Max;
ULONG Y_Min;;
ULONG Z_Max ;
ULONG Z_Min ;
} ClippingBounds, *PClippingBounds ;

Members
X_Min:
Specifies the X coordinate of the upper-left corner of the rectangle in pixels.

Y_Min:
Specifies the Y coordinate of the upper-left corner of the rectangle in pixels.

X_Max:
Specifies the X coordinate of the lower-right corner of the rectangle in pixels.

Y_Max:
Specifies the Y coordinate of the lower-right corner of the rectangle in pixels.

Z_Max:
Z_Min:
Reserved.

Structure Name: EDGE_ACCEL

The EDGE_ACCEL structure is used to define the bounding rectangle.
typedef struct _ Accel{
ULONG Enable ;
ULONG Scale ;
ClippingBounds Bounds[1] ;
} EDGE_ACCEL, *PEDGE_ACCEL ;

Members
Enable: 0 disables acceleration, 1 enables it.

Scale: Acceleration scale be anywhere in the range of 0-100. 10 indicates no acceleration.

Bounds: Defines the edge of the touchscreen acceleration bounds. See structure ClippingBounds.


Structure Name: RIGHT_BUTTON


The RIGH_BUTTON structure is used to define the right click on hold feature.
typedef struct _ Right_Button{
DWORD RightClickHW ;
style='color:black;text-decoration: none;text-underline:none'>DWORD InitialTimeout ;
style='color:windowtext; text-decoration:none;text-underline:none'>DWORD DefaultRightClickDelay ;
DWORD MaxRightClickDelay ;
<DWORD MinRightClickDelay ;
ULONG ClickCount;
ULONG Active ;

} RIGHT_BUTTON, *PRIGHT_BUTTON;

Members
RightClickHW: Height and width in pixels defining the area in which right click is valid.

InitialTimeout: The initial timeout after which the cursor changes to the right click cursor.

DefaultRightClickDelay: Right click delay value in milliseconds.

MinRightClickDelay:
MaxRightClickDelay:
Reserved.

ClickCount: Touch count for which the right click on hold feature should be active. A value of 0xffffffff keeps it active for ever. A value of 0 turns it off.

Active: Value of 1 keeps right click on hold active on reboot. Value of 0 turns it off on reboot. This works in combination with ClickCount. To keep it turned on after reboot value for Active should be set to 1 and value for ClickCount should be set to 0xffffffff.

Structure Name: UNTOUCH_TIMEOUT

The UNTOUCH_TIMEOUT structure is used to define the untouch timeout.
typedef struct _UNTOUCH_TIMEOUT{
ULONG Timeout ;
ULONG Width ;
ULONG Height ;
} UNTOUCH_TIMEOUT, *PUNTOUCH_TIMEOUT ;

Members
Timeout: Untouch timeout value in milliseconds.

Width: Specifies the width in pixels for the screen area within which a constant touch will automatically result in untouch after the Timeout occurs.

Height: Specifies the height in pixels for the screen area within which a constant touch will automatically result in untouch after the Timeout occurs.

Constants: GETPOINTS_CODE

The blocked call returns data depending on this value.
typedef enum _GETPOINTS_CODE
{
ReturnImmediately=1,
ReturnOnTouch,
ReturnOnUntouch,
ReturnOnNextValidTouch
}GETPOINTS_CODE ;

Values
ReturnImmediately: Returns immediately with the last touch data values. Does not wait for a user to touch the screen.

ReturnOnTouch: Waits for user to touch and then returns data.

ReturnOnUntouch: Waits for user to release touch and then returns data.

ReturnOnNextValidTouch: Waits for the user to touch the screen and returns on the next initial touch, stream touch or untouch event.

Constants: CONTRL_STAT


Controller status is returned as
typedef enum _CONTRL_STAT
{
CS_OK = 0,
CS_ConstantTouch,
CS_CanNotFindController,
CS_NoResponse,
CS_InvalidResponse,
CS_CanNotSetBaudRate,
CS_CommandNotSent,
CS_SystemError,
CS_InvalidCommPort,
CS_CommPortFailedOpen,
CS_CommPortCommandError,
CS_CommPortNoController,
CS_UndefinedController
} CONTRL_STAT;

Values
CS_OK: Everything works fine.

CS_ConstantTouch: There is constant touch detected on the touchscreen.

CS_CanNotFindController: No controller found.

CS_NoResponse: No response from controller.

CS_InvalidResponse: Incorrect response, maybe due to out of sync.

CS_CanNotSetBaudRate: Baud rate cannot be set.

CS_CommandNotSent: Smartset command could not be sent to the controller.

CS_SystemError: System Error.

CS_InvalidCommPort: No touchscreen connected on the serial port specified.

CS_CommPortFailedOpen: Error opening serial port.

CS_CommPortCommandError: Communications error.

CS_CommPortNoController: No controller.

CS_UndefinedController: Unidentified controller.

Constants: RegistryOperation

Driver writes the values to the registry if Write flag is set else it initializes the local buffer and does not save it to the registry.
typedef enum
{
TempWrite=1,
Write
}RegistryOperation;

Values
TempWrite: Writes data to local buffer. Does not write it to the registry.

Write: Writes data to local buffer and registry.

Constants: TOUCHSCREEN_MODE

Valid TOUCHSCREEN_MODE for the touchscreen.

#define CLICK_ON_TOUCH
#define CLICK_ON_RELEASE
#define MOUSE_EMULATION

Valores

CLICK_ON_TOUCH: Clic al tocar inmediatamente envía un mensaje de ratón arriba/abajo al punto de contacto sobre la pantalla táctil. El dedo del usuario debe retirarse de la pantalla táctil antes de que un nuevo toque en otra ubicación sea reconocido. El cursor o los objetos seleccionados NO pueden ser "arrastrados" sobre la pantalla en esta modalidad.

CLICK_ON_RELEASE: Clic al liberar al (dejar de tocar) envía un mensaje de ratón abajo/arriba al punto donde la pantalla fue tocada por última vez. Arrastrar los objetos en la pantalla no los seleccionará a menos que ocurra la liberación cuando el contacto es justo sobre el objeto. (Arrastre y doble clic)

MOUSE_EMULATION: Envía un mensaje de ratón abajo al punto de contacto. Selecciona un objeto si fue el punto de contacto inicial. Arrastra el objeto seleccionado en la pantalla. Envía un mensaje de ratón arriba al punto de contacto. Doble clic sobre un objeto cuando la pantalla es tocada dos veces en sucesión en la misma ubicación.


Constants: GETPOINTS_STATUS

Valid mode for the touchscreen.

typedef enum _GETPOINTS_STATUS
InitialTouch =
StreamTouch=
UnTouch =
GETPOINTS_STATUS;

Valores

InitialTouch: The touch data was returned on initial touch.

StreamTouch: The touch data was returned on stream touch.

UnTouch: The touch data was returned on untouch.


Error Codes: Returned from the Interface DLL

#define EloSuccess
#define EloFailure
#define EloErrorInIoctl
#define EloErrorCallWasCancelled
#define EloErrorInvalidTouchScreen
#define EloErrorInvalidMonitorNo
#define EloErrorInvalidBuffer
#define EloErrorInvalidHandle
#define EloErrorNoDriver
#define EloErrorInvalidCommand
#define EloErrorVersionLock
#define EloErrorBufferSize
#define EloErrorTouchDeviceNotWorking
#define EloErrorTouchScreenNumberInvalid
#define EloErrorNoMoreTouchScreens
#define EloErrorInvalidScreenNumber
#define EloErrorUnknown
#define EloErrorNotImplemented
#define EloErrorDeviceBusy
#define EloErrorIncompatibleVersion



Página Principal Volver a comienzo