presenttokens.h 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. /*
  2. * Copyright © 2013 Keith Packard
  3. *
  4. * Permission to use, copy, modify, distribute, and sell this software and its
  5. * documentation for any purpose is hereby granted without fee, provided that
  6. * the above copyright notice appear in all copies and that both that copyright
  7. * notice and this permission notice appear in supporting documentation, and
  8. * that the name of the copyright holders not be used in advertising or
  9. * publicity pertaining to distribution of the software without specific,
  10. * written prior permission. The copyright holders make no representations
  11. * about the suitability of this software for any purpose. It is provided "as
  12. * is" without express or implied warranty.
  13. *
  14. * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
  15. * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
  16. * EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  17. * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
  18. * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  19. * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
  20. * OF THIS SOFTWARE.
  21. */
  22. #ifndef _PRESENT_TOKENS_H_
  23. #define _PRESENT_TOKENS_H_
  24. #define PRESENT_NAME "Present"
  25. #define PRESENT_MAJOR 1
  26. #define PRESENT_MINOR 0
  27. #define PresentNumberErrors 0
  28. #define PresentNumberEvents 0
  29. /* Requests */
  30. #define X_PresentQueryVersion 0
  31. #define X_PresentPixmap 1
  32. #define X_PresentNotifyMSC 2
  33. #define X_PresentSelectInput 3
  34. #define X_PresentQueryCapabilities 4
  35. #define PresentNumberRequests 5
  36. /* Present operation options */
  37. #define PresentOptionNone 0
  38. #define PresentOptionAsync (1 << 0)
  39. #define PresentOptionCopy (1 << 1)
  40. #define PresentOptionUST (1 << 2)
  41. #define PresentAllOptions (PresentOptionAsync | \
  42. PresentOptionCopy | \
  43. PresentOptionUST)
  44. /* Present capabilities */
  45. #define PresentCapabilityNone 0
  46. #define PresentCapabilityAsync 1
  47. #define PresentCapabilityFence 2
  48. #define PresentCapabilityUST 4
  49. #define PresentAllCapabilities (PresentCapabilityAsync | \
  50. PresentCapabilityFence | \
  51. PresentCapabilityUST)
  52. /* Events */
  53. #define PresentConfigureNotify 0
  54. #define PresentCompleteNotify 1
  55. #define PresentIdleNotify 2
  56. #define PresentRedirectNotify 3
  57. /* Event Masks */
  58. #define PresentConfigureNotifyMask 1
  59. #define PresentCompleteNotifyMask 2
  60. #define PresentIdleNotifyMask 4
  61. #define PresentRedirectNotifyMask 8
  62. #define PresentAllEvents (PresentConfigureNotifyMask | \
  63. PresentCompleteNotifyMask | \
  64. PresentIdleNotifyMask | \
  65. PresentRedirectNotifyMask)
  66. /* Complete Kinds */
  67. #define PresentCompleteKindPixmap 0
  68. #define PresentCompleteKindNotifyMSC 1
  69. /* Complete Modes */
  70. #define PresentCompleteModeCopy 0
  71. #define PresentCompleteModeFlip 1
  72. #define PresentCompleteModeSkip 2
  73. #endif