~elementary-os/elementaryos/os-patch-mutter-bionic

« back to all changes in this revision

Viewing changes to clutter/clutter/clutter-stage-private.h

  • Committer: RabbitBot
  • Date: 2018-04-11 14:49:36 UTC
  • Revision ID: rabbitbot@elementary.io-20180411144936-hgymqa9d8d1xfpbh
Initial import, version 3.28.0-2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Clutter.
 
3
 *
 
4
 * An OpenGL based 'interactive canvas' library.
 
5
 *
 
6
 * Copyright (C) 2010  Intel Corporation.
 
7
 *
 
8
 * This library is free software; you can redistribute it and/or
 
9
 * modify it under the terms of the GNU Lesser General Public
 
10
 * License as published by the Free Software Foundation; either
 
11
 * version 2 of the License, or (at your option) any later version.
 
12
 *
 
13
 * This library is distributed in the hope that it will be useful,
 
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 
16
 * Lesser General Public License for more details.
 
17
 *
 
18
 * You should have received a copy of the GNU Lesser General Public
 
19
 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
 
20
 */
 
21
 
 
22
#ifndef __CLUTTER_STAGE_PRIVATE_H__
 
23
#define __CLUTTER_STAGE_PRIVATE_H__
 
24
 
 
25
#include <clutter/clutter-stage-window.h>
 
26
#include <clutter/clutter-stage.h>
 
27
#include <clutter/clutter-input-device.h>
 
28
#include <clutter/clutter-private.h>
 
29
 
 
30
#include <cogl/cogl.h>
 
31
 
 
32
G_BEGIN_DECLS
 
33
 
 
34
typedef struct _ClutterStageQueueRedrawEntry ClutterStageQueueRedrawEntry;
 
35
 
 
36
/* stage */
 
37
ClutterStageWindow *_clutter_stage_get_default_window    (void);
 
38
 
 
39
void                _clutter_stage_paint_view            (ClutterStage                *stage,
 
40
                                                          ClutterStageView            *view,
 
41
                                                          const cairo_rectangle_int_t *clip);
 
42
 
 
43
void                _clutter_stage_set_window            (ClutterStage          *stage,
 
44
                                                          ClutterStageWindow    *stage_window);
 
45
ClutterStageWindow *_clutter_stage_get_window            (ClutterStage          *stage);
 
46
void                _clutter_stage_get_projection_matrix (ClutterStage          *stage,
 
47
                                                          CoglMatrix            *projection);
 
48
void                _clutter_stage_dirty_projection      (ClutterStage          *stage);
 
49
void                _clutter_stage_set_viewport          (ClutterStage          *stage,
 
50
                                                          float                  x,
 
51
                                                          float                  y,
 
52
                                                          float                  width,
 
53
                                                          float                  height);
 
54
void                _clutter_stage_get_viewport          (ClutterStage          *stage,
 
55
                                                          float                 *x,
 
56
                                                          float                 *y,
 
57
                                                          float                 *width,
 
58
                                                          float                 *height);
 
59
void                _clutter_stage_dirty_viewport        (ClutterStage          *stage);
 
60
void                _clutter_stage_maybe_setup_viewport  (ClutterStage          *stage,
 
61
                                                          ClutterStageView      *view);
 
62
void                _clutter_stage_maybe_relayout        (ClutterActor          *stage);
 
63
gboolean            _clutter_stage_needs_update          (ClutterStage          *stage);
 
64
gboolean            _clutter_stage_do_update             (ClutterStage          *stage);
 
65
 
 
66
void     _clutter_stage_queue_event                       (ClutterStage *stage,
 
67
                                                           ClutterEvent *event,
 
68
                                                           gboolean      copy_event);
 
69
gboolean _clutter_stage_has_queued_events                 (ClutterStage *stage);
 
70
void     _clutter_stage_process_queued_events             (ClutterStage *stage);
 
71
void     _clutter_stage_update_input_devices              (ClutterStage *stage);
 
72
void     _clutter_stage_schedule_update                   (ClutterStage *stage);
 
73
gint64    _clutter_stage_get_update_time                  (ClutterStage *stage);
 
74
void     _clutter_stage_clear_update_time                 (ClutterStage *stage);
 
75
gboolean _clutter_stage_has_full_redraw_queued            (ClutterStage *stage);
 
76
 
 
77
ClutterActor *_clutter_stage_do_pick (ClutterStage    *stage,
 
78
                                      gint             x,
 
79
                                      gint             y,
 
80
                                      ClutterPickMode  mode);
 
81
 
 
82
ClutterPaintVolume *_clutter_stage_paint_volume_stack_allocate (ClutterStage *stage);
 
83
void                _clutter_stage_paint_volume_stack_free_all (ClutterStage *stage);
 
84
 
 
85
const ClutterPlane *_clutter_stage_get_clip (ClutterStage *stage);
 
86
 
 
87
ClutterStageQueueRedrawEntry *_clutter_stage_queue_actor_redraw            (ClutterStage                 *stage,
 
88
                                                                            ClutterStageQueueRedrawEntry *entry,
 
89
                                                                            ClutterActor                 *actor,
 
90
                                                                            ClutterPaintVolume           *clip);
 
91
void                          _clutter_stage_queue_redraw_entry_invalidate (ClutterStageQueueRedrawEntry *entry);
 
92
 
 
93
CoglFramebuffer *_clutter_stage_get_active_framebuffer (ClutterStage *stage);
 
94
 
 
95
gint32          _clutter_stage_acquire_pick_id          (ClutterStage *stage,
 
96
                                                         ClutterActor *actor);
 
97
void            _clutter_stage_release_pick_id          (ClutterStage *stage,
 
98
                                                         gint32        pick_id);
 
99
ClutterActor *  _clutter_stage_get_actor_by_pick_id     (ClutterStage *stage,
 
100
                                                         gint32        pick_id);
 
101
 
 
102
void            _clutter_stage_add_pointer_drag_actor    (ClutterStage       *stage,
 
103
                                                          ClutterInputDevice *device,
 
104
                                                          ClutterActor       *actor);
 
105
ClutterActor *  _clutter_stage_get_pointer_drag_actor    (ClutterStage       *stage,
 
106
                                                          ClutterInputDevice *device);
 
107
void            _clutter_stage_remove_pointer_drag_actor (ClutterStage       *stage,
 
108
                                                          ClutterInputDevice *device);
 
109
 
 
110
void            _clutter_stage_add_touch_drag_actor    (ClutterStage         *stage,
 
111
                                                        ClutterEventSequence *sequence,
 
112
                                                        ClutterActor         *actor);
 
113
ClutterActor *  _clutter_stage_get_touch_drag_actor    (ClutterStage         *stage,
 
114
                                                        ClutterEventSequence *sequence);
 
115
void            _clutter_stage_remove_touch_drag_actor (ClutterStage         *stage,
 
116
                                                        ClutterEventSequence *sequence);
 
117
 
 
118
ClutterStageState       _clutter_stage_get_state        (ClutterStage      *stage);
 
119
gboolean                _clutter_stage_is_activated     (ClutterStage      *stage);
 
120
gboolean                _clutter_stage_is_fullscreen    (ClutterStage      *stage);
 
121
gboolean                _clutter_stage_update_state     (ClutterStage      *stage,
 
122
                                                         ClutterStageState  unset_state,
 
123
                                                         ClutterStageState  set_state);
 
124
 
 
125
void                    _clutter_stage_set_scale_factor (ClutterStage      *stage,
 
126
                                                         int                factor);
 
127
 
 
128
void            _clutter_stage_presented                (ClutterStage      *stage,
 
129
                                                         CoglFrameEvent     frame_event,
 
130
                                                         ClutterFrameInfo  *frame_info);
 
131
 
 
132
G_END_DECLS
 
133
 
 
134
#endif /* __CLUTTER_STAGE_PRIVATE_H__ */