github.com/rajveermalviya/gamen@v0.1.2-0.20220930195403-9be15877c1aa/internal/xcb/include/X11/extensions/presenttokens.h (about)

     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  
    23  #ifndef _PRESENT_TOKENS_H_
    24  #define _PRESENT_TOKENS_H_
    25  
    26  #define PRESENT_NAME			"Present"
    27  #define PRESENT_MAJOR			1
    28  #define PRESENT_MINOR			2
    29  
    30  #define PresentNumberErrors		0
    31  #define PresentNumberEvents		0
    32  
    33  /* Requests */
    34  #define X_PresentQueryVersion		0
    35  #define X_PresentPixmap			1
    36  #define X_PresentNotifyMSC		2
    37  #define X_PresentSelectInput		3
    38  #define X_PresentQueryCapabilities      4
    39  
    40  #define PresentNumberRequests		5
    41  
    42  /* Present operation options */
    43  #define PresentOptionNone               0
    44  #define PresentOptionAsync              (1 << 0)
    45  #define PresentOptionCopy               (1 << 1)
    46  #define PresentOptionUST                (1 << 2)
    47  #define PresentOptionSuboptimal         (1 << 3)
    48  
    49  #define PresentAllOptions       (PresentOptionAsync | \
    50                                   PresentOptionCopy | \
    51                                   PresentOptionUST | \
    52                                   PresentOptionSuboptimal)
    53  
    54  /* Present capabilities */
    55  
    56  #define PresentCapabilityNone           0
    57  #define PresentCapabilityAsync          1
    58  #define PresentCapabilityFence          2
    59  #define PresentCapabilityUST            4
    60  
    61  #define PresentAllCapabilities  (PresentCapabilityAsync | \
    62                                   PresentCapabilityFence | \
    63                                   PresentCapabilityUST)
    64  
    65  /* Events */
    66  #define PresentConfigureNotify	0
    67  #define PresentCompleteNotify	1
    68  #define PresentIdleNotify       2
    69  #if PRESENT_FUTURE_VERSION
    70  #define PresentRedirectNotify	3
    71  #endif
    72  
    73  /* Event Masks */
    74  #define PresentConfigureNotifyMask      1
    75  #define PresentCompleteNotifyMask       2
    76  #define PresentIdleNotifyMask           4
    77  #if PRESENT_FUTURE_VERSION
    78  #define PresentRedirectNotifyMask       8
    79  #endif
    80  
    81  #if PRESENT_FUTURE_VERSION
    82  #define PRESENT_REDIRECT_NOTIFY_MASK    PresentRedirectNotifyMask
    83  #else
    84  #define PRESENT_REDIRECT_NOTIFY_MASK    0
    85  #endif
    86  
    87  #define PresentAllEvents   (PresentConfigureNotifyMask |        \
    88                              PresentCompleteNotifyMask |         \
    89                              PresentIdleNotifyMask |             \
    90                              PRESENT_REDIRECT_NOTIFY_MASK)
    91  
    92  /* Complete Kinds */
    93  
    94  #define PresentCompleteKindPixmap       0
    95  #define PresentCompleteKindNotifyMSC    1
    96  
    97  /* Complete Modes */
    98  
    99  #define PresentCompleteModeCopy           0
   100  #define PresentCompleteModeFlip           1
   101  #define PresentCompleteModeSkip           2
   102  #define PresentCompleteModeSuboptimalCopy 3
   103  
   104  #endif