VirtualBox

Changeset 95271 in vbox for trunk/include/VBox/vmm


Ignore:
Timestamp:
Jun 14, 2022 9:52:49 AM (3 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
151852
Message:

Touchpad: First part of touchpad support, PDM interface and device emulation (see bugref:9891).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/pdmifs.h

    r93115 r95271  
    330330                                              uint32_t fButtons));
    331331    /**
    332      * Puts a multi-touch event.
     332     * Puts a multi-touch absolute (touchscreen) event.
    333333     *
    334334     * @returns VBox status code. Return VERR_TRY_AGAIN if you cannot process the
     
    350350     *                              time between event is important.
    351351     */
    352     DECLR3CALLBACKMEMBER(int, pfnPutEventMultiTouch,(PPDMIMOUSEPORT pInterface,
    353                                                      uint8_t cContacts,
    354                                                      const uint64_t *pau64Contacts,
    355                                                      uint32_t u32ScanTime));
     352    DECLR3CALLBACKMEMBER(int, pfnPutEventTouchScreen,(PPDMIMOUSEPORT pInterface,
     353                                                      uint8_t cContacts,
     354                                                      const uint64_t *pau64Contacts,
     355                                                      uint32_t u32ScanTime));
     356
     357    /**
     358     * Puts a multi-touch relative (touchpad) event.
     359     *
     360     * @returns VBox status code. Return VERR_TRY_AGAIN if you cannot process the
     361     *          event now and want it to be repeated at a later point.
     362     *
     363     * @param   pInterface          Pointer to this interface structure.
     364     * @param   cContacts           How many touch contacts in this event.
     365     * @param   pau64Contacts       Pointer to array of packed contact information.
     366     *                              Each 64bit element contains:
     367     *                              Bits 0..15:  Normalized X coordinate (range: 0 - 0xffff).
     368     *                              Bits 16..31: Normalized Y coordinate (range: 0 - 0xffff).
     369     *                              Bits 32..39: contact identifier.
     370     *                              Bit 40:      "in contact" flag, which indicates that
     371     *                                           there is a contact with the touch surface.
     372     *                              All other bits are reserved for future use and must be set to 0.
     373     * @param   u32ScanTime         Timestamp of this event in milliseconds. Only relative
     374     *                              time between event is important.
     375     */
     376
     377    DECLR3CALLBACKMEMBER(int, pfnPutEventTouchPad,(PPDMIMOUSEPORT pInterface,
     378                                                   uint8_t cContacts,
     379                                                   const uint64_t *pau64Contacts,
     380                                                   uint32_t u32ScanTime));
    356381} PDMIMOUSEPORT;
    357382/** PDMIMOUSEPORT interface ID. */
    358 #define PDMIMOUSEPORT_IID                       "359364f0-9fa3-4490-a6b4-7ed771901c93"
     383#define PDMIMOUSEPORT_IID                       "d2bb54b7-d877-441b-9d25-d2d3329465c2"
    359384
    360385/** Mouse button defines for PDMIMOUSEPORT::pfnPutEvent.
     
    383408     * @param   fRelative       Whether relative mode is currently supported.
    384409     * @param   fAbsolute       Whether absolute mode is currently supported.
    385      * @param   fMultiTouch     Whether multi-touch mode is currently supported.
    386      */
    387     DECLR3CALLBACKMEMBER(void, pfnReportModes,(PPDMIMOUSECONNECTOR pInterface, bool fRelative, bool fAbsolute, bool fMultiTouch));
     410     * @param   fMTAbsolute     Whether absolute multi-touch mode is currently supported.
     411     * @param   fMTRelative     Whether relative multi-touch mode is currently supported.
     412     */
     413    DECLR3CALLBACKMEMBER(void, pfnReportModes,(PPDMIMOUSECONNECTOR pInterface, bool fRelative, bool fAbsolute, bool fMTAbsolute, bool fMTRelative));
    388414
    389415    /**
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette