home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-bin / x11r6.1 / man / cat3 / xmbufchangebufferattributes.0 < prev    next >
Encoding:
Text File  |  1996-10-17  |  12.4 KB  |  331 lines

  1.  
  2.  
  3.  
  4. XMBUF(3X11)           X FUNCTIONS              XMBUF(3X11)
  5.  
  6.  
  7. NNAAMMEE
  8.        XmbufQueryExtension,  XmbufGetVersion, XmbufCreateBuffers,
  9.        XmbufDestroyBuffers,   XmbufDisplayBuffers,   XmbufGetWin-
  10.        dowAttributes,     XmbufChangeWindowAttributes,    XmbufGet-
  11.        BufferAttributes,         XmbufChangeBufferAttributes,
  12.        XmbufGetScreenInfo,  XmbufCreateStereoWindow  -    X  multi-
  13.        buffering functions
  14.  
  15. SSYYNNTTAAXX
  16.        #include <X11/extensions/multibuf.h>
  17.  
  18.        Bool XmbufQueryExtension(
  19.        Display *dpy,
  20.        Display *dpy,
  21.        int *event_base_return,
  22.        int *error_base_return);
  23.  
  24.        Status XmbufGetVersion(
  25.        Display *dpy,
  26.        int *major_version_return,
  27.        int *minor_version_return);
  28.  
  29.        int XmbufCreateBuffers(
  30.        Display *dpy,
  31.        Window window,
  32.        int count,
  33.        int update_action,
  34.        int update_hint,
  35.        Multibuffer *buffers_update);
  36.  
  37.        void XmbufDestroyBuffers(
  38.        Display *dpy,
  39.        Window window);
  40.  
  41.        void XmbufDisplayBuffers(
  42.        Display *dpy,
  43.        int count,
  44.        Multibuffer *buffers,
  45.        int min_delay,
  46.        int max_delay);
  47.  
  48.        Status XmbufGetWindowAttributes(
  49.        Display *dpy,
  50.        Window window,
  51.        XmbufWindowAttributes *attributes);
  52.  
  53.        void XmbufChangeWindowAttributes(
  54.        Display *dpy,
  55.        Window window,
  56.        unsigned long valuemask,
  57.        XmbufSetWindowAttributes *attributes);
  58.  
  59.        Status XmbufGetBufferAttributes(
  60.        Display *dpy,
  61.  
  62.  
  63.  
  64. X Version 11           Release 6.1                1
  65.  
  66.  
  67.  
  68.  
  69.  
  70. XMBUF(3X11)           X FUNCTIONS              XMBUF(3X11)
  71.  
  72.  
  73.        Multibuffer buffer,
  74.        XmbufBufferAttributes *attributes);
  75.  
  76.        void XmbufChangeBufferAttributes(
  77.        Display *dpy,
  78.        Multibuffer buffer,
  79.        unsigned long valuemask,
  80.        XmbufSetBufferAttributes *attributes);
  81.  
  82.        Status XmbufGetScreenInfo(
  83.        Display *dpy,
  84.        Drawable drawable,
  85.        int *nmono_return,
  86.        XmbufBufferInfo **mono_info_return,
  87.        int *nstereo_return,
  88.        XmbufBufferInfo **stereo_info_return);
  89.  
  90.        Window XmbufCreateStereoWindow(
  91.        Display *dpy,
  92.        Window parent,
  93.        int x,
  94.        int y,
  95.        unsigned int width,
  96.        unsigned int height,
  97.        unsigned int border_width,
  98.        int depth,
  99.        unsigned int class,               /* InputOutput, InputOnly*/
  100.        Visual *visual,
  101.        unsigned long valuemask,
  102.        XSetWindowAttributes *attributes,
  103.        Multibuffer *left_return,
  104.        Multibuffer *right_return);
  105.  
  106. SSTTRRUUCCTTUURREESS
  107.        _E_v_e_n_t_s_:
  108.        typedef struct {
  109.        int type;             /* of event */
  110.        unsigned long serial;     /* # of last request processed by server */
  111.        int send_event;         /* true if this came frome a SendEvent request */
  112.        Display *display;         /* Display the event was read from */
  113.        Multibuffer buffer;         /* buffer of event */
  114.        int state;             /* see Clobbered constants above */
  115.        } XmbufClobberNotifyEvent;
  116.  
  117.        typedef struct {
  118.        int type;             /* of event */
  119.        unsigned long serial;     /* # of last request processed by server */
  120.        int send_event;         /* true if this came frome a SendEvent request */
  121.        Display *display;         /* Display the event was read from */
  122.        Multibuffer buffer;         /* buffer of event */
  123.        } XmbufUpdateNotifyEvent;
  124.  
  125.        _P_e_r_-_w_i_n_d_o_w _a_t_t_r_i_b_u_t_e_s _t_h_a_t _c_a_n _b_e _g_o_t_:
  126.        typedef struct {
  127.  
  128.  
  129.  
  130. X Version 11           Release 6.1                2
  131.  
  132.  
  133.  
  134.  
  135.  
  136. XMBUF(3X11)           X FUNCTIONS              XMBUF(3X11)
  137.  
  138.  
  139.        int displayed_index;         /* which buffer is being displayed */
  140.        int update_action;         /* Undefined, Background, Untouched, Copied */
  141.        int update_hint;         /* Frequent, Intermittent, Static */
  142.        int window_mode;         /* Mono, Stereo */
  143.        int nbuffers;         /* Number of buffers */
  144.        Multibuffer *buffers;     /* Buffers */
  145.        } XmbufWindowAttributes;
  146.  
  147.        _P_e_r_-_w_i_n_d_o_w _a_t_t_r_i_b_u_t_e_s _t_h_a_t _c_a_n _b_e _s_e_t_:
  148.        typedef struct {
  149.        int update_hint;         /* Frequent, Intermittent, Static */
  150.        } XmbufSetWindowAttributes;
  151.  
  152.        _P_e_r_-_b_u_f_f_e_r _a_t_t_r_i_b_u_t_e_s _t_h_a_t _c_a_n _b_e _g_o_t_:
  153.        typedef struct {
  154.        Window window;         /* which window this belongs to */
  155.        unsigned long event_mask; /* events that have been selected */
  156.        int buffer_index;         /* which buffer is this */
  157.        int side;             /* Mono, Left, Right */
  158.        } XmbufBufferAttributes;
  159.  
  160.        _P_e_r_-_b_u_f_f_e_r _a_t_t_r_i_b_u_t_e_s _t_h_a_t _c_a_n _b_e _s_e_t_:
  161.        typedef struct {
  162.        unsigned long event_mask; /* events that have been selected */
  163.        } XmbufSetBufferAttributes;
  164.  
  165.        _P_e_r_-_s_c_r_e_e_n _b_u_f_f_e_r _i_n_f_o _(_t_h_e_r_e _w_i_l_l _b_e _l_i_s_t_s _o_f _t_h_e_m_)_:
  166.        typedef struct {
  167.        VisualID visualid;         /* visual usuable at this depth */
  168.        int max_buffers;         /* most buffers for this visual */
  169.        int depth;             /* depth of buffers to be created */
  170.        } XmbufBufferInfo;
  171.  
  172. DDEESSCCRRIIPPTTIIOONN
  173.        The application programming library for    the  _X_1_1  _D_o_u_b_l_e_-
  174.        _B_u_f_f_e_r_i_n_g_,  _M_u_l_t_i_-_B_u_f_f_e_r_i_n_g_, _a_n_d _S_t_e_r_e_o _E_x_t_e_n_s_i_o_n contains
  175.        the interfaces described below.     With  the  exception  of
  176.        _X_m_b_u_f_Q_u_e_r_y_E_x_t_e_n_s_i_o_n,  if     any of these routines are called
  177.        with a display that does not support  the  extension,  the
  178.        ExtensionErrorHandler  (which  can  be set with _X_S_e_t_E_x_t_e_n_-
  179.        _s_i_o_n_E_r_r_o_r_H_a_n_d_l_e_r      and    functions   the      same     way   as
  180.        _X_S_e_t_E_r_r_o_r_H_a_n_d_l_e_r)  will    be  called  and the function will
  181.        then return.
  182.  
  183.        _X_m_b_u_f_Q_u_e_r_y_E_x_t_e_n_s_i_o_n  returns  _T_r_u_e  if  the   multibuffer-
  184.        ing/stereo  extension  is  available on the given display.
  185.        If the extension exists, the value of the first event code
  186.        (which  should be added to the event type constants _M_u_l_t_i_-
  187.        _b_u_f_f_e_r_C_l_o_b_b_e_r_N_o_t_i_f_y and _M_u_l_t_i_b_u_f_f_e_r_U_p_d_a_t_e_N_o_t_i_f_y to get the
  188.        actual  values)    is  stored into event_base_return and the
  189.        value of the first error code (which should  be    added  to
  190.        the  error  type     constant _M_u_l_t_i_b_u_f_f_e_r_B_a_d_B_u_f_f_e_r to get the
  191.        actual value) is stored into error_base_return.
  192.  
  193.  
  194.  
  195.  
  196. X Version 11           Release 6.1                3
  197.  
  198.  
  199.  
  200.  
  201.  
  202. XMBUF(3X11)           X FUNCTIONS              XMBUF(3X11)
  203.  
  204.  
  205.        _X_m_b_u_f_G_e_t_V_e_r_s_i_o_n gets the major and minor     version  numbers
  206.        of  the    extension.   The return value is zero if an error
  207.        occurs or non-zero if no error happens.
  208.  
  209.        _X_m_b_u_f_C_r_e_a_t_e_B_u_f_f_e_r_s requests that "count" buffers     be  cre-
  210.        ated  with  the given update_action and update_hint and be
  211.        associated with    the  indicated    window.      The  number  of
  212.        buffers    created     is  returned (zero if an error occurred)
  213.        and buffers_update is filled in with that many Multibuffer
  214.        identifiers.
  215.  
  216.        _X_m_b_u_f_D_e_s_t_r_o_y_B_u_f_f_e_r_s  destroys  the buffers associated with
  217.        the given window.
  218.  
  219.        _X_m_b_u_f_D_i_s_p_l_a_y_B_u_f_f_e_r_s displays the indicated  buffers  their
  220.        appropriate  windows  within  max_delay milliseconds after
  221.        min_delay milliseconds have passed.  No two buffers may be
  222.        associated  with     the  same window or else a Matc error is
  223.        generated.
  224.  
  225.        _X_m_b_u_f_G_e_t_W_i_n_d_o_w_A_t_t_r_i_b_u_t_e_s       gets       the       multibuffering
  226.        attributes  that     apply to all buffers associated with the
  227.        given window.  The list of buffers returns  may    be  freed
  228.        with  _X_F_r_e_e.   Returns  non-zero on success and zero if an
  229.        error occurs.
  230.  
  231.        _X_m_b_u_f_C_h_a_n_g_e_W_i_n_d_o_w_A_t_t_r_i_b_u_t_e_s   sets   the       multibuffering
  232.        attributes  that     apply to all buffers associated with the
  233.        given  window.    This  is   currently   limited     to   the
  234.        update_hint.
  235.  
  236.        _X_m_b_u_f_G_e_t_B_u_f_f_e_r_A_t_t_r_i_b_u_t_e_s gets the attributes for the indi-
  237.        cated buffer.  Returns non-zero on success and zero if  an
  238.        error occurs.
  239.  
  240.        _X_m_b_u_f_C_h_a_n_g_e_B_u_f_f_e_r_A_t_t_r_i_b_u_t_e_s  sets  the  attributes for the
  241.        indicated  buffer.   This  is  currently     limited  to  the
  242.        event_mask.
  243.  
  244.        _X_m_b_u_f_G_e_t_S_c_r_e_e_n_I_n_f_o  gets     the  parameters  controlling how
  245.        mono and stereo windows may be created on  the  screen  of
  246.        the  given  drawable.   The  numbers of sets of visual and
  247.        depths are returned in  nmono_return  and  nstereo_return.
  248.        If    nmono_return    is       greater    than   zero,   then
  249.        mono_info_return is set to the  address    of  an    array  of
  250.        _X_m_b_u_f_B_u_f_f_e_r_I_n_f_o    structures describing the various visuals
  251.        and depths that may be used.  Otherwise,     mono_info_return
  252.        is  set    to  NULL.   Similarly,    stereo_info_return is set
  253.        according to  nstereo_return.   The  storage  returned  in
  254.        mono_info_return and stereo_info_return may be released by
  255.        _X_F_r_e_e.  If no  errors  are  encounted,  non-zero     will  be
  256.        returned.
  257.  
  258.        _X_m_b_u_f_C_r_e_a_t_e_S_t_e_r_e_o_W_i_n_d_o_w    creates     a  stereo  window in the
  259.  
  260.  
  261.  
  262. X Version 11           Release 6.1                4
  263.  
  264.  
  265.  
  266.  
  267.  
  268. XMBUF(3X11)           X FUNCTIONS              XMBUF(3X11)
  269.  
  270.  
  271.        same way that _X_C_r_e_a_t_e_W_i_n_d_o_w creates a  mono  window.   The
  272.        buffer  ids for the left and right buffers are returned in
  273.        left_return and right_return, respectively.  If an  exten-
  274.        sion error handler that returns is installed, _N_o_n_e will be
  275.        returned if the extension is not available  on  this  dis-
  276.        play.
  277.  
  278. PPRREEDDEEFFIINNEEDD VVAALLUUEESS
  279.        Update_action field:
  280.         _M_u_l_t_i_b_u_f_f_e_r_U_p_d_a_t_e_A_c_t_i_o_n_U_n_d_e_f_i_n_e_d
  281.         _M_u_l_t_i_b_u_f_f_e_r_U_p_d_a_t_e_A_c_t_i_o_n_B_a_c_k_g_r_o_u_n_d
  282.         _M_u_l_t_i_b_u_f_f_e_r_U_p_d_a_t_e_A_c_t_i_o_n_U_n_t_o_u_c_h_e_d
  283.         _M_u_l_t_i_b_u_f_f_e_r_U_p_d_a_t_e_A_c_t_i_o_n_C_o_p_i_e_d
  284.  
  285.        Update_hint field:
  286.         _M_u_l_t_i_b_u_f_f_e_r_U_p_d_a_t_e_H_i_n_t_F_r_e_q_u_e_n_t
  287.         _M_u_l_t_i_b_u_f_f_e_r_U_p_d_a_t_e_H_i_n_t_I_n_t_e_r_m_i_t_t_e_n_t
  288.         _M_u_l_t_i_b_u_f_f_e_r_U_p_d_a_t_e_H_i_n_t_S_t_a_t_i_c
  289.  
  290.        Valuemask fields:
  291.         _M_u_l_t_i_b_u_f_f_e_r_W_i_n_d_o_w_U_p_d_a_t_e_H_i_n_t
  292.         _M_u_l_t_i_b_u_f_f_e_r_B_u_f_f_e_r_E_v_e_n_t_M_a_s_k
  293.  
  294.        Mono vs. stereo and left vs. right:
  295.         _M_u_l_t_i_b_u_f_f_e_r_M_o_d_e_M_o_n_o
  296.         _M_u_l_t_i_b_u_f_f_e_r_M_o_d_e_S_t_e_r_e_o
  297.         _M_u_l_t_i_b_u_f_f_e_r_S_i_d_e_M_o_n_o
  298.         _M_u_l_t_i_b_u_f_f_e_r_S_i_d_e_L_e_f_t
  299.         _M_u_l_t_i_b_u_f_f_e_r_S_i_d_e_R_i_g_h_t
  300.  
  301.        Clobber state:
  302.         _M_u_l_t_i_b_u_f_f_e_r_U_n_c_l_o_b_b_e_r_e_d
  303.         _M_u_l_t_i_b_u_f_f_e_r_P_a_r_t_i_a_l_l_y_C_l_o_b_b_e_r_e_d
  304.         _M_u_l_t_i_b_u_f_f_e_r_F_u_l_l_y_C_l_o_b_b_e_r_e_d
  305.  
  306.        Event stuff:
  307.         _M_u_l_t_i_b_u_f_f_e_r_C_l_o_b_b_e_r_N_o_t_i_f_y_M_a_s_k
  308.         _M_u_l_t_i_b_u_f_f_e_r_U_p_d_a_t_e_N_o_t_i_f_y_M_a_s_k
  309.         _M_u_l_t_i_b_u_f_f_e_r_C_l_o_b_b_e_r_N_o_t_i_f_y
  310.         _M_u_l_t_i_b_u_f_f_e_r_U_p_d_a_t_e_N_o_t_i_f_y
  311.         _M_u_l_t_i_b_u_f_f_e_r_N_u_m_b_e_r_E_v_e_n_t_s
  312.         _M_u_l_t_i_b_u_f_f_e_r_B_a_d_B_u_f_f_e_r
  313.         _M_u_l_t_i_b_u_f_f_e_r_N_u_m_b_e_r_E_r_r_o_r_s
  314.  
  315. BBUUGGSS
  316.        This manual page needs more work.
  317.  
  318. SSEEEE AALLSSOO
  319.        _E_x_t_e_n_d_i_n_g  _X  _f_o_r  _D_o_u_b_l_e  _B_u_f_f_e_r_i_n_g_, _M_u_l_t_i_-_B_u_f_f_e_r_i_n_g_, _a_n_d
  320.        _S_t_e_r_e_o
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328. X Version 11           Release 6.1                5
  329.  
  330.  
  331.