Compare commits
204 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
d03deb006c | ||
![]() |
c2146b457e | ||
![]() |
77dc3a5065 | ||
![]() |
454875248a | ||
![]() |
ae8acc9980 | ||
![]() |
86d9cd1a66 | ||
![]() |
3a70ba7ae2 | ||
![]() |
36a6235f3a | ||
![]() |
9b349cb25b | ||
![]() |
a83d83f087 | ||
![]() |
b8bd39793a | ||
![]() |
70072c39dd | ||
![]() |
bb4bd4b5c0 | ||
![]() |
ef848f10d1 | ||
![]() |
59cb259fdd | ||
![]() |
76e4b5de7a | ||
![]() |
9acb823603 | ||
![]() |
d721750417 | ||
![]() |
1ec91cc8ee | ||
![]() |
5c7b5ef0d9 | ||
![]() |
e98e1c13dd | ||
![]() |
8b69e7902a | ||
![]() |
b52a0be288 | ||
![]() |
1eb0812f0a | ||
![]() |
b98125a330 | ||
![]() |
78248d8dd3 | ||
![]() |
849d8dfae9 | ||
![]() |
1f896c9735 | ||
![]() |
cc617b059c | ||
![]() |
44a3358125 | ||
![]() |
81deb99435 | ||
![]() |
f25417efcf | ||
![]() |
ecc2b91016 | ||
![]() |
b002343dca | ||
![]() |
0d9ded403f | ||
![]() |
dc75c7d297 | ||
![]() |
33c008b90a | ||
![]() |
98a0c5cb35 | ||
![]() |
b425f11536 | ||
![]() |
a1bc2e0adc | ||
![]() |
63fc71f05b | ||
![]() |
31307720bf | ||
![]() |
cb7ba2e90f | ||
![]() |
ba1f4221e9 | ||
![]() |
6e6183ec08 | ||
![]() |
493aeb65c8 | ||
![]() |
36f5a0a491 | ||
![]() |
3daf912449 | ||
![]() |
fadfca2e16 | ||
![]() |
b1df6d08a5 | ||
![]() |
63bf5f1150 | ||
![]() |
d9d8732096 | ||
![]() |
797c349245 | ||
![]() |
b5691d6bf0 | ||
![]() |
c7ad9b33c2 | ||
![]() |
e49297975a | ||
![]() |
858c12e73f | ||
![]() |
b80b465a65 | ||
![]() |
2cc8061f35 | ||
![]() |
dbecb93233 | ||
![]() |
adbe09afc3 | ||
![]() |
bfe9b333c0 | ||
![]() |
06b0d41baf | ||
![]() |
a62fe66a25 | ||
![]() |
5f40493c84 | ||
![]() |
e8d9996c9c | ||
![]() |
5465c912c7 | ||
![]() |
a32bb758f7 | ||
![]() |
ac8075bbf5 | ||
![]() |
da9eb4718b | ||
![]() |
9ad61fe02f | ||
![]() |
7a09d07b9c | ||
![]() |
456e6f345d | ||
![]() |
20cf6b630d | ||
![]() |
1e17f8813b | ||
![]() |
d985517573 | ||
![]() |
107bb3d9c2 | ||
![]() |
b1c47c6213 | ||
![]() |
c43f178495 | ||
![]() |
c46bea9dff | ||
![]() |
622e8c348f | ||
![]() |
51b65b98f5 | ||
![]() |
7ec0a9dd68 | ||
![]() |
6ce42e100f | ||
![]() |
13a23f16c1 | ||
![]() |
40dc22659b | ||
![]() |
fdcb68f4d0 | ||
![]() |
17491bae06 | ||
![]() |
568876da95 | ||
![]() |
ea546a8b90 | ||
![]() |
e8f29a3336 | ||
![]() |
5e9986bbcb | ||
![]() |
3edf6a5292 | ||
![]() |
ad500ef4e5 | ||
![]() |
9a2471db47 | ||
![]() |
db164bcfa2 | ||
![]() |
83553e3f6e | ||
![]() |
3b2f6ae93d | ||
![]() |
bc47f0a1ac | ||
![]() |
c8986d19e5 | ||
![]() |
7baabc7ed0 | ||
![]() |
b0709504ea | ||
![]() |
7e94311e2e | ||
![]() |
e339a57ddf | ||
![]() |
e3b2b90c72 | ||
![]() |
6f094bd399 | ||
![]() |
2c805524b4 | ||
![]() |
95c1baf3d1 | ||
![]() |
6f9b5edd4d | ||
![]() |
31809e1214 | ||
![]() |
82f3bdd14e | ||
![]() |
52e5d6fc94 | ||
![]() |
09a6031c69 | ||
![]() |
dbe919ef92 | ||
![]() |
2907ee93cc | ||
![]() |
aa136f4515 | ||
![]() |
8748841094 | ||
![]() |
86f2885e98 | ||
![]() |
bb5ea0580f | ||
![]() |
2cfdbbd730 | ||
![]() |
9f31e7252c | ||
![]() |
e8ea5ecd8a | ||
![]() |
ed10aea44d | ||
![]() |
fed5f4d9aa | ||
![]() |
73250b8f4c | ||
![]() |
f6700f19a7 | ||
![]() |
ea34915df3 | ||
![]() |
37742c5cde | ||
![]() |
cdd27d0e53 | ||
![]() |
82778f72a4 | ||
![]() |
d846fabda2 | ||
![]() |
2d94a34a14 | ||
![]() |
92710d8f89 | ||
![]() |
da600b8400 | ||
![]() |
6aa546145f | ||
![]() |
3956ffd5e8 | ||
![]() |
05341221d4 | ||
![]() |
95642d05a6 | ||
![]() |
51cd8aed96 | ||
![]() |
ac01e69a67 | ||
![]() |
a68e6972a2 | ||
![]() |
55cf1c1496 | ||
![]() |
343de21af5 | ||
![]() |
3c157242fa | ||
![]() |
32c99513c8 | ||
![]() |
40c345d6f3 | ||
![]() |
8beef8ccd0 | ||
![]() |
62d0dd907b | ||
![]() |
0462208d4e | ||
![]() |
6885c37784 | ||
![]() |
238e41d493 | ||
![]() |
8699482475 | ||
![]() |
dcaa45fc0c | ||
![]() |
3c4f5ddcb4 | ||
![]() |
3aece84499 | ||
![]() |
40fb06ca17 | ||
![]() |
d4c070da88 | ||
![]() |
d052f9c070 | ||
![]() |
3b88af94e3 | ||
![]() |
1f00aba92c | ||
![]() |
ec1195e3ff | ||
![]() |
18b661cc93 | ||
![]() |
8592a8591b | ||
![]() |
7fa7c2aeb7 | ||
![]() |
41130b08eb | ||
![]() |
1d20045247 | ||
![]() |
c131a9b7fa | ||
![]() |
2ecbf6d746 | ||
![]() |
a13d60aae5 | ||
![]() |
ed4b80cee5 | ||
![]() |
0a6034ef3a | ||
![]() |
c9a5b2b22f | ||
![]() |
db9b60cc63 | ||
![]() |
fa74da0039 | ||
![]() |
b310e1d9d7 | ||
![]() |
0053ef2e16 | ||
![]() |
4133b73632 | ||
![]() |
074f4974dd | ||
![]() |
0700f3749f | ||
![]() |
0487e6f11f | ||
![]() |
23da6c2426 | ||
![]() |
67dd0b4fec | ||
![]() |
6989fea767 | ||
![]() |
df33255162 | ||
![]() |
5319949a45 | ||
![]() |
aba0b9ef64 | ||
![]() |
512bb7d1cd | ||
![]() |
d2a12ee0fa | ||
![]() |
531a195cf1 | ||
![]() |
509e9ca5a0 | ||
![]() |
0743381573 | ||
![]() |
267f712068 | ||
![]() |
0b102afb53 | ||
![]() |
304a103659 | ||
![]() |
2d09e95934 | ||
![]() |
be11525b28 | ||
![]() |
adc38f902a | ||
![]() |
8abdf16a39 | ||
![]() |
4cc29cfb61 | ||
![]() |
121c5d2a92 | ||
![]() |
50ff30bf2b | ||
![]() |
26e1e495a0 | ||
![]() |
480e7d44be | ||
![]() |
1c1adb0036 |
@@ -28,6 +28,20 @@ build-mutter:
|
||||
- merge_requests
|
||||
- /^.*$/
|
||||
|
||||
build-without-opengl-and-glx:
|
||||
stage: build
|
||||
script:
|
||||
- meson . build -Dbuildtype=debugoptimized -Dopengl=false -Dglx=false -Degl_device=true -Dwayland_eglstream=true --werror --prefix /usr
|
||||
- ninja -C build
|
||||
- ninja -C build install
|
||||
artifacts:
|
||||
expire_in: 1 day
|
||||
paths:
|
||||
- build
|
||||
only:
|
||||
- merge_requests
|
||||
- /^.*$/
|
||||
|
||||
build-without-native-backend-and-wayland:
|
||||
stage: build
|
||||
script:
|
||||
|
102
NEWS
102
NEWS
@@ -1,3 +1,105 @@
|
||||
3.36.4
|
||||
======
|
||||
* Fix crash on area screenshots with fractional scaling [Sebastian; !1320]
|
||||
* Do not paint textures of fully obscured windows [Robert; !1326]
|
||||
* Turn off CRTCs as well when enabling DPMS [Michel; !1240]
|
||||
* Improve selection support
|
||||
[Robert, Carlos, Sebastian; !1330, !1193, !1253, !1255, !1293, !1350]
|
||||
* Use a more appropriate combine function on opaque areas [Daniel; !1331]
|
||||
* Fix remote desktop being broken without screencast session [Olivier; #1307]
|
||||
* Fix popovers disappearing on wayland and HiDPI [Robert; #1312]
|
||||
* Fixed crashes [Jonas Å.; !1317]
|
||||
* Plugged memory leaks [Jonas Å.; !1283]
|
||||
* Misc. bug fixes and cleanups
|
||||
[Corentin, Sebastian, Jonas Å., Jonas D.; !1314, !1321, !1295, !1333]
|
||||
|
||||
Contributors:
|
||||
Jonas Dreßler, Michel Dänzer, Olivier Fourdan, Carlos Garnacho,
|
||||
Sebastian Keller, Robert Mader, Corentin Noël, Daniel van Vugt, Jonas Ådahl
|
||||
|
||||
|
||||
3.36.3
|
||||
======
|
||||
* Broadcast clipboard/primary offers [Carlos; !1262]
|
||||
* Fix monitor screen cast on X11 [Jonas Å.; !1251]
|
||||
* Implement touch-mode detecation for the X11 backend [Carlos; !1278]
|
||||
* Drop external keyboard detection from touch-mode heuristics [Carlos; !1277]
|
||||
* Fix leaked DMA buffers in screencasts [Jonas; !1283]
|
||||
* Fixed crashes [Daniel, Carlos, Jonas D.; !1256, !1258, !1280]
|
||||
|
||||
Contributors:
|
||||
Carlos Garnacho, Daniel van Vugt, Jonas Ådahl
|
||||
|
||||
3.36.2
|
||||
======
|
||||
* Sync timelines to hardware vsync [Daniel; !724]
|
||||
* Fix screencasting non-maximized windows [Jonas; !1174]
|
||||
* Make window-aliveness checks less aggressive [Jonas; !1182]
|
||||
* Fix stylus coordinates when using screen rotation [Jonas T.; #1118]
|
||||
* Preserve keyboard state on VT switch [Olivier; !1185]
|
||||
* Fix trackball button scrolling [Phillip; #1120]
|
||||
* Fix tiled monitor support [Jonas Å.; !1199]
|
||||
* Fix various clipboard issues [Carlos; !1198, !1203, !1204, !1186, !1206]
|
||||
* Synchronize shadows to server-side decorations [Olivier; !1214]
|
||||
* Fix overview key on X11 when using multiple keyboard layouts [Olivier; !1219]
|
||||
* Fix capturing with multiple stage views [Jonas Å.; !1222]
|
||||
* Fixed crashes [Jonas D., Carlos; !1173, !1183]
|
||||
* Misc. bug fixes and cleanups [Andre, Georges, Simon, Christian, Carlos, Marco,
|
||||
Pekka, Laurent, Jonas D.; !1169, !1170, !1172, !1168, !1184, !1200, !1209,
|
||||
#1074, !1208]
|
||||
|
||||
Contributors:
|
||||
Marco Trevisan (Treviño), Laurent Bigonville, Jonas Dreßler, Olivier Fourdan,
|
||||
Carlos Garnacho, Andre Moreira Magalhaes, Simon McVittie,
|
||||
Georges Basile Stavracas Neto, Pekka Paalanen, Christian Rauch, Jonas Troeger,
|
||||
Daniel van Vugt, Phillip Wood, Jonas Ådahl
|
||||
|
||||
Translators:
|
||||
Dušan Kazik [sk], Christian Kirbach [de]
|
||||
|
||||
3.36.1
|
||||
======
|
||||
* Fix hardware cursor on GPU hotplpug [Pekka; !1097]
|
||||
* Fix black areas around XWayland windows when resizing [Robert, Olivier; !1091]
|
||||
* Fix applying wrong scale to monitors on X11 [Jonas; !1118]
|
||||
* Fix moving/resizing windows via keyboard on wayland [Alynx; !997]
|
||||
* Fix locate-pointer feature interfering with keybindings [Carlos; !1014]
|
||||
* Add support for middle-click emulation [Andrew; !256]
|
||||
* Fix freeze when moving cursor between scaled monitors [Robert; !1125]
|
||||
* Fix popup misplacement with focus-follows-mouse [Jonas Å.; !1122]
|
||||
* Fix misplaced cursor in preedit strings [Carlos; !1132]
|
||||
* Support mirroring with proprietary Nvidia driver [Jonas Å.; !1098]
|
||||
* Support tablets with multiple mode switch buttons in a group [Carlos; !970]
|
||||
* Ignore foreground color for color glyphs (emojis) [Carlos; !1148]
|
||||
* Allow pad mode switches while showing OSD [Carlos; !975]
|
||||
* Fix positioning of OSD for display-attached tablets [Carlos; !971]
|
||||
* Respect configured RANDR panning on X11 [Jonas Å.; !1085]
|
||||
* Use correct texture filtering with scaled displays [Jonas; !1124]
|
||||
* Fix cursor hotspots in virtual machines [Jonas Å.; !1136]
|
||||
* Fix build with GLES and no GL [Georges; !1151]
|
||||
* Work around Firefox bug when copying images on wayland [Robert; !1141]
|
||||
* Fix wrong cursor rotation on rotated displays [Hans; !1153]
|
||||
* Fix glitches in window screencasts [Georges; !1129]
|
||||
* Fix IM support for deleting surrounding text [Takao, Carlos; #539]
|
||||
* Fix map animation of maximized windows [Robert; !1164]
|
||||
* Fixed crashes [Jonas Å., Carlos, Florian, Robert; !1120, !1121,
|
||||
#917, #1132, #1083, !1147, #1147]
|
||||
* Misc. bug fixes and cleanups [Jonas Å., Olivier, Mart, Sebastian, Corentin,
|
||||
Andre, Daniel, Robert, Carlos, Peter, Georges, Jonas D., Florian, Christian;
|
||||
!1115, !1102, !1104, !1106, !1117, !1119, !1101, !1123, #1124, !1130, !1131,
|
||||
!1133, #1065, !1108, !1144, !1145, !1109, !1059, !1107, !999, !1152, #1128,
|
||||
!1155, !1156, !1158, !1157, #1146, !1161, !1163]
|
||||
|
||||
Contributors:
|
||||
Jonas Dreßler, Olivier Fourdan, Takao Fujiwara, Carlos Garnacho, Andrew Gaul,
|
||||
Hans de Goede, Peter Hutterer, Sebastian Keller, Robert Mader,
|
||||
Andre Moreira Magalhaes, Florian Müllner, Georges Basile Stavracas Neto,
|
||||
Corentin Noël, Pekka Paalanen, Christian Rauch, Mart Raudsepp,
|
||||
Daniel van Vugt, Alynx Zhou, Jonas Ådahl
|
||||
|
||||
Translators:
|
||||
Марко Костић [sr], Daniel Șerbănescu [ro]
|
||||
|
||||
3.36.0
|
||||
======
|
||||
* Fix placement of popup windows in multi-monitor setups [Jonas; !1110]
|
||||
|
@@ -710,6 +710,7 @@ struct _ClutterActorPrivate
|
||||
|
||||
guint8 opacity;
|
||||
gint opacity_override;
|
||||
unsigned int inhibit_culling_counter;
|
||||
|
||||
ClutterOffscreenRedirect offscreen_redirect;
|
||||
|
||||
@@ -2409,6 +2410,7 @@ clutter_actor_should_pick_paint (ClutterActor *self)
|
||||
g_return_val_if_fail (CLUTTER_IS_ACTOR (self), FALSE);
|
||||
|
||||
if (CLUTTER_ACTOR_IS_MAPPED (self) &&
|
||||
clutter_actor_has_allocation (self) &&
|
||||
(_clutter_context_get_pick_mode () == CLUTTER_PICK_ALL ||
|
||||
CLUTTER_ACTOR_IS_REACTIVE (self)))
|
||||
return TRUE;
|
||||
@@ -2602,6 +2604,9 @@ clutter_actor_set_allocation_internal (ClutterActor *self,
|
||||
gboolean retval;
|
||||
ClutterActorBox old_alloc = { 0, };
|
||||
|
||||
g_return_val_if_fail (!isnan (box->x1) && !isnan (box->x2) &&
|
||||
!isnan (box->y1) && !isnan (box->y2), FALSE);
|
||||
|
||||
obj = G_OBJECT (self);
|
||||
|
||||
g_object_freeze_notify (obj);
|
||||
@@ -3951,6 +3956,7 @@ clutter_actor_paint (ClutterActor *self,
|
||||
g_autoptr (ClutterPaintNode) root_node = NULL;
|
||||
ClutterActorPrivate *priv;
|
||||
ClutterActorBox clip;
|
||||
gboolean culling_inhibited;
|
||||
gboolean clip_set = FALSE;
|
||||
|
||||
g_return_if_fail (CLUTTER_IS_ACTOR (self));
|
||||
@@ -4099,7 +4105,8 @@ clutter_actor_paint (ClutterActor *self,
|
||||
* paint then the last-paint-volume would likely represent the new
|
||||
* actor position not the old.
|
||||
*/
|
||||
if (!in_clone_paint ())
|
||||
culling_inhibited = priv->inhibit_culling_counter > 0;
|
||||
if (!culling_inhibited && !in_clone_paint ())
|
||||
{
|
||||
gboolean success;
|
||||
/* annoyingly gcc warns if uninitialized even though
|
||||
@@ -4190,7 +4197,9 @@ clutter_actor_continue_paint (ClutterActor *self,
|
||||
clutter_paint_node_unref (dummy);
|
||||
|
||||
/* XXX:2.0 - Call the paint() virtual directly */
|
||||
if (g_signal_has_handler_pending (self, actor_signals[PAINT],
|
||||
if (!(clutter_paint_context_get_paint_flags (paint_context) &
|
||||
CLUTTER_PAINT_FLAG_NO_PAINT_SIGNAL) &&
|
||||
g_signal_has_handler_pending (self, actor_signals[PAINT],
|
||||
0, TRUE))
|
||||
g_signal_emit (self, actor_signals[PAINT], 0, paint_context);
|
||||
else
|
||||
@@ -10360,6 +10369,11 @@ clutter_actor_allocate (ClutterActor *self,
|
||||
old_allocation = priv->allocation;
|
||||
real_allocation = *box;
|
||||
|
||||
g_return_if_fail (!isnan (real_allocation.x1) &&
|
||||
!isnan (real_allocation.x2) &&
|
||||
!isnan (real_allocation.y1) &&
|
||||
!isnan (real_allocation.y2));
|
||||
|
||||
/* constraints are allowed to modify the allocation only here; we do
|
||||
* this prior to all the other checks so that we can bail out if the
|
||||
* allocation did not change
|
||||
@@ -16002,6 +16016,63 @@ clutter_actor_get_opacity_override (ClutterActor *self)
|
||||
return self->priv->opacity_override;
|
||||
}
|
||||
|
||||
/**
|
||||
* clutter_actor_inhibit_culling:
|
||||
* @actor: a #ClutterActor
|
||||
*
|
||||
* Increases the culling inhibitor counter. Inhibiting culling
|
||||
* forces the actor to be painted even when outside the visible
|
||||
* bounds of the stage view.
|
||||
*
|
||||
* This is usually necessary when an actor is being painted on
|
||||
* another paint context.
|
||||
*
|
||||
* Pair with clutter_actor_uninhibit_culling() when the actor doesn't
|
||||
* need to be painted anymore.
|
||||
*/
|
||||
void
|
||||
clutter_actor_inhibit_culling (ClutterActor *actor)
|
||||
{
|
||||
ClutterActorPrivate *priv;
|
||||
|
||||
g_return_if_fail (CLUTTER_IS_ACTOR (actor));
|
||||
|
||||
priv = actor->priv;
|
||||
|
||||
priv->inhibit_culling_counter++;
|
||||
_clutter_actor_set_enable_paint_unmapped (actor, TRUE);
|
||||
}
|
||||
|
||||
/**
|
||||
* clutter_actor_uninhibit_culling:
|
||||
* @actor: a #ClutterActor
|
||||
*
|
||||
* Decreases the culling inhibitor counter. See clutter_actor_inhibit_culling()
|
||||
* for when inhibit culling is necessary.
|
||||
*
|
||||
* Calling this function without a matching call to
|
||||
* clutter_actor_inhibit_culling() is a programming error.
|
||||
*/
|
||||
void
|
||||
clutter_actor_uninhibit_culling (ClutterActor *actor)
|
||||
{
|
||||
ClutterActorPrivate *priv;
|
||||
|
||||
g_return_if_fail (CLUTTER_IS_ACTOR (actor));
|
||||
|
||||
priv = actor->priv;
|
||||
|
||||
if (priv->inhibit_culling_counter == 0)
|
||||
{
|
||||
g_critical ("Unpaired call to clutter_actor_uninhibit_culling");
|
||||
return;
|
||||
}
|
||||
|
||||
priv->inhibit_culling_counter--;
|
||||
if (priv->inhibit_culling_counter == 0)
|
||||
_clutter_actor_set_enable_paint_unmapped (actor, FALSE);
|
||||
}
|
||||
|
||||
/* Allows you to disable applying the actors model view transform during
|
||||
* a paint. Used by ClutterClone. */
|
||||
void
|
||||
@@ -17715,10 +17786,42 @@ _clutter_actor_compute_resource_scale (ClutterActor *self,
|
||||
resource_scale))
|
||||
{
|
||||
if (priv->parent)
|
||||
return _clutter_actor_compute_resource_scale (priv->parent,
|
||||
resource_scale);
|
||||
{
|
||||
gboolean in_clone_paint;
|
||||
gboolean was_parent_in_clone_paint;
|
||||
gboolean was_parent_unmapped;
|
||||
gboolean was_parent_paint_unmapped;
|
||||
gboolean ret;
|
||||
|
||||
in_clone_paint = clutter_actor_is_in_clone_paint (self);
|
||||
was_parent_unmapped = !clutter_actor_is_mapped (priv->parent);
|
||||
was_parent_in_clone_paint =
|
||||
clutter_actor_is_in_clone_paint (priv->parent);
|
||||
was_parent_paint_unmapped = priv->parent->priv->enable_paint_unmapped;
|
||||
|
||||
if (in_clone_paint && was_parent_unmapped)
|
||||
{
|
||||
_clutter_actor_set_in_clone_paint (priv->parent, TRUE);
|
||||
_clutter_actor_set_enable_paint_unmapped (priv->parent, TRUE);
|
||||
}
|
||||
|
||||
ret = _clutter_actor_compute_resource_scale (priv->parent,
|
||||
resource_scale);
|
||||
|
||||
if (in_clone_paint && was_parent_unmapped)
|
||||
{
|
||||
_clutter_actor_set_in_clone_paint (priv->parent,
|
||||
was_parent_in_clone_paint);
|
||||
_clutter_actor_set_enable_paint_unmapped (priv->parent,
|
||||
was_parent_paint_unmapped);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
else
|
||||
return FALSE;
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
|
@@ -884,6 +884,11 @@ void clutter_actor_set_opacity_override
|
||||
CLUTTER_EXPORT
|
||||
gint clutter_actor_get_opacity_override (ClutterActor *self);
|
||||
|
||||
CLUTTER_EXPORT
|
||||
void clutter_actor_inhibit_culling (ClutterActor *actor);
|
||||
CLUTTER_EXPORT
|
||||
void clutter_actor_uninhibit_culling (ClutterActor *actor);
|
||||
|
||||
/**
|
||||
* ClutterActorCreateChildFunc:
|
||||
* @item: (type GObject): the item in the model
|
||||
|
@@ -475,8 +475,10 @@ get_preferred_size_for_orientation (ClutterBoxLayout *self,
|
||||
ClutterActor *child;
|
||||
gint n_children = 0;
|
||||
gfloat minimum, natural;
|
||||
float largest_min_size, largest_nat_size;
|
||||
|
||||
minimum = natural = 0;
|
||||
largest_min_size = largest_nat_size = 0;
|
||||
|
||||
clutter_actor_iter_init (&iter, container);
|
||||
while (clutter_actor_iter_next (&iter, &child))
|
||||
@@ -491,8 +493,22 @@ get_preferred_size_for_orientation (ClutterBoxLayout *self,
|
||||
get_child_size (child, priv->orientation,
|
||||
for_size, &child_min, &child_nat);
|
||||
|
||||
minimum += child_min;
|
||||
natural += child_nat;
|
||||
if (priv->is_homogeneous)
|
||||
{
|
||||
largest_min_size = MAX (largest_min_size, child_min);
|
||||
largest_nat_size = MAX (largest_nat_size, child_nat);
|
||||
}
|
||||
else
|
||||
{
|
||||
minimum += child_min;
|
||||
natural += child_nat;
|
||||
}
|
||||
}
|
||||
|
||||
if (priv->is_homogeneous)
|
||||
{
|
||||
minimum = largest_min_size * n_children;
|
||||
natural = largest_nat_size * n_children;
|
||||
}
|
||||
|
||||
if (n_children > 1)
|
||||
@@ -623,6 +639,8 @@ get_preferred_size_for_opposite_orientation (ClutterBoxLayout *self,
|
||||
}
|
||||
else
|
||||
{
|
||||
size -= (nvis_children - 1) * priv->spacing;
|
||||
|
||||
/* Bring children up to size first */
|
||||
if (isnormal (size) || size == 0)
|
||||
{
|
||||
|
@@ -346,6 +346,12 @@ on_captured_event (ClutterActor *stage,
|
||||
ClutterModifierType modifier_state;
|
||||
gboolean has_button = TRUE;
|
||||
|
||||
if (!clutter_actor_meta_get_enabled (CLUTTER_ACTOR_META (action)))
|
||||
{
|
||||
clutter_click_action_release (action);
|
||||
return CLUTTER_EVENT_PROPAGATE;
|
||||
}
|
||||
|
||||
actor = clutter_actor_meta_get_actor (CLUTTER_ACTOR_META (action));
|
||||
|
||||
switch (clutter_event_type (event))
|
||||
|
@@ -29,7 +29,7 @@ void clutter_input_focus_focus_out (ClutterInputFocus *focus);
|
||||
void clutter_input_focus_commit (ClutterInputFocus *focus,
|
||||
const gchar *text);
|
||||
void clutter_input_focus_delete_surrounding (ClutterInputFocus *focus,
|
||||
guint offset,
|
||||
int offset,
|
||||
guint len);
|
||||
void clutter_input_focus_request_surrounding (ClutterInputFocus *focus);
|
||||
|
||||
|
@@ -217,7 +217,7 @@ clutter_input_focus_commit (ClutterInputFocus *focus,
|
||||
|
||||
void
|
||||
clutter_input_focus_delete_surrounding (ClutterInputFocus *focus,
|
||||
guint offset,
|
||||
int offset,
|
||||
guint len)
|
||||
{
|
||||
g_return_if_fail (CLUTTER_IS_INPUT_FOCUS (focus));
|
||||
|
@@ -41,7 +41,7 @@ struct _ClutterInputFocusClass
|
||||
|
||||
void (* request_surrounding) (ClutterInputFocus *focus);
|
||||
void (* delete_surrounding) (ClutterInputFocus *focus,
|
||||
guint offset,
|
||||
int offset,
|
||||
guint len);
|
||||
void (* commit_text) (ClutterInputFocus *focus,
|
||||
const gchar *text);
|
||||
|
@@ -168,7 +168,7 @@ clutter_input_method_class_init (ClutterInputMethodClass *klass)
|
||||
G_TYPE_FROM_CLASS (object_class),
|
||||
G_SIGNAL_RUN_LAST,
|
||||
0, NULL, NULL, NULL,
|
||||
G_TYPE_NONE, 2, G_TYPE_UINT, G_TYPE_UINT);
|
||||
G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_UINT);
|
||||
signals[REQUEST_SURROUNDING] =
|
||||
g_signal_new ("request-surrounding",
|
||||
G_TYPE_FROM_CLASS (object_class),
|
||||
@@ -292,7 +292,7 @@ clutter_input_method_commit (ClutterInputMethod *im,
|
||||
|
||||
void
|
||||
clutter_input_method_delete_surrounding (ClutterInputMethod *im,
|
||||
guint offset,
|
||||
int offset,
|
||||
guint len)
|
||||
{
|
||||
ClutterInputMethodPrivate *priv;
|
||||
|
@@ -68,7 +68,7 @@ void clutter_input_method_commit (ClutterInputMethod *im,
|
||||
const gchar *text);
|
||||
CLUTTER_EXPORT
|
||||
void clutter_input_method_delete_surrounding (ClutterInputMethod *im,
|
||||
guint offset,
|
||||
int offset,
|
||||
guint len);
|
||||
CLUTTER_EXPORT
|
||||
void clutter_input_method_request_surrounding (ClutterInputMethod *im);
|
||||
|
@@ -29,10 +29,10 @@
|
||||
* of #ClutterMasterClock.
|
||||
*/
|
||||
|
||||
#include <cogl/cogl-trace.h>
|
||||
|
||||
#include "clutter-build-config.h"
|
||||
|
||||
#include <cogl/cogl.h>
|
||||
|
||||
#include "clutter-master-clock.h"
|
||||
#include "clutter-master-clock-default.h"
|
||||
#include "clutter-debug.h"
|
||||
@@ -190,6 +190,26 @@ master_clock_get_swap_wait_time (ClutterMasterClockDefault *master_clock)
|
||||
}
|
||||
}
|
||||
|
||||
static int64_t
|
||||
master_clock_get_next_presentation_time (ClutterMasterClockDefault *master_clock)
|
||||
{
|
||||
ClutterStageManager *stage_manager = clutter_stage_manager_get_default ();
|
||||
const GSList *stages, *l;
|
||||
int64_t earliest = -1;
|
||||
|
||||
stages = clutter_stage_manager_peek_stages (stage_manager);
|
||||
|
||||
for (l = stages; l != NULL; l = l->next)
|
||||
{
|
||||
gint64 t = _clutter_stage_get_next_presentation_time (l->data);
|
||||
|
||||
if (earliest == -1 || (t != -1 && t < earliest))
|
||||
earliest = t;
|
||||
}
|
||||
|
||||
return earliest;
|
||||
}
|
||||
|
||||
static void
|
||||
master_clock_schedule_stage_updates (ClutterMasterClockDefault *master_clock)
|
||||
{
|
||||
@@ -466,7 +486,11 @@ clutter_clock_dispatch (GSource *source,
|
||||
COGL_TRACE_BEGIN (ClutterMasterClockTick, "Master Clock (tick)");
|
||||
|
||||
/* Get the time to use for this frame */
|
||||
master_clock->cur_tick = g_source_get_time (source);
|
||||
master_clock->cur_tick = master_clock_get_next_presentation_time (master_clock);
|
||||
|
||||
/* On the first frame the backend might not have an answer */
|
||||
if (master_clock->cur_tick <= 0)
|
||||
master_clock->cur_tick = g_source_get_time (source);
|
||||
|
||||
#ifdef CLUTTER_ENABLE_DEBUG
|
||||
master_clock->remaining_budget = master_clock->frame_budget;
|
||||
|
@@ -30,6 +30,7 @@
|
||||
#include "clutter-input-device-private.h"
|
||||
#include "clutter-input-pointer-a11y-private.h"
|
||||
#include "clutter-macros.h"
|
||||
#include "clutter-paint-context-private.h"
|
||||
#include "clutter-private.h"
|
||||
#include "clutter-stage-private.h"
|
||||
#include "clutter-stage-view.h"
|
||||
@@ -48,6 +49,23 @@ void clutter_stage_capture_into (ClutterStage *stage,
|
||||
cairo_rectangle_int_t *rect,
|
||||
uint8_t *data);
|
||||
|
||||
CLUTTER_EXPORT
|
||||
void clutter_stage_paint_to_framebuffer (ClutterStage *stage,
|
||||
CoglFramebuffer *framebuffer,
|
||||
const cairo_rectangle_int_t *rect,
|
||||
float scale,
|
||||
ClutterPaintFlag paint_flags);
|
||||
|
||||
CLUTTER_EXPORT
|
||||
gboolean clutter_stage_paint_to_buffer (ClutterStage *stage,
|
||||
const cairo_rectangle_int_t *rect,
|
||||
float scale,
|
||||
uint8_t *data,
|
||||
int stride,
|
||||
CoglPixelFormat format,
|
||||
ClutterPaintFlag paint_flags,
|
||||
GError **error);
|
||||
|
||||
CLUTTER_EXPORT
|
||||
void clutter_stage_freeze_updates (ClutterStage *stage);
|
||||
|
||||
|
@@ -20,11 +20,22 @@
|
||||
|
||||
#include "clutter-paint-context.h"
|
||||
|
||||
typedef enum _ClutterPaintFlag
|
||||
{
|
||||
CLUTTER_PAINT_FLAG_NONE = 0,
|
||||
CLUTTER_PAINT_FLAG_NO_CURSORS = 1 << 0,
|
||||
CLUTTER_PAINT_FLAG_NO_PAINT_SIGNAL = 1 << 1,
|
||||
} ClutterPaintFlag;
|
||||
|
||||
ClutterPaintContext * clutter_paint_context_new_for_view (ClutterStageView *view,
|
||||
const cairo_region_t *redraw_clip);
|
||||
const cairo_region_t *redraw_clip,
|
||||
ClutterPaintFlag paint_flags);
|
||||
|
||||
gboolean clutter_paint_context_is_drawing_off_stage (ClutterPaintContext *paint_context);
|
||||
|
||||
CoglFramebuffer * clutter_paint_context_get_base_framebuffer (ClutterPaintContext *paint_context);
|
||||
|
||||
CLUTTER_EXPORT
|
||||
ClutterPaintFlag clutter_paint_context_get_paint_flags (ClutterPaintContext *paint_context);
|
||||
|
||||
#endif /* CLUTTER_PAINT_CONTEXT_PRIVATE_H */
|
||||
|
@@ -23,6 +23,8 @@ struct _ClutterPaintContext
|
||||
{
|
||||
grefcount ref_count;
|
||||
|
||||
ClutterPaintFlag paint_flags;
|
||||
|
||||
GList *framebuffers;
|
||||
|
||||
ClutterStageView *view;
|
||||
@@ -36,7 +38,8 @@ G_DEFINE_BOXED_TYPE (ClutterPaintContext, clutter_paint_context,
|
||||
|
||||
ClutterPaintContext *
|
||||
clutter_paint_context_new_for_view (ClutterStageView *view,
|
||||
const cairo_region_t *redraw_clip)
|
||||
const cairo_region_t *redraw_clip,
|
||||
ClutterPaintFlag paint_flags)
|
||||
{
|
||||
ClutterPaintContext *paint_context;
|
||||
CoglFramebuffer *framebuffer;
|
||||
@@ -45,6 +48,7 @@ clutter_paint_context_new_for_view (ClutterStageView *view,
|
||||
g_ref_count_init (&paint_context->ref_count);
|
||||
paint_context->view = view;
|
||||
paint_context->redraw_clip = cairo_region_copy (redraw_clip);
|
||||
paint_context->paint_flags = paint_flags;
|
||||
|
||||
framebuffer = clutter_stage_view_get_framebuffer (view);
|
||||
clutter_paint_context_push_framebuffer (paint_context, framebuffer);
|
||||
@@ -62,6 +66,8 @@ clutter_paint_context_new_for_framebuffer (CoglFramebuffer *framebuffer)
|
||||
|
||||
paint_context = g_new0 (ClutterPaintContext, 1);
|
||||
g_ref_count_init (&paint_context->ref_count);
|
||||
paint_context->paint_flags = (CLUTTER_PAINT_FLAG_NO_CURSORS |
|
||||
CLUTTER_PAINT_FLAG_NO_PAINT_SIGNAL);
|
||||
|
||||
clutter_paint_context_push_framebuffer (paint_context, framebuffer);
|
||||
|
||||
@@ -170,3 +176,12 @@ clutter_paint_context_is_drawing_off_stage (ClutterPaintContext *paint_context)
|
||||
|
||||
return !paint_context->view;
|
||||
}
|
||||
|
||||
/**
|
||||
* clutter_paint_context_get_paint_flags: (skip)
|
||||
*/
|
||||
ClutterPaintFlag
|
||||
clutter_paint_context_get_paint_flags (ClutterPaintContext *paint_context)
|
||||
{
|
||||
return paint_context->paint_flags;
|
||||
}
|
||||
|
@@ -682,7 +682,6 @@ clutter_seat_warp_pointer (ClutterSeat *seat,
|
||||
* requirements are fulfilled:
|
||||
*
|
||||
* - A touchscreen is available
|
||||
* - No external keyboard is attached to the device
|
||||
* - A tablet mode switch, if present, is enabled
|
||||
*
|
||||
* Returns: %TRUE if the device is a tablet that doesn't have an external
|
||||
|
@@ -78,6 +78,7 @@ void _clutter_stage_schedule_update (ClutterStage *stage);
|
||||
gint64 _clutter_stage_get_update_time (ClutterStage *stage);
|
||||
void _clutter_stage_clear_update_time (ClutterStage *stage);
|
||||
gboolean _clutter_stage_has_full_redraw_queued (ClutterStage *stage);
|
||||
int64_t _clutter_stage_get_next_presentation_time (ClutterStage *stage);
|
||||
|
||||
void clutter_stage_log_pick (ClutterStage *stage,
|
||||
const graphene_point_t *vertices,
|
||||
|
@@ -178,6 +178,22 @@ _clutter_stage_window_clear_update_time (ClutterStageWindow *window)
|
||||
iface->clear_update_time (window);
|
||||
}
|
||||
|
||||
int64_t
|
||||
_clutter_stage_window_get_next_presentation_time (ClutterStageWindow *window)
|
||||
{
|
||||
ClutterStageWindowInterface *iface;
|
||||
|
||||
g_return_val_if_fail (CLUTTER_IS_STAGE_WINDOW (window), 0);
|
||||
|
||||
iface = CLUTTER_STAGE_WINDOW_GET_IFACE (window);
|
||||
|
||||
/* If not implemented then just revert to the old behaviour... */
|
||||
if (iface->get_next_presentation_time == NULL)
|
||||
return _clutter_stage_window_get_update_time (window);
|
||||
|
||||
return iface->get_next_presentation_time (window);
|
||||
}
|
||||
|
||||
void
|
||||
_clutter_stage_window_set_accept_focus (ClutterStageWindow *window,
|
||||
gboolean accept_focus)
|
||||
|
@@ -61,6 +61,8 @@ struct _ClutterStageWindowInterface
|
||||
GList *(* get_views) (ClutterStageWindow *stage_window);
|
||||
int64_t (* get_frame_counter) (ClutterStageWindow *stage_window);
|
||||
void (* finish_frame) (ClutterStageWindow *stage_window);
|
||||
|
||||
int64_t (* get_next_presentation_time) (ClutterStageWindow *stage_window);
|
||||
};
|
||||
|
||||
ClutterActor * _clutter_stage_window_get_wrapper (ClutterStageWindow *window);
|
||||
@@ -101,6 +103,8 @@ void _clutter_stage_window_finish_frame (ClutterStageWin
|
||||
|
||||
int64_t _clutter_stage_window_get_frame_counter (ClutterStageWindow *window);
|
||||
|
||||
int64_t _clutter_stage_window_get_next_presentation_time (ClutterStageWindow *window);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __CLUTTER_STAGE_WINDOW_H__ */
|
||||
|
@@ -78,7 +78,6 @@
|
||||
#include "clutter-private.h"
|
||||
|
||||
#include "cogl/cogl.h"
|
||||
#include "cogl/cogl-trace.h"
|
||||
|
||||
struct _ClutterStageQueueRedrawEntry
|
||||
{
|
||||
@@ -935,7 +934,8 @@ clutter_stage_do_paint_view (ClutterStage *stage,
|
||||
ClutterPaintContext *paint_context;
|
||||
cairo_rectangle_int_t clip_rect;
|
||||
|
||||
paint_context = clutter_paint_context_new_for_view (view, redraw_clip);
|
||||
paint_context = clutter_paint_context_new_for_view (view, redraw_clip,
|
||||
CLUTTER_PAINT_FLAG_NONE);
|
||||
|
||||
cairo_region_get_extents (redraw_clip, &clip_rect);
|
||||
setup_view_for_pick_or_paint (stage, view, &clip_rect);
|
||||
@@ -1321,15 +1321,9 @@ clutter_stage_queue_actor_relayout (ClutterStage *stage,
|
||||
{
|
||||
ClutterStagePrivate *priv = stage->priv;
|
||||
|
||||
if (g_hash_table_contains (priv->pending_relayouts, stage))
|
||||
return;
|
||||
|
||||
if (g_hash_table_size (priv->pending_relayouts) == 0)
|
||||
_clutter_stage_schedule_update (stage);
|
||||
|
||||
if (actor == (ClutterActor *) stage)
|
||||
g_hash_table_remove_all (priv->pending_relayouts);
|
||||
|
||||
g_hash_table_add (priv->pending_relayouts, g_object_ref (actor));
|
||||
priv->pending_relayouts_version++;
|
||||
}
|
||||
@@ -3752,6 +3746,21 @@ _clutter_stage_clear_update_time (ClutterStage *stage)
|
||||
_clutter_stage_window_clear_update_time (stage_window);
|
||||
}
|
||||
|
||||
int64_t
|
||||
_clutter_stage_get_next_presentation_time (ClutterStage *stage)
|
||||
{
|
||||
ClutterStageWindow *stage_window;
|
||||
|
||||
if (CLUTTER_ACTOR_IN_DESTRUCTION (stage))
|
||||
return 0;
|
||||
|
||||
stage_window = _clutter_stage_get_window (stage);
|
||||
if (stage_window == NULL)
|
||||
return 0;
|
||||
|
||||
return _clutter_stage_window_get_next_presentation_time (stage_window);
|
||||
}
|
||||
|
||||
ClutterPaintVolume *
|
||||
_clutter_stage_paint_volume_stack_allocate (ClutterStage *stage)
|
||||
{
|
||||
@@ -4349,6 +4358,20 @@ capture_view (ClutterStage *stage,
|
||||
cairo_surface_mark_dirty (capture->image);
|
||||
}
|
||||
|
||||
/**
|
||||
* clutter_stage_capture:
|
||||
* @stage: a #ClutterStage
|
||||
* @paint: whether to pain the frame
|
||||
* @rect: a #cairo_rectangle_int_t in stage coordinates
|
||||
* @out_captures: (out) (array length=out_n_captures): an array of
|
||||
* #ClutterCapture
|
||||
* @out_n_captures: (out): the number of captures in @out_captures
|
||||
*
|
||||
* Captures the stage pixels of @rect into @captures. @rect is in stage
|
||||
* coordinates.
|
||||
*
|
||||
* Returns: %TRUE if a #ClutterCapture has been created, %FALSE otherwise
|
||||
*/
|
||||
gboolean
|
||||
clutter_stage_capture (ClutterStage *stage,
|
||||
gboolean paint,
|
||||
@@ -4450,6 +4473,100 @@ clutter_stage_get_capture_final_size (ClutterStage *stage,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/**
|
||||
* clutter_stage_paint_to_framebuffer: (skip)
|
||||
*/
|
||||
void
|
||||
clutter_stage_paint_to_framebuffer (ClutterStage *stage,
|
||||
CoglFramebuffer *framebuffer,
|
||||
const cairo_rectangle_int_t *rect,
|
||||
float scale,
|
||||
ClutterPaintFlag paint_flags)
|
||||
{
|
||||
ClutterStagePrivate *priv = stage->priv;
|
||||
ClutterPaintContext *paint_context;
|
||||
cairo_region_t *redraw_clip;
|
||||
|
||||
redraw_clip = cairo_region_create_rectangle (rect);
|
||||
paint_context = clutter_paint_context_new_for_framebuffer (framebuffer);
|
||||
cairo_region_destroy (redraw_clip);
|
||||
|
||||
cogl_framebuffer_push_matrix (framebuffer);
|
||||
cogl_framebuffer_set_projection_matrix (framebuffer, &priv->projection);
|
||||
cogl_framebuffer_set_viewport (framebuffer,
|
||||
-(rect->x * scale),
|
||||
-(rect->y * scale),
|
||||
priv->viewport[2] * scale,
|
||||
priv->viewport[3] * scale);
|
||||
clutter_actor_paint (CLUTTER_ACTOR (stage), paint_context);
|
||||
cogl_framebuffer_pop_matrix (framebuffer);
|
||||
|
||||
clutter_paint_context_destroy (paint_context);
|
||||
}
|
||||
|
||||
/**
|
||||
* clutter_stage_paint_to_buffer: (skip)
|
||||
*/
|
||||
gboolean
|
||||
clutter_stage_paint_to_buffer (ClutterStage *stage,
|
||||
const cairo_rectangle_int_t *rect,
|
||||
float scale,
|
||||
uint8_t *data,
|
||||
int stride,
|
||||
CoglPixelFormat format,
|
||||
ClutterPaintFlag paint_flags,
|
||||
GError **error)
|
||||
{
|
||||
ClutterBackend *clutter_backend = clutter_get_default_backend ();
|
||||
CoglContext *cogl_context =
|
||||
clutter_backend_get_cogl_context (clutter_backend);
|
||||
int texture_width, texture_height;
|
||||
CoglTexture2D *texture;
|
||||
CoglOffscreen *offscreen;
|
||||
CoglFramebuffer *framebuffer;
|
||||
CoglBitmap *bitmap;
|
||||
|
||||
texture_width = (int) roundf (rect->width * scale);
|
||||
texture_height = (int) roundf (rect->height * scale);
|
||||
texture = cogl_texture_2d_new_with_size (cogl_context,
|
||||
texture_width,
|
||||
texture_height);
|
||||
if (!texture)
|
||||
{
|
||||
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
|
||||
"Failed to create %dx%d texture",
|
||||
texture_width, texture_height);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
offscreen = cogl_offscreen_new_with_texture (COGL_TEXTURE (texture));
|
||||
framebuffer = COGL_FRAMEBUFFER (offscreen);
|
||||
|
||||
cogl_object_unref (texture);
|
||||
|
||||
if (!cogl_framebuffer_allocate (framebuffer, error))
|
||||
return FALSE;
|
||||
|
||||
clutter_stage_paint_to_framebuffer (stage, framebuffer,
|
||||
rect, scale, paint_flags);
|
||||
|
||||
bitmap = cogl_bitmap_new_for_data (cogl_context,
|
||||
texture_width, texture_height,
|
||||
format,
|
||||
stride,
|
||||
data);
|
||||
|
||||
cogl_framebuffer_read_pixels_into_bitmap (framebuffer,
|
||||
0, 0,
|
||||
COGL_READ_PIXELS_COLOR_BUFFER,
|
||||
bitmap);
|
||||
|
||||
cogl_object_unref (bitmap);
|
||||
cogl_object_unref (framebuffer);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
capture_view_into (ClutterStage *stage,
|
||||
gboolean paint,
|
||||
@@ -4458,50 +4575,17 @@ capture_view_into (ClutterStage *stage,
|
||||
uint8_t *data,
|
||||
int stride)
|
||||
{
|
||||
CoglFramebuffer *framebuffer;
|
||||
ClutterBackend *backend;
|
||||
CoglContext *context;
|
||||
CoglBitmap *bitmap;
|
||||
cairo_rectangle_int_t view_layout;
|
||||
g_autoptr (GError) error = NULL;
|
||||
float view_scale;
|
||||
float texture_width;
|
||||
float texture_height;
|
||||
|
||||
g_return_if_fail (CLUTTER_IS_STAGE (stage));
|
||||
|
||||
framebuffer = clutter_stage_view_get_framebuffer (view);
|
||||
|
||||
if (paint)
|
||||
{
|
||||
cairo_region_t *region;
|
||||
|
||||
_clutter_stage_maybe_setup_viewport (stage, view);
|
||||
region = cairo_region_create_rectangle (rect);
|
||||
clutter_stage_do_paint_view (stage, view, region);
|
||||
cairo_region_destroy (region);
|
||||
}
|
||||
|
||||
view_scale = clutter_stage_view_get_scale (view);
|
||||
texture_width = roundf (rect->width * view_scale);
|
||||
texture_height = roundf (rect->height * view_scale);
|
||||
|
||||
backend = clutter_get_default_backend ();
|
||||
context = clutter_backend_get_cogl_context (backend);
|
||||
bitmap = cogl_bitmap_new_for_data (context,
|
||||
texture_width, texture_height,
|
||||
CLUTTER_CAIRO_FORMAT_ARGB32,
|
||||
stride,
|
||||
data);
|
||||
|
||||
clutter_stage_view_get_layout (view, &view_layout);
|
||||
|
||||
cogl_framebuffer_read_pixels_into_bitmap (framebuffer,
|
||||
roundf ((rect->x - view_layout.x) * view_scale),
|
||||
roundf ((rect->y - view_layout.y) * view_scale),
|
||||
COGL_READ_PIXELS_COLOR_BUFFER,
|
||||
bitmap);
|
||||
|
||||
cogl_object_unref (bitmap);
|
||||
if (!clutter_stage_paint_to_buffer (stage, rect, view_scale, data, stride,
|
||||
CLUTTER_CAIRO_FORMAT_ARGB32,
|
||||
CLUTTER_PAINT_FLAG_NO_CURSORS,
|
||||
&error))
|
||||
g_warning ("Failed to capture stage: %s", error->message);
|
||||
}
|
||||
|
||||
void
|
||||
|
@@ -233,8 +233,8 @@ CLUTTER_EXPORT
|
||||
gboolean clutter_stage_capture (ClutterStage *stage,
|
||||
gboolean paint,
|
||||
cairo_rectangle_int_t *rect,
|
||||
ClutterCapture **captures,
|
||||
int *n_captures);
|
||||
ClutterCapture **out_captures,
|
||||
int *out_n_captures);
|
||||
CLUTTER_EXPORT
|
||||
ClutterStageView * clutter_stage_get_view_at (ClutterStage *stage,
|
||||
float x,
|
||||
|
@@ -348,13 +348,23 @@ clutter_text_input_focus_request_surrounding (ClutterInputFocus *focus)
|
||||
|
||||
static void
|
||||
clutter_text_input_focus_delete_surrounding (ClutterInputFocus *focus,
|
||||
guint offset,
|
||||
int offset,
|
||||
guint len)
|
||||
{
|
||||
ClutterText *clutter_text = CLUTTER_TEXT_INPUT_FOCUS (focus)->text;
|
||||
int cursor;
|
||||
int start;
|
||||
|
||||
cursor = clutter_text_get_cursor_position (clutter_text);
|
||||
start = cursor + offset;
|
||||
if (start < 0)
|
||||
{
|
||||
g_warning ("The offset '%d' of deleting surrounding is larger than the cursor pos '%d'",
|
||||
offset, cursor);
|
||||
return;
|
||||
}
|
||||
if (clutter_text_get_editable (clutter_text))
|
||||
clutter_text_delete_text (clutter_text, offset, len);
|
||||
clutter_text_delete_text (clutter_text, start, len);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@@ -47,8 +47,6 @@
|
||||
#include "clutter-stage-private.h"
|
||||
#include "clutter-stage-view-private.h"
|
||||
|
||||
#include "cogl/cogl-trace.h"
|
||||
|
||||
#define MAX_STACK_RECTS 256
|
||||
|
||||
typedef struct _ClutterStageViewCoglPrivate
|
||||
@@ -237,7 +235,12 @@ clutter_stage_cogl_schedule_update (ClutterStageWindow *stage_window,
|
||||
stage_cogl->update_time = next_presentation_time - max_render_time_allowed;
|
||||
|
||||
if (stage_cogl->update_time == stage_cogl->last_update_time)
|
||||
stage_cogl->update_time = stage_cogl->last_update_time + refresh_interval;
|
||||
{
|
||||
stage_cogl->update_time += refresh_interval;
|
||||
next_presentation_time += refresh_interval;
|
||||
}
|
||||
|
||||
stage_cogl->next_presentation_time = next_presentation_time;
|
||||
}
|
||||
|
||||
static gint64
|
||||
@@ -258,6 +261,29 @@ clutter_stage_cogl_clear_update_time (ClutterStageWindow *stage_window)
|
||||
|
||||
stage_cogl->last_update_time = stage_cogl->update_time;
|
||||
stage_cogl->update_time = -1;
|
||||
stage_cogl->next_presentation_time = -1;
|
||||
}
|
||||
|
||||
static int64_t
|
||||
clutter_stage_cogl_get_next_presentation_time (ClutterStageWindow *stage_window)
|
||||
{
|
||||
ClutterStageCogl *stage_cogl = CLUTTER_STAGE_COGL (stage_window);
|
||||
int64_t now = g_get_monotonic_time ();
|
||||
|
||||
if (stage_cogl->next_presentation_time > 0 &&
|
||||
stage_cogl->next_presentation_time <= now)
|
||||
{
|
||||
CLUTTER_NOTE (BACKEND,
|
||||
"Missed some frames. Something blocked for over "
|
||||
"%" G_GINT64_FORMAT "ms.",
|
||||
(now - stage_cogl->next_presentation_time) / 1000);
|
||||
|
||||
stage_cogl->update_time = -1;
|
||||
clutter_stage_cogl_schedule_update (stage_window,
|
||||
stage_cogl->last_sync_delay);
|
||||
}
|
||||
|
||||
return stage_cogl->next_presentation_time;
|
||||
}
|
||||
|
||||
static ClutterActor *
|
||||
@@ -377,15 +403,11 @@ static gboolean
|
||||
swap_framebuffer (ClutterStageWindow *stage_window,
|
||||
ClutterStageView *view,
|
||||
cairo_region_t *swap_region,
|
||||
gboolean swap_with_damage,
|
||||
cairo_region_t *queued_redraw_clip)
|
||||
gboolean swap_with_damage)
|
||||
{
|
||||
CoglFramebuffer *framebuffer = clutter_stage_view_get_onscreen (view);
|
||||
int *damage, n_rects, i;
|
||||
|
||||
if (G_UNLIKELY ((clutter_paint_debug_flags & CLUTTER_DEBUG_PAINT_DAMAGE_REGION)))
|
||||
paint_damage_region (stage_window, view, swap_region, queued_redraw_clip);
|
||||
|
||||
n_rects = cairo_region_num_rectangles (swap_region);
|
||||
damage = g_newa (int, n_rects * 4);
|
||||
for (i = 0; i < n_rects; i++)
|
||||
@@ -622,7 +644,7 @@ clutter_stage_cogl_redraw_view (ClutterStageWindow *stage_window,
|
||||
gboolean swap_with_damage;
|
||||
ClutterActor *wrapper;
|
||||
cairo_region_t *redraw_clip;
|
||||
cairo_region_t *queued_redraw_clip;
|
||||
cairo_region_t *queued_redraw_clip = NULL;
|
||||
cairo_region_t *fb_clip_region;
|
||||
cairo_region_t *swap_region;
|
||||
cairo_rectangle_int_t redraw_rect;
|
||||
@@ -630,6 +652,7 @@ clutter_stage_cogl_redraw_view (ClutterStageWindow *stage_window,
|
||||
float fb_scale;
|
||||
int subpixel_compensation = 0;
|
||||
int fb_width, fb_height;
|
||||
int buffer_age;
|
||||
|
||||
wrapper = CLUTTER_ACTOR (stage_cogl->wrapper);
|
||||
|
||||
@@ -645,6 +668,8 @@ clutter_stage_cogl_redraw_view (ClutterStageWindow *stage_window,
|
||||
has_buffer_age = cogl_is_onscreen (fb) && is_buffer_age_enabled ();
|
||||
|
||||
redraw_clip = clutter_stage_view_take_redraw_clip (view);
|
||||
if (G_UNLIKELY (clutter_paint_debug_flags & CLUTTER_DEBUG_PAINT_DAMAGE_REGION))
|
||||
queued_redraw_clip = cairo_region_copy (redraw_clip);
|
||||
|
||||
/* NB: a NULL redraw clip == full stage redraw */
|
||||
if (!redraw_clip)
|
||||
@@ -652,16 +677,26 @@ clutter_stage_cogl_redraw_view (ClutterStageWindow *stage_window,
|
||||
else
|
||||
is_full_redraw = FALSE;
|
||||
|
||||
may_use_clipped_redraw = FALSE;
|
||||
if (_clutter_stage_window_can_clip_redraws (stage_window) &&
|
||||
(can_blit_sub_buffer || has_buffer_age) &&
|
||||
!is_full_redraw &&
|
||||
/* some drivers struggle to get going and produce some junk
|
||||
* frames when starting up... */
|
||||
cogl_onscreen_get_frame_counter (COGL_ONSCREEN (fb)) > 3)
|
||||
{
|
||||
may_use_clipped_redraw = TRUE;
|
||||
may_use_clipped_redraw =
|
||||
_clutter_stage_window_can_clip_redraws (stage_window) &&
|
||||
(can_blit_sub_buffer || has_buffer_age) &&
|
||||
!is_full_redraw &&
|
||||
/* some drivers struggle to get going and produce some junk
|
||||
* frames when starting up... */
|
||||
cogl_onscreen_get_frame_counter (COGL_ONSCREEN (fb)) > 3;
|
||||
|
||||
if (has_buffer_age)
|
||||
{
|
||||
buffer_age = cogl_onscreen_get_buffer_age (COGL_ONSCREEN (fb));
|
||||
if (!valid_buffer_age (view_cogl, buffer_age))
|
||||
{
|
||||
CLUTTER_NOTE (CLIPPING, "Invalid back buffer(age=%d): forcing full redraw\n", buffer_age);
|
||||
may_use_clipped_redraw = FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
if (may_use_clipped_redraw)
|
||||
{
|
||||
fb_clip_region = offset_scale_and_clamp_region (redraw_clip,
|
||||
-view_rect.x,
|
||||
-view_rect.y,
|
||||
@@ -702,8 +737,6 @@ clutter_stage_cogl_redraw_view (ClutterStageWindow *stage_window,
|
||||
redraw_clip = cairo_region_create_rectangle (&view_rect);
|
||||
}
|
||||
|
||||
queued_redraw_clip = cairo_region_copy (redraw_clip);
|
||||
|
||||
if (may_use_clipped_redraw &&
|
||||
G_LIKELY (!(clutter_paint_debug_flags & CLUTTER_DEBUG_DISABLE_CLIPPED_REDRAWS)))
|
||||
use_clipped_redraw = TRUE;
|
||||
@@ -717,64 +750,43 @@ clutter_stage_cogl_redraw_view (ClutterStageWindow *stage_window,
|
||||
{
|
||||
if (use_clipped_redraw && !clip_region_empty)
|
||||
{
|
||||
int age;
|
||||
cairo_region_t *fb_damage;
|
||||
cairo_region_t *view_damage;
|
||||
int i;
|
||||
|
||||
age = cogl_onscreen_get_buffer_age (COGL_ONSCREEN (fb));
|
||||
fill_current_damage_history (view, fb_clip_region);
|
||||
|
||||
if (valid_buffer_age (view_cogl, age))
|
||||
fb_damage = cairo_region_create ();
|
||||
|
||||
for (i = 1; i <= buffer_age; i++)
|
||||
{
|
||||
cairo_region_t *fb_damage;
|
||||
cairo_region_t *view_damage;
|
||||
int i;
|
||||
int damage_index;
|
||||
|
||||
fill_current_damage_history (view, fb_clip_region);
|
||||
|
||||
fb_damage = cairo_region_create ();
|
||||
|
||||
for (i = 1; i <= age; i++)
|
||||
{
|
||||
int damage_index;
|
||||
|
||||
damage_index = DAMAGE_HISTORY (view_priv->damage_index - i - 1);
|
||||
cairo_region_union (fb_damage,
|
||||
view_priv->damage_history[damage_index]);
|
||||
}
|
||||
|
||||
/* Update the fb clip region with the extra damage. */
|
||||
cairo_region_union (fb_clip_region, fb_damage);
|
||||
|
||||
view_damage = offset_scale_and_clamp_region (fb_damage,
|
||||
0, 0,
|
||||
1.0f / fb_scale);
|
||||
cairo_region_translate (view_damage, view_rect.x, view_rect.y);
|
||||
cairo_region_intersect_rectangle (view_damage, &view_rect);
|
||||
|
||||
/* Update the redraw clip region with the extra damage. */
|
||||
cairo_region_union (redraw_clip, view_damage);
|
||||
|
||||
cairo_region_destroy (view_damage);
|
||||
cairo_region_destroy (fb_damage);
|
||||
|
||||
CLUTTER_NOTE (CLIPPING, "Reusing back buffer(age=%d) - repairing region: num rects: %d\n",
|
||||
age,
|
||||
cairo_region_num_rectangles (fb_clip_region));
|
||||
|
||||
swap_with_damage = TRUE;
|
||||
damage_index = DAMAGE_HISTORY (view_priv->damage_index - i - 1);
|
||||
cairo_region_union (fb_damage,
|
||||
view_priv->damage_history[damage_index]);
|
||||
}
|
||||
else
|
||||
{
|
||||
cairo_rectangle_int_t fb_damage;
|
||||
|
||||
CLUTTER_NOTE (CLIPPING, "Invalid back buffer(age=%d): forcing full redraw\n", age);
|
||||
use_clipped_redraw = FALSE;
|
||||
fb_damage = (cairo_rectangle_int_t) {
|
||||
.x = 0,
|
||||
.y = 0,
|
||||
.width = ceilf (view_rect.width * fb_scale),
|
||||
.height = ceilf (view_rect.height * fb_scale)
|
||||
};
|
||||
fill_current_damage_history_rectangle (view, &fb_damage);
|
||||
}
|
||||
/* Update the fb clip region with the extra damage. */
|
||||
cairo_region_union (fb_clip_region, fb_damage);
|
||||
|
||||
view_damage = offset_scale_and_clamp_region (fb_damage,
|
||||
0, 0,
|
||||
1.0f / fb_scale);
|
||||
cairo_region_translate (view_damage, view_rect.x, view_rect.y);
|
||||
cairo_region_intersect_rectangle (view_damage, &view_rect);
|
||||
|
||||
/* Update the redraw clip region with the extra damage. */
|
||||
cairo_region_union (redraw_clip, view_damage);
|
||||
|
||||
cairo_region_destroy (view_damage);
|
||||
cairo_region_destroy (fb_damage);
|
||||
|
||||
CLUTTER_NOTE (CLIPPING, "Reusing back buffer(age=%d) - repairing region: num rects: %d\n",
|
||||
buffer_age,
|
||||
cairo_region_num_rectangles (fb_clip_region));
|
||||
|
||||
swap_with_damage = TRUE;
|
||||
}
|
||||
else if (!use_clipped_redraw)
|
||||
{
|
||||
@@ -934,7 +946,6 @@ clutter_stage_cogl_redraw_view (ClutterStageWindow *stage_window,
|
||||
}
|
||||
|
||||
g_clear_pointer (&redraw_clip, cairo_region_destroy);
|
||||
g_clear_pointer (&queued_redraw_clip, cairo_region_destroy);
|
||||
g_clear_pointer (&fb_clip_region, cairo_region_destroy);
|
||||
|
||||
if (do_swap_buffer)
|
||||
@@ -955,11 +966,17 @@ clutter_stage_cogl_redraw_view (ClutterStageWindow *stage_window,
|
||||
swap_region = transformed_swap_region;
|
||||
}
|
||||
|
||||
if (queued_redraw_clip)
|
||||
{
|
||||
paint_damage_region (stage_window, view,
|
||||
swap_region, queued_redraw_clip);
|
||||
cairo_region_destroy (queued_redraw_clip);
|
||||
}
|
||||
|
||||
res = swap_framebuffer (stage_window,
|
||||
view,
|
||||
swap_region,
|
||||
swap_with_damage,
|
||||
queued_redraw_clip);
|
||||
swap_with_damage);
|
||||
|
||||
cairo_region_destroy (swap_region);
|
||||
|
||||
@@ -967,6 +984,7 @@ clutter_stage_cogl_redraw_view (ClutterStageWindow *stage_window,
|
||||
}
|
||||
else
|
||||
{
|
||||
g_clear_pointer (&queued_redraw_clip, cairo_region_destroy);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
@@ -1020,6 +1038,7 @@ clutter_stage_window_iface_init (ClutterStageWindowInterface *iface)
|
||||
iface->schedule_update = clutter_stage_cogl_schedule_update;
|
||||
iface->get_update_time = clutter_stage_cogl_get_update_time;
|
||||
iface->clear_update_time = clutter_stage_cogl_clear_update_time;
|
||||
iface->get_next_presentation_time = clutter_stage_cogl_get_next_presentation_time;
|
||||
iface->redraw = clutter_stage_cogl_redraw;
|
||||
}
|
||||
|
||||
@@ -1065,6 +1084,7 @@ _clutter_stage_cogl_init (ClutterStageCogl *stage)
|
||||
stage->refresh_rate = 0.0;
|
||||
|
||||
stage->update_time = -1;
|
||||
stage->next_presentation_time = -1;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@@ -48,6 +48,7 @@ struct _ClutterStageCogl
|
||||
gint64 last_presentation_time;
|
||||
gint64 update_time;
|
||||
int64_t last_update_time;
|
||||
int64_t next_presentation_time;
|
||||
|
||||
/* We only enable clipped redraws after 2 frames, since we've seen
|
||||
* a lot of drivers can struggle to get going and may output some
|
||||
|
@@ -81,6 +81,7 @@ struct _CoglPangoDisplayListNode
|
||||
GArray *rectangles;
|
||||
/* A primitive representing those vertices */
|
||||
CoglPrimitive *primitive;
|
||||
guint has_color : 1;
|
||||
} texture;
|
||||
|
||||
struct
|
||||
@@ -420,7 +421,9 @@ _cogl_pango_display_list_render (CoglFramebuffer *fb,
|
||||
cogl_color_get_red_byte (&node->color),
|
||||
cogl_color_get_green_byte (&node->color),
|
||||
cogl_color_get_blue_byte (&node->color),
|
||||
cogl_color_get_alpha_byte (color));
|
||||
(cogl_color_get_alpha_byte (&node->color) *
|
||||
cogl_color_get_alpha_byte (color) /
|
||||
255));
|
||||
else
|
||||
draw_color = *color;
|
||||
cogl_color_premultiply (&draw_color);
|
||||
|
@@ -58,27 +58,29 @@ struct _CoglPangoGlyphCacheValue
|
||||
|
||||
/* This will be set to TRUE when the glyph atlas is reorganized
|
||||
which means the glyph will need to be redrawn */
|
||||
gboolean dirty;
|
||||
guint dirty : 1;
|
||||
/* Set to TRUE if the glyph has colors (eg. emoji) */
|
||||
guint has_color : 1;
|
||||
};
|
||||
|
||||
typedef void (* CoglPangoGlyphCacheDirtyFunc) (PangoFont *font,
|
||||
PangoGlyph glyph,
|
||||
CoglPangoGlyphCacheValue *value);
|
||||
|
||||
CoglPangoGlyphCache *
|
||||
COGL_EXPORT CoglPangoGlyphCache *
|
||||
cogl_pango_glyph_cache_new (CoglContext *ctx,
|
||||
gboolean use_mipmapping);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pango_glyph_cache_free (CoglPangoGlyphCache *cache);
|
||||
|
||||
CoglPangoGlyphCacheValue *
|
||||
COGL_EXPORT CoglPangoGlyphCacheValue *
|
||||
cogl_pango_glyph_cache_lookup (CoglPangoGlyphCache *cache,
|
||||
gboolean create,
|
||||
PangoFont *font,
|
||||
PangoGlyph glyph);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pango_glyph_cache_clear (CoglPangoGlyphCache *cache);
|
||||
|
||||
void
|
||||
|
@@ -50,6 +50,7 @@
|
||||
#include <pango/pangocairo.h>
|
||||
#include <pango/pango-renderer.h>
|
||||
#include <cairo.h>
|
||||
#include <cairo-ft.h>
|
||||
|
||||
#include "cogl/cogl-debug.h"
|
||||
#include "cogl/cogl-context-private.h"
|
||||
@@ -526,6 +527,24 @@ cogl_pango_renderer_get_cached_glyph (PangoRenderer *renderer,
|
||||
create, font, glyph);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
font_has_color_glyphs (const PangoFont *font)
|
||||
{
|
||||
cairo_scaled_font_t *scaled_font;
|
||||
gboolean has_color = FALSE;
|
||||
|
||||
scaled_font = pango_cairo_font_get_scaled_font ((PangoCairoFont *) font);
|
||||
|
||||
if (cairo_scaled_font_get_type (scaled_font) == CAIRO_FONT_TYPE_FT)
|
||||
{
|
||||
FT_Face ft_face = cairo_ft_scaled_font_lock_face (scaled_font);
|
||||
has_color = (FT_HAS_COLOR (ft_face) != 0);
|
||||
cairo_ft_scaled_font_unlock_face (scaled_font);
|
||||
}
|
||||
|
||||
return has_color;
|
||||
}
|
||||
|
||||
static void
|
||||
cogl_pango_renderer_set_dirty_glyph (PangoFont *font,
|
||||
PangoGlyph glyph,
|
||||
@@ -600,6 +619,8 @@ cogl_pango_renderer_set_dirty_glyph (PangoFont *font,
|
||||
cairo_image_surface_get_data (surface));
|
||||
|
||||
cairo_surface_destroy (surface);
|
||||
|
||||
value->has_color = font_has_color_glyphs (font);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -698,6 +719,7 @@ cogl_pango_renderer_set_color_for_part (PangoRenderer *renderer,
|
||||
PangoRenderPart part)
|
||||
{
|
||||
PangoColor *pango_color = pango_renderer_get_color (renderer, part);
|
||||
uint16_t alpha = pango_renderer_get_alpha (renderer, part);
|
||||
CoglPangoRenderer *priv = COGL_PANGO_RENDERER (renderer);
|
||||
|
||||
if (pango_color)
|
||||
@@ -708,7 +730,7 @@ cogl_pango_renderer_set_color_for_part (PangoRenderer *renderer,
|
||||
pango_color->red >> 8,
|
||||
pango_color->green >> 8,
|
||||
pango_color->blue >> 8,
|
||||
0xff);
|
||||
alpha ? alpha >> 8 : 0xff);
|
||||
|
||||
_cogl_pango_display_list_set_color_override (priv->display_list, &color);
|
||||
}
|
||||
@@ -820,14 +842,13 @@ cogl_pango_renderer_draw_glyphs (PangoRenderer *renderer,
|
||||
CoglPangoGlyphCacheValue *cache_value;
|
||||
int i;
|
||||
|
||||
cogl_pango_renderer_set_color_for_part (renderer,
|
||||
PANGO_RENDER_PART_FOREGROUND);
|
||||
|
||||
for (i = 0; i < glyphs->num_glyphs; i++)
|
||||
{
|
||||
PangoGlyphInfo *gi = glyphs->glyphs + i;
|
||||
float x, y;
|
||||
|
||||
cogl_pango_renderer_set_color_for_part (renderer,
|
||||
PANGO_RENDER_PART_FOREGROUND);
|
||||
cogl_pango_renderer_get_device_units (renderer,
|
||||
xi + gi->geometry.x_offset,
|
||||
yi + gi->geometry.y_offset,
|
||||
@@ -884,6 +905,19 @@ cogl_pango_renderer_draw_glyphs (PangoRenderer *renderer,
|
||||
x += (float)(cache_value->draw_x);
|
||||
y += (float)(cache_value->draw_y);
|
||||
|
||||
/* Do not override color if the glyph/font provide its own */
|
||||
if (cache_value->has_color)
|
||||
{
|
||||
CoglColor color;
|
||||
uint16_t alpha;
|
||||
|
||||
alpha = pango_renderer_get_alpha (renderer,
|
||||
PANGO_RENDER_PART_FOREGROUND);
|
||||
cogl_color_init_from_4ub (&color, 0xff, 0xff, 0xff,
|
||||
alpha ? alpha >> 8 : 0xff);
|
||||
_cogl_pango_display_list_set_color_override (priv->display_list, &color);
|
||||
}
|
||||
|
||||
cogl_pango_renderer_draw_glyph (priv, cache_value, x, y);
|
||||
}
|
||||
}
|
||||
|
@@ -75,7 +75,7 @@ typedef PangoCairoFontMap CoglPangoFontMap;
|
||||
*
|
||||
* Since: 1.14
|
||||
*/
|
||||
PangoFontMap *
|
||||
COGL_EXPORT PangoFontMap *
|
||||
cogl_pango_font_map_new (void);
|
||||
|
||||
/**
|
||||
@@ -86,7 +86,7 @@ cogl_pango_font_map_new (void);
|
||||
*
|
||||
* Returns: (transfer full): the newly created context: free with g_object_unref().
|
||||
*/
|
||||
PangoContext *
|
||||
COGL_EXPORT PangoContext *
|
||||
cogl_pango_font_map_create_context (CoglPangoFontMap *font_map);
|
||||
|
||||
/**
|
||||
@@ -102,7 +102,7 @@ cogl_pango_font_map_create_context (CoglPangoFontMap *font_map);
|
||||
*
|
||||
* Since: 1.14
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pango_font_map_set_resolution (CoglPangoFontMap *font_map,
|
||||
double dpi);
|
||||
|
||||
@@ -114,7 +114,7 @@ cogl_pango_font_map_set_resolution (CoglPangoFontMap *font_map,
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pango_font_map_clear_glyph_cache (CoglPangoFontMap *font_map);
|
||||
|
||||
/**
|
||||
@@ -129,7 +129,7 @@ cogl_pango_font_map_clear_glyph_cache (CoglPangoFontMap *font_map);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pango_ensure_glyph_cache_for_layout (PangoLayout *layout);
|
||||
|
||||
/**
|
||||
@@ -142,7 +142,7 @@ cogl_pango_ensure_glyph_cache_for_layout (PangoLayout *layout);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pango_font_map_set_use_mipmapping (CoglPangoFontMap *font_map,
|
||||
gboolean value);
|
||||
|
||||
@@ -157,7 +157,7 @@ cogl_pango_font_map_set_use_mipmapping (CoglPangoFontMap *font_map,
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_pango_font_map_get_use_mipmapping (CoglPangoFontMap *font_map);
|
||||
|
||||
/**
|
||||
@@ -170,7 +170,7 @@ cogl_pango_font_map_get_use_mipmapping (CoglPangoFontMap *font_map);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
PangoRenderer *
|
||||
COGL_EXPORT PangoRenderer *
|
||||
cogl_pango_font_map_get_renderer (CoglPangoFontMap *font_map);
|
||||
|
||||
/**
|
||||
@@ -187,7 +187,7 @@ cogl_pango_font_map_get_renderer (CoglPangoFontMap *font_map);
|
||||
*
|
||||
* Since: 1.14
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pango_show_layout (CoglFramebuffer *framebuffer,
|
||||
PangoLayout *layout,
|
||||
float x,
|
||||
@@ -208,7 +208,7 @@ cogl_pango_show_layout (CoglFramebuffer *framebuffer,
|
||||
*
|
||||
* Since: 1.14
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pango_show_layout_line (CoglFramebuffer *framebuffer,
|
||||
PangoLayoutLine *line,
|
||||
float x,
|
||||
@@ -227,7 +227,7 @@ cogl_pango_show_layout_line (CoglFramebuffer *framebuffer,
|
||||
typedef struct _CoglPangoRenderer CoglPangoRenderer;
|
||||
typedef struct _CoglPangoRendererClass CoglPangoRendererClass;
|
||||
|
||||
GType cogl_pango_renderer_get_type (void) G_GNUC_CONST;
|
||||
COGL_EXPORT GType cogl_pango_renderer_get_type (void) G_GNUC_CONST;
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
global:
|
||||
cogl_pango_*;
|
||||
local:
|
||||
*;
|
||||
};
|
@@ -20,19 +20,13 @@ cogl_pango_deps = [
|
||||
libmutter_cogl_dep,
|
||||
]
|
||||
|
||||
libmutter_cogl_pango_map = 'libmutter-cogl-pango.map'
|
||||
libmutter_cogl_pango_link_args = [
|
||||
'-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(),
|
||||
libmutter_cogl_pango_map),
|
||||
]
|
||||
libmutter_cogl_pango = shared_library('mutter-cogl-pango-' + libmutter_api_version,
|
||||
sources: [cogl_pango_sources, cogl_pango_public_headers],
|
||||
version: '0.0.0',
|
||||
soversion: 0,
|
||||
c_args: cogl_c_args,
|
||||
include_directories: [cogl_includepath, cogl_path_includepath],
|
||||
link_depends: libmutter_cogl_pango_map,
|
||||
link_args: libmutter_cogl_pango_link_args,
|
||||
gnu_symbol_visibility: 'hidden',
|
||||
dependencies: [cogl_pango_deps],
|
||||
install_rpath: pkglibdir,
|
||||
install_dir: pkglibdir,
|
||||
|
@@ -50,6 +50,7 @@ G_BEGIN_DECLS
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_path_get_gtype (void);
|
||||
|
||||
#define cogl_path_new cogl2_path_new
|
||||
@@ -64,7 +65,7 @@ GType cogl_path_get_gtype (void);
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
CoglPath *
|
||||
COGL_EXPORT CoglPath *
|
||||
cogl_path_new (void);
|
||||
|
||||
/**
|
||||
@@ -82,7 +83,7 @@ cogl_path_new (void);
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
CoglPath *
|
||||
COGL_EXPORT CoglPath *
|
||||
cogl_path_copy (CoglPath *path);
|
||||
|
||||
/**
|
||||
@@ -96,7 +97,7 @@ cogl_path_copy (CoglPath *path);
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_path (void *object);
|
||||
|
||||
#define cogl_path_move_to cogl2_path_move_to
|
||||
@@ -110,7 +111,7 @@ cogl_is_path (void *object);
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_move_to (CoglPath *path,
|
||||
float x,
|
||||
float y);
|
||||
@@ -127,7 +128,7 @@ cogl_path_move_to (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_rel_move_to (CoglPath *path,
|
||||
float x,
|
||||
float y);
|
||||
@@ -143,7 +144,7 @@ cogl_path_rel_move_to (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_line_to (CoglPath *path,
|
||||
float x,
|
||||
float y);
|
||||
@@ -159,7 +160,7 @@ cogl_path_line_to (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_rel_line_to (CoglPath *path,
|
||||
float x,
|
||||
float y);
|
||||
@@ -187,7 +188,7 @@ cogl_path_rel_line_to (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_arc (CoglPath *path,
|
||||
float center_x,
|
||||
float center_y,
|
||||
@@ -212,7 +213,7 @@ cogl_path_arc (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_curve_to (CoglPath *path,
|
||||
float x_1,
|
||||
float y_1,
|
||||
@@ -238,7 +239,7 @@ cogl_path_curve_to (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_rel_curve_to (CoglPath *path,
|
||||
float x_1,
|
||||
float y_1,
|
||||
@@ -256,7 +257,7 @@ cogl_path_rel_curve_to (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_close (CoglPath *path);
|
||||
|
||||
#define cogl_path_line cogl2_path_line
|
||||
@@ -273,7 +274,7 @@ cogl_path_close (CoglPath *path);
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_line (CoglPath *path,
|
||||
float x_1,
|
||||
float y_1,
|
||||
@@ -301,7 +302,7 @@ cogl_path_line (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_polyline (CoglPath *path,
|
||||
const float *coords,
|
||||
int num_points);
|
||||
@@ -323,7 +324,7 @@ cogl_path_polyline (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_polygon (CoglPath *path,
|
||||
const float *coords,
|
||||
int num_points);
|
||||
@@ -341,7 +342,7 @@ cogl_path_polygon (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_rectangle (CoglPath *path,
|
||||
float x_1,
|
||||
float y_1,
|
||||
@@ -361,7 +362,7 @@ cogl_path_rectangle (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_ellipse (CoglPath *path,
|
||||
float center_x,
|
||||
float center_y,
|
||||
@@ -384,7 +385,7 @@ cogl_path_ellipse (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_round_rectangle (CoglPath *path,
|
||||
float x_1,
|
||||
float y_1,
|
||||
@@ -406,7 +407,7 @@ cogl_path_round_rectangle (CoglPath *path,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_path_set_fill_rule (CoglPath *path, CoglPathFillRule fill_rule);
|
||||
|
||||
#define cogl_path_get_fill_rule cogl2_path_get_fill_rule
|
||||
@@ -419,7 +420,7 @@ cogl_path_set_fill_rule (CoglPath *path, CoglPathFillRule fill_rule);
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
CoglPathFillRule
|
||||
COGL_EXPORT CoglPathFillRule
|
||||
cogl_path_get_fill_rule (CoglPath *path);
|
||||
|
||||
/**
|
||||
@@ -441,7 +442,7 @@ cogl_path_get_fill_rule (CoglPath *path);
|
||||
*
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_fill_path (CoglFramebuffer *framebuffer,
|
||||
CoglPipeline *pipeline,
|
||||
CoglPath *path);
|
||||
@@ -458,7 +459,7 @@ cogl_framebuffer_fill_path (CoglFramebuffer *framebuffer,
|
||||
*
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_stroke_path (CoglFramebuffer *framebuffer,
|
||||
CoglPipeline *pipeline,
|
||||
CoglPath *path);
|
||||
@@ -476,7 +477,7 @@ cogl_framebuffer_stroke_path (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_push_path_clip (CoglFramebuffer *framebuffer,
|
||||
CoglPath *path);
|
||||
|
||||
|
@@ -1,17 +0,0 @@
|
||||
{
|
||||
global:
|
||||
cogl_framebuffer_*;
|
||||
cogl_path_*;
|
||||
cogl_is_*;
|
||||
cogl_clip_*;
|
||||
cogl_get_*;
|
||||
cogl_set_*;
|
||||
cogl2_framebuffer_*;
|
||||
cogl2_path_*;
|
||||
cogl2_is_*;
|
||||
cogl2_clip_*;
|
||||
cogl2_get_*;
|
||||
cogl2_set_*;
|
||||
local:
|
||||
*;
|
||||
};
|
@@ -53,19 +53,13 @@ cogl_path_c_args = [
|
||||
cogl_c_args,
|
||||
]
|
||||
|
||||
libmutter_cogl_path_map = 'libmutter-cogl-path.map'
|
||||
libmutter_cogl_path_link_args = [
|
||||
'-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(),
|
||||
libmutter_cogl_path_map),
|
||||
]
|
||||
libmutter_cogl_path = shared_library('mutter-cogl-path-' + libmutter_api_version,
|
||||
sources: [cogl_path_sources, cogl_path_public_headers],
|
||||
version: '0.0.0',
|
||||
soversion: 0,
|
||||
c_args: cogl_path_c_args,
|
||||
include_directories: [cogl_includepath, cogl_path_includepath],
|
||||
link_depends: libmutter_cogl_path_map,
|
||||
link_args: libmutter_cogl_path_link_args,
|
||||
gnu_symbol_visibility: 'hidden',
|
||||
dependencies: libmutter_cogl_dep,
|
||||
install_rpath: pkglibdir,
|
||||
install_dir: pkglibdir,
|
||||
|
@@ -65,12 +65,12 @@ CoglAtlasTexture *
|
||||
_cogl_atlas_texture_new_from_bitmap (CoglBitmap *bmp,
|
||||
gboolean can_convert_in_place);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_atlas_texture_add_reorganize_callback (CoglContext *ctx,
|
||||
GHookFunc callback,
|
||||
void *user_data);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_atlas_texture_remove_reorganize_callback (CoglContext *ctx,
|
||||
GHookFunc callback,
|
||||
void *user_data);
|
||||
|
@@ -74,6 +74,7 @@ typedef struct _CoglAtlasTexture CoglAtlasTexture;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_atlas_texture_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -108,7 +109,7 @@ GType cogl_atlas_texture_get_gtype (void);
|
||||
* Since: 1.16
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglAtlasTexture *
|
||||
COGL_EXPORT CoglAtlasTexture *
|
||||
cogl_atlas_texture_new_with_size (CoglContext *ctx,
|
||||
int width,
|
||||
int height);
|
||||
@@ -146,7 +147,7 @@ cogl_atlas_texture_new_with_size (CoglContext *ctx,
|
||||
* Since: 1.16
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglAtlasTexture *
|
||||
COGL_EXPORT CoglAtlasTexture *
|
||||
cogl_atlas_texture_new_from_file (CoglContext *ctx,
|
||||
const char *filename,
|
||||
GError **error);
|
||||
@@ -191,7 +192,7 @@ cogl_atlas_texture_new_from_file (CoglContext *ctx,
|
||||
* Since: 1.16
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglAtlasTexture *
|
||||
COGL_EXPORT CoglAtlasTexture *
|
||||
cogl_atlas_texture_new_from_data (CoglContext *ctx,
|
||||
int width,
|
||||
int height,
|
||||
@@ -231,7 +232,7 @@ cogl_atlas_texture_new_from_data (CoglContext *ctx,
|
||||
* Since: 1.16
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglAtlasTexture *
|
||||
COGL_EXPORT CoglAtlasTexture *
|
||||
cogl_atlas_texture_new_from_bitmap (CoglBitmap *bmp);
|
||||
|
||||
/**
|
||||
@@ -246,7 +247,7 @@ cogl_atlas_texture_new_from_bitmap (CoglBitmap *bmp);
|
||||
* Since: 1.16
|
||||
* Stability: Unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_atlas_texture (void *object);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -64,12 +64,12 @@ struct _CoglAtlas
|
||||
GHookList post_reorganize_callbacks;
|
||||
};
|
||||
|
||||
CoglAtlas *
|
||||
COGL_EXPORT CoglAtlas *
|
||||
_cogl_atlas_new (CoglPixelFormat texture_format,
|
||||
CoglAtlasFlags flags,
|
||||
CoglAtlasUpdatePositionCallback update_position_cb);
|
||||
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
_cogl_atlas_reserve_space (CoglAtlas *atlas,
|
||||
unsigned int width,
|
||||
unsigned int height,
|
||||
@@ -87,7 +87,7 @@ _cogl_atlas_copy_rectangle (CoglAtlas *atlas,
|
||||
int height,
|
||||
CoglPixelFormat format);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_atlas_add_reorganize_callback (CoglAtlas *atlas,
|
||||
GHookFunc pre_callback,
|
||||
GHookFunc post_callback,
|
||||
|
@@ -64,6 +64,7 @@ G_BEGIN_DECLS
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_attribute_buffer_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -89,7 +90,7 @@ GType cogl_attribute_buffer_get_gtype (void);
|
||||
*
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglAttributeBuffer *
|
||||
COGL_EXPORT CoglAttributeBuffer *
|
||||
cogl_attribute_buffer_new_with_size (CoglContext *context,
|
||||
size_t bytes);
|
||||
|
||||
@@ -122,7 +123,7 @@ cogl_attribute_buffer_new_with_size (CoglContext *context,
|
||||
* Since: 1.4
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglAttributeBuffer *
|
||||
COGL_EXPORT CoglAttributeBuffer *
|
||||
cogl_attribute_buffer_new (CoglContext *context,
|
||||
size_t bytes,
|
||||
const void *data);
|
||||
@@ -139,7 +140,7 @@ cogl_attribute_buffer_new (CoglContext *context,
|
||||
* Since: 1.4
|
||||
* Stability: Unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_attribute_buffer (void *object);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -63,6 +63,7 @@ G_BEGIN_DECLS
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_attribute_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -155,7 +156,7 @@ GType cogl_attribute_get_gtype (void);
|
||||
*/
|
||||
/* XXX: look for a precedent to see if the stride/offset args should
|
||||
* have a different order. */
|
||||
CoglAttribute *
|
||||
COGL_EXPORT CoglAttribute *
|
||||
cogl_attribute_new (CoglAttributeBuffer *attribute_buffer,
|
||||
const char *name,
|
||||
size_t stride,
|
||||
@@ -183,7 +184,7 @@ cogl_attribute_new (CoglAttributeBuffer *attribute_buffer,
|
||||
* Return value: (transfer full): A newly allocated #CoglAttribute
|
||||
* representing the given constant @value.
|
||||
*/
|
||||
CoglAttribute *
|
||||
COGL_EXPORT CoglAttribute *
|
||||
cogl_attribute_new_const_1f (CoglContext *context,
|
||||
const char *name,
|
||||
float value);
|
||||
@@ -210,7 +211,7 @@ cogl_attribute_new_const_1f (CoglContext *context,
|
||||
* Return value: (transfer full): A newly allocated #CoglAttribute
|
||||
* representing the given constant vector.
|
||||
*/
|
||||
CoglAttribute *
|
||||
COGL_EXPORT CoglAttribute *
|
||||
cogl_attribute_new_const_2f (CoglContext *context,
|
||||
const char *name,
|
||||
float component0,
|
||||
@@ -242,7 +243,7 @@ cogl_attribute_new_const_2f (CoglContext *context,
|
||||
* Return value: (transfer full): A newly allocated #CoglAttribute
|
||||
* representing the given constant vector.
|
||||
*/
|
||||
CoglAttribute *
|
||||
COGL_EXPORT CoglAttribute *
|
||||
cogl_attribute_new_const_3f (CoglContext *context,
|
||||
const char *name,
|
||||
float component0,
|
||||
@@ -277,7 +278,7 @@ cogl_attribute_new_const_3f (CoglContext *context,
|
||||
* Return value: (transfer full): A newly allocated #CoglAttribute
|
||||
* representing the given constant vector.
|
||||
*/
|
||||
CoglAttribute *
|
||||
COGL_EXPORT CoglAttribute *
|
||||
cogl_attribute_new_const_4f (CoglContext *context,
|
||||
const char *name,
|
||||
float component0,
|
||||
@@ -306,7 +307,7 @@ cogl_attribute_new_const_4f (CoglContext *context,
|
||||
* Return value: (transfer full): A newly allocated #CoglAttribute
|
||||
* representing the given constant vector.
|
||||
*/
|
||||
CoglAttribute *
|
||||
COGL_EXPORT CoglAttribute *
|
||||
cogl_attribute_new_const_2fv (CoglContext *context,
|
||||
const char *name,
|
||||
const float *value);
|
||||
@@ -335,7 +336,7 @@ cogl_attribute_new_const_2fv (CoglContext *context,
|
||||
* Return value: (transfer full): A newly allocated #CoglAttribute
|
||||
* representing the given constant vector.
|
||||
*/
|
||||
CoglAttribute *
|
||||
COGL_EXPORT CoglAttribute *
|
||||
cogl_attribute_new_const_3fv (CoglContext *context,
|
||||
const char *name,
|
||||
const float *value);
|
||||
@@ -365,7 +366,7 @@ cogl_attribute_new_const_3fv (CoglContext *context,
|
||||
* Return value: (transfer full): A newly allocated #CoglAttribute
|
||||
* representing the given constant vector.
|
||||
*/
|
||||
CoglAttribute *
|
||||
COGL_EXPORT CoglAttribute *
|
||||
cogl_attribute_new_const_4fv (CoglContext *context,
|
||||
const char *name,
|
||||
const float *value);
|
||||
@@ -398,7 +399,7 @@ cogl_attribute_new_const_4fv (CoglContext *context,
|
||||
* Return value: (transfer full): A newly allocated #CoglAttribute
|
||||
* representing the given constant matrix.
|
||||
*/
|
||||
CoglAttribute *
|
||||
COGL_EXPORT CoglAttribute *
|
||||
cogl_attribute_new_const_2x2fv (CoglContext *context,
|
||||
const char *name,
|
||||
const float *matrix2x2,
|
||||
@@ -433,7 +434,7 @@ cogl_attribute_new_const_2x2fv (CoglContext *context,
|
||||
* Return value: (transfer full): A newly allocated #CoglAttribute
|
||||
* representing the given constant matrix.
|
||||
*/
|
||||
CoglAttribute *
|
||||
COGL_EXPORT CoglAttribute *
|
||||
cogl_attribute_new_const_3x3fv (CoglContext *context,
|
||||
const char *name,
|
||||
const float *matrix3x3,
|
||||
@@ -468,7 +469,7 @@ cogl_attribute_new_const_3x3fv (CoglContext *context,
|
||||
* Return value: (transfer full): A newly allocated #CoglAttribute
|
||||
* representing the given constant matrix.
|
||||
*/
|
||||
CoglAttribute *
|
||||
COGL_EXPORT CoglAttribute *
|
||||
cogl_attribute_new_const_4x4fv (CoglContext *context,
|
||||
const char *name,
|
||||
const float *matrix4x4,
|
||||
@@ -492,7 +493,7 @@ cogl_attribute_new_const_4x4fv (CoglContext *context,
|
||||
* Stability: unstable
|
||||
* Since: 1.10
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_attribute_set_normalized (CoglAttribute *attribute,
|
||||
gboolean normalized);
|
||||
|
||||
@@ -506,7 +507,7 @@ cogl_attribute_set_normalized (CoglAttribute *attribute,
|
||||
* Stability: unstable
|
||||
* Since: 1.10
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_attribute_get_normalized (CoglAttribute *attribute);
|
||||
|
||||
/**
|
||||
@@ -519,7 +520,7 @@ cogl_attribute_get_normalized (CoglAttribute *attribute);
|
||||
* Stability: unstable
|
||||
* Since: 1.10
|
||||
*/
|
||||
CoglAttributeBuffer *
|
||||
COGL_EXPORT CoglAttributeBuffer *
|
||||
cogl_attribute_get_buffer (CoglAttribute *attribute);
|
||||
|
||||
/**
|
||||
@@ -532,7 +533,7 @@ cogl_attribute_get_buffer (CoglAttribute *attribute);
|
||||
* Stability: unstable
|
||||
* Since: 1.10
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_attribute_set_buffer (CoglAttribute *attribute,
|
||||
CoglAttributeBuffer *attribute_buffer);
|
||||
|
||||
@@ -545,7 +546,7 @@ cogl_attribute_set_buffer (CoglAttribute *attribute,
|
||||
* Return value: %TRUE if the @object references a #CoglAttribute,
|
||||
* %FALSE otherwise
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_attribute (void *object);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -54,6 +54,7 @@ G_BEGIN_DECLS
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_bitmap_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -80,7 +81,7 @@ GType cogl_bitmap_get_gtype (void);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
CoglBitmap *
|
||||
COGL_EXPORT CoglBitmap *
|
||||
cogl_bitmap_new_from_file (const char *filename,
|
||||
GError **error);
|
||||
|
||||
@@ -103,7 +104,7 @@ cogl_bitmap_new_from_file (const char *filename,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglBitmap *
|
||||
COGL_EXPORT CoglBitmap *
|
||||
cogl_bitmap_new_from_buffer (CoglBuffer *buffer,
|
||||
CoglPixelFormat format,
|
||||
int width,
|
||||
@@ -140,7 +141,7 @@ cogl_bitmap_new_from_buffer (CoglBuffer *buffer,
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglBitmap *
|
||||
COGL_EXPORT CoglBitmap *
|
||||
cogl_bitmap_new_with_size (CoglContext *context,
|
||||
unsigned int width,
|
||||
unsigned int height,
|
||||
@@ -166,7 +167,7 @@ cogl_bitmap_new_with_size (CoglContext *context,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglBitmap *
|
||||
COGL_EXPORT CoglBitmap *
|
||||
cogl_bitmap_new_for_data (CoglContext *context,
|
||||
int width,
|
||||
int height,
|
||||
@@ -182,7 +183,7 @@ cogl_bitmap_new_for_data (CoglContext *context,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglPixelFormat
|
||||
COGL_EXPORT CoglPixelFormat
|
||||
cogl_bitmap_get_format (CoglBitmap *bitmap);
|
||||
|
||||
/**
|
||||
@@ -193,7 +194,7 @@ cogl_bitmap_get_format (CoglBitmap *bitmap);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_bitmap_get_width (CoglBitmap *bitmap);
|
||||
|
||||
/**
|
||||
@@ -204,7 +205,7 @@ cogl_bitmap_get_width (CoglBitmap *bitmap);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_bitmap_get_height (CoglBitmap *bitmap);
|
||||
|
||||
/**
|
||||
@@ -217,7 +218,7 @@ cogl_bitmap_get_height (CoglBitmap *bitmap);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_bitmap_get_rowstride (CoglBitmap *bitmap);
|
||||
|
||||
/**
|
||||
@@ -231,7 +232,7 @@ cogl_bitmap_get_rowstride (CoglBitmap *bitmap);
|
||||
* Stability: unstable
|
||||
* Since: 1.10
|
||||
*/
|
||||
CoglPixelBuffer *
|
||||
COGL_EXPORT CoglPixelBuffer *
|
||||
cogl_bitmap_get_buffer (CoglBitmap *bitmap);
|
||||
|
||||
/**
|
||||
@@ -247,7 +248,7 @@ cogl_bitmap_get_buffer (CoglBitmap *bitmap);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_bitmap_get_size_from_file (const char *filename,
|
||||
int *width,
|
||||
int *height);
|
||||
@@ -263,7 +264,7 @@ cogl_bitmap_get_size_from_file (const char *filename,
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_bitmap (void *object);
|
||||
|
||||
/**
|
||||
@@ -297,6 +298,7 @@ typedef enum
|
||||
COGL_BITMAP_ERROR_CORRUPT_IMAGE
|
||||
} CoglBitmapError;
|
||||
|
||||
COGL_EXPORT
|
||||
uint32_t cogl_bitmap_error_quark (void);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -168,10 +168,10 @@ void *
|
||||
_cogl_buffer_map_range_for_fill_or_fallback (CoglBuffer *buffer,
|
||||
size_t offset,
|
||||
size_t size);
|
||||
void *
|
||||
COGL_EXPORT void *
|
||||
_cogl_buffer_map_for_fill_or_fallback (CoglBuffer *buffer);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_buffer_unmap_for_fill_or_fallback (CoglBuffer *buffer);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -107,7 +107,7 @@ _cogl_buffer_error_domain (void);
|
||||
* Since: 1.2
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_buffer (void *object);
|
||||
|
||||
/**
|
||||
@@ -121,7 +121,7 @@ cogl_is_buffer (void *object);
|
||||
* Since: 1.2
|
||||
* Stability: unstable
|
||||
*/
|
||||
unsigned int
|
||||
COGL_EXPORT unsigned int
|
||||
cogl_buffer_get_size (CoglBuffer *buffer);
|
||||
|
||||
/**
|
||||
@@ -155,7 +155,7 @@ typedef enum /*< prefix=COGL_BUFFER_UPDATE_HINT >*/
|
||||
* Since: 1.2
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_buffer_set_update_hint (CoglBuffer *buffer,
|
||||
CoglBufferUpdateHint hint);
|
||||
|
||||
@@ -170,7 +170,7 @@ cogl_buffer_set_update_hint (CoglBuffer *buffer,
|
||||
* Since: 1.2
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglBufferUpdateHint
|
||||
COGL_EXPORT CoglBufferUpdateHint
|
||||
cogl_buffer_get_update_hint (CoglBuffer *buffer);
|
||||
|
||||
/**
|
||||
@@ -244,7 +244,7 @@ typedef enum /*< prefix=COGL_BUFFER_MAP_HINT >*/
|
||||
* Since: 1.2
|
||||
* Stability: unstable
|
||||
*/
|
||||
void *
|
||||
COGL_EXPORT void *
|
||||
cogl_buffer_map (CoglBuffer *buffer,
|
||||
CoglBufferAccess access,
|
||||
CoglBufferMapHint hints);
|
||||
@@ -281,7 +281,7 @@ cogl_buffer_map (CoglBuffer *buffer,
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
void *
|
||||
COGL_EXPORT void *
|
||||
cogl_buffer_map_range (CoglBuffer *buffer,
|
||||
size_t offset,
|
||||
size_t size,
|
||||
@@ -298,7 +298,7 @@ cogl_buffer_map_range (CoglBuffer *buffer,
|
||||
* Since: 1.2
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_buffer_unmap (CoglBuffer *buffer);
|
||||
|
||||
/**
|
||||
@@ -317,7 +317,7 @@ cogl_buffer_unmap (CoglBuffer *buffer);
|
||||
* Since: 1.2
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_buffer_set_data (CoglBuffer *buffer,
|
||||
size_t offset,
|
||||
const void *data,
|
||||
|
@@ -178,7 +178,7 @@ _cogl_clip_stack_push_window_rectangle (CoglClipStack *stack,
|
||||
int width,
|
||||
int height);
|
||||
|
||||
CoglClipStack *
|
||||
COGL_EXPORT CoglClipStack *
|
||||
_cogl_clip_stack_push_rectangle (CoglClipStack *stack,
|
||||
float x_1,
|
||||
float y_1,
|
||||
@@ -188,7 +188,7 @@ _cogl_clip_stack_push_rectangle (CoglClipStack *stack,
|
||||
CoglMatrixEntry *projection_entry,
|
||||
const float *viewport);
|
||||
|
||||
CoglClipStack *
|
||||
COGL_EXPORT CoglClipStack *
|
||||
_cogl_clip_stack_push_primitive (CoglClipStack *stack,
|
||||
CoglPrimitive *primitive,
|
||||
float bounds_x1,
|
||||
|
@@ -65,7 +65,7 @@ typedef struct _CoglClosure
|
||||
* Removes the given closure from the callback list it is connected to
|
||||
* and destroys it. If the closure was created with a destroy function
|
||||
* then it will be invoked. */
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_closure_disconnect (CoglClosure *closure);
|
||||
|
||||
void
|
||||
|
@@ -57,6 +57,7 @@ G_BEGIN_DECLS
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_color_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -69,7 +70,7 @@ GType cogl_color_get_gtype (void);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
CoglColor *
|
||||
COGL_EXPORT CoglColor *
|
||||
cogl_color_new (void);
|
||||
|
||||
/**
|
||||
@@ -83,7 +84,7 @@ cogl_color_new (void);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
CoglColor *
|
||||
COGL_EXPORT CoglColor *
|
||||
cogl_color_copy (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -94,7 +95,7 @@ cogl_color_copy (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_free (CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -109,7 +110,7 @@ cogl_color_free (CoglColor *color);
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_init_from_4ub (CoglColor *color,
|
||||
uint8_t red,
|
||||
uint8_t green,
|
||||
@@ -128,7 +129,7 @@ cogl_color_init_from_4ub (CoglColor *color,
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_init_from_4f (CoglColor *color,
|
||||
float red,
|
||||
float green,
|
||||
@@ -144,7 +145,7 @@ cogl_color_init_from_4f (CoglColor *color,
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_init_from_4fv (CoglColor *color,
|
||||
const float *color_array);
|
||||
|
||||
@@ -159,7 +160,7 @@ cogl_color_init_from_4fv (CoglColor *color,
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
unsigned char
|
||||
COGL_EXPORT unsigned char
|
||||
cogl_color_get_red_byte (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -173,7 +174,7 @@ cogl_color_get_red_byte (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
unsigned char
|
||||
COGL_EXPORT unsigned char
|
||||
cogl_color_get_green_byte (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -187,7 +188,7 @@ cogl_color_get_green_byte (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
unsigned char
|
||||
COGL_EXPORT unsigned char
|
||||
cogl_color_get_blue_byte (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -201,7 +202,7 @@ cogl_color_get_blue_byte (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
unsigned char
|
||||
COGL_EXPORT unsigned char
|
||||
cogl_color_get_alpha_byte (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -215,7 +216,7 @@ cogl_color_get_alpha_byte (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_color_get_red_float (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -229,7 +230,7 @@ cogl_color_get_red_float (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_color_get_green_float (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -243,7 +244,7 @@ cogl_color_get_green_float (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_color_get_blue_float (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -257,7 +258,7 @@ cogl_color_get_blue_float (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_color_get_alpha_float (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -271,7 +272,7 @@ cogl_color_get_alpha_float (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_color_get_red (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -285,7 +286,7 @@ cogl_color_get_red (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_color_get_green (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -299,7 +300,7 @@ cogl_color_get_green (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_color_get_blue (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -313,7 +314,7 @@ cogl_color_get_blue (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_color_get_alpha (const CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -325,7 +326,7 @@ cogl_color_get_alpha (const CoglColor *color);
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_set_red_byte (CoglColor *color,
|
||||
unsigned char red);
|
||||
|
||||
@@ -338,7 +339,7 @@ cogl_color_set_red_byte (CoglColor *color,
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_set_green_byte (CoglColor *color,
|
||||
unsigned char green);
|
||||
|
||||
@@ -351,7 +352,7 @@ cogl_color_set_green_byte (CoglColor *color,
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_set_blue_byte (CoglColor *color,
|
||||
unsigned char blue);
|
||||
|
||||
@@ -364,7 +365,7 @@ cogl_color_set_blue_byte (CoglColor *color,
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_set_alpha_byte (CoglColor *color,
|
||||
unsigned char alpha);
|
||||
|
||||
@@ -377,7 +378,7 @@ cogl_color_set_alpha_byte (CoglColor *color,
|
||||
*
|
||||
* since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_set_red_float (CoglColor *color,
|
||||
float red);
|
||||
|
||||
@@ -390,7 +391,7 @@ cogl_color_set_red_float (CoglColor *color,
|
||||
*
|
||||
* since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_set_green_float (CoglColor *color,
|
||||
float green);
|
||||
|
||||
@@ -403,7 +404,7 @@ cogl_color_set_green_float (CoglColor *color,
|
||||
*
|
||||
* since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_set_blue_float (CoglColor *color,
|
||||
float blue);
|
||||
|
||||
@@ -416,7 +417,7 @@ cogl_color_set_blue_float (CoglColor *color,
|
||||
*
|
||||
* since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_set_alpha_float (CoglColor *color,
|
||||
float alpha);
|
||||
|
||||
@@ -429,7 +430,7 @@ cogl_color_set_alpha_float (CoglColor *color,
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_set_red (CoglColor *color,
|
||||
float red);
|
||||
|
||||
@@ -442,7 +443,7 @@ cogl_color_set_red (CoglColor *color,
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_set_green (CoglColor *color,
|
||||
float green);
|
||||
|
||||
@@ -455,7 +456,7 @@ cogl_color_set_green (CoglColor *color,
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_set_blue (CoglColor *color,
|
||||
float blue);
|
||||
|
||||
@@ -468,7 +469,7 @@ cogl_color_set_blue (CoglColor *color,
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_set_alpha (CoglColor *color,
|
||||
float alpha);
|
||||
|
||||
@@ -482,7 +483,7 @@ cogl_color_set_alpha (CoglColor *color,
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_premultiply (CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -495,7 +496,7 @@ cogl_color_premultiply (CoglColor *color);
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_unpremultiply (CoglColor *color);
|
||||
|
||||
/**
|
||||
@@ -512,7 +513,7 @@ cogl_color_unpremultiply (CoglColor *color);
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_color_equal (const void *v1, const void *v2);
|
||||
|
||||
/**
|
||||
@@ -529,7 +530,7 @@ cogl_color_equal (const void *v1, const void *v2);
|
||||
*
|
||||
* Since: 1.16
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_to_hsl (const CoglColor *color,
|
||||
float *hue,
|
||||
float *saturation,
|
||||
@@ -547,7 +548,7 @@ cogl_color_to_hsl (const CoglColor *color,
|
||||
*
|
||||
* Since: 1.16
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_color_init_from_hsl (CoglColor *color,
|
||||
float hue,
|
||||
float saturation,
|
||||
|
@@ -300,7 +300,7 @@ struct _CoglContext
|
||||
#undef COGL_EXT_END
|
||||
};
|
||||
|
||||
CoglContext *
|
||||
COGL_EXPORT CoglContext *
|
||||
_cogl_context_get_default (void);
|
||||
|
||||
const CoglWinsysVtable *
|
||||
|
@@ -211,7 +211,7 @@ cogl_context_new (CoglDisplay *display,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!context->driver_vtable->context_init (context, error))
|
||||
if (!context->driver_vtable->context_init (context))
|
||||
{
|
||||
cogl_object_unref (display);
|
||||
g_free (context);
|
||||
|
@@ -99,6 +99,7 @@ G_BEGIN_DECLS
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_context_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -113,7 +114,7 @@ GType cogl_context_get_gtype (void);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglContext *
|
||||
COGL_EXPORT CoglContext *
|
||||
cogl_context_new (CoglDisplay *display,
|
||||
GError **error);
|
||||
|
||||
@@ -132,7 +133,7 @@ cogl_context_new (CoglDisplay *display,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglDisplay *
|
||||
COGL_EXPORT CoglDisplay *
|
||||
cogl_context_get_display (CoglContext *context);
|
||||
|
||||
/**
|
||||
@@ -151,7 +152,7 @@ cogl_context_get_display (CoglContext *context);
|
||||
* Since: 1.16
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglRenderer *
|
||||
COGL_EXPORT CoglRenderer *
|
||||
cogl_context_get_renderer (CoglContext *context);
|
||||
|
||||
/**
|
||||
@@ -166,7 +167,7 @@ cogl_context_get_renderer (CoglContext *context);
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_context (void *object);
|
||||
|
||||
/* XXX: not guarded by the EXPERIMENTAL_API defines to avoid
|
||||
@@ -234,7 +235,7 @@ typedef enum _CoglFeatureID
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_has_feature (CoglContext *context, CoglFeatureID feature);
|
||||
|
||||
/**
|
||||
@@ -254,7 +255,7 @@ cogl_has_feature (CoglContext *context, CoglFeatureID feature);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_has_features (CoglContext *context, ...);
|
||||
|
||||
/**
|
||||
@@ -283,7 +284,7 @@ typedef void (*CoglFeatureCallback) (CoglFeatureID feature, void *user_data);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_foreach_feature (CoglContext *context,
|
||||
CoglFeatureCallback callback,
|
||||
void *user_data);
|
||||
@@ -308,7 +309,7 @@ cogl_foreach_feature (CoglContext *context,
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
int64_t
|
||||
COGL_EXPORT int64_t
|
||||
cogl_get_clock_time (CoglContext *context);
|
||||
|
||||
/**
|
||||
@@ -350,7 +351,7 @@ typedef enum _CoglGraphicsResetStatus
|
||||
*
|
||||
* Return value: a #CoglGraphicsResetStatus
|
||||
*/
|
||||
CoglGraphicsResetStatus
|
||||
COGL_EXPORT CoglGraphicsResetStatus
|
||||
cogl_get_graphics_reset_status (CoglContext *context);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -75,10 +75,12 @@ typedef enum
|
||||
COGL_DEBUG_N_FLAGS
|
||||
} CoglDebugFlags;
|
||||
|
||||
extern GHashTable *_cogl_debug_instances;
|
||||
COGL_EXPORT
|
||||
GHashTable *_cogl_debug_instances;
|
||||
#define COGL_DEBUG_N_LONGS COGL_FLAGS_N_LONGS_FOR_SIZE (COGL_DEBUG_N_FLAGS)
|
||||
|
||||
extern unsigned long _cogl_debug_flags[COGL_DEBUG_N_LONGS];
|
||||
COGL_EXPORT
|
||||
unsigned long _cogl_debug_flags[COGL_DEBUG_N_LONGS];
|
||||
|
||||
#define COGL_DEBUG_ENABLED(flag) \
|
||||
COGL_FLAGS_GET (_cogl_debug_flags, flag)
|
||||
|
@@ -46,3 +46,5 @@
|
||||
#mesondefine COGL_HAS_X11_SUPPORT
|
||||
#mesondefine COGL_HAS_XLIB
|
||||
#mesondefine COGL_HAS_XLIB_SUPPORT
|
||||
|
||||
#mesondefine COGL_HAS_TRACING
|
||||
|
@@ -84,7 +84,7 @@ typedef struct {
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_depth_state_init (CoglDepthState *state);
|
||||
|
||||
/**
|
||||
@@ -112,7 +112,7 @@ cogl_depth_state_init (CoglDepthState *state);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_depth_state_set_test_enabled (CoglDepthState *state,
|
||||
gboolean enable);
|
||||
|
||||
@@ -127,7 +127,7 @@ cogl_depth_state_set_test_enabled (CoglDepthState *state,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_depth_state_get_test_enabled (CoglDepthState *state);
|
||||
|
||||
/**
|
||||
@@ -150,7 +150,7 @@ cogl_depth_state_get_test_enabled (CoglDepthState *state);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_depth_state_set_write_enabled (CoglDepthState *state,
|
||||
gboolean enable);
|
||||
|
||||
@@ -165,7 +165,7 @@ cogl_depth_state_set_write_enabled (CoglDepthState *state,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_depth_state_get_write_enabled (CoglDepthState *state);
|
||||
|
||||
/**
|
||||
@@ -186,7 +186,7 @@ cogl_depth_state_get_write_enabled (CoglDepthState *state);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_depth_state_set_test_function (CoglDepthState *state,
|
||||
CoglDepthTestFunction function);
|
||||
|
||||
@@ -201,7 +201,7 @@ cogl_depth_state_set_test_function (CoglDepthState *state,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglDepthTestFunction
|
||||
COGL_EXPORT CoglDepthTestFunction
|
||||
cogl_depth_state_get_test_function (CoglDepthState *state);
|
||||
|
||||
/**
|
||||
@@ -235,7 +235,7 @@ cogl_depth_state_get_test_function (CoglDepthState *state);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_depth_state_set_range (CoglDepthState *state,
|
||||
float near_val,
|
||||
float far_val);
|
||||
@@ -253,7 +253,7 @@ cogl_depth_state_set_range (CoglDepthState *state,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_depth_state_get_range (CoglDepthState *state,
|
||||
float *near_val,
|
||||
float *far_val);
|
||||
|
@@ -75,6 +75,7 @@ typedef struct _CoglDisplay CoglDisplay;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_display_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -117,7 +118,7 @@ GType cogl_display_get_gtype (void);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglDisplay *
|
||||
COGL_EXPORT CoglDisplay *
|
||||
cogl_display_new (CoglRenderer *renderer,
|
||||
CoglOnscreenTemplate *onscreen_template);
|
||||
|
||||
@@ -132,7 +133,7 @@ cogl_display_new (CoglRenderer *renderer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglRenderer *
|
||||
COGL_EXPORT CoglRenderer *
|
||||
cogl_display_get_renderer (CoglDisplay *display);
|
||||
|
||||
/**
|
||||
@@ -151,7 +152,7 @@ cogl_display_get_renderer (CoglDisplay *display);
|
||||
* Since: 1.16
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_display_set_onscreen_template (CoglDisplay *display,
|
||||
CoglOnscreenTemplate *onscreen_template);
|
||||
|
||||
@@ -186,7 +187,7 @@ cogl_display_set_onscreen_template (CoglDisplay *display,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_display_setup (CoglDisplay *display,
|
||||
GError **error);
|
||||
|
||||
@@ -201,7 +202,7 @@ cogl_display_setup (CoglDisplay *display,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_display (void *object);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -43,7 +43,7 @@
|
||||
/**
|
||||
* cogl_dma_buf_handle_new: (skip)
|
||||
*/
|
||||
CoglDmaBufHandle *
|
||||
COGL_EXPORT CoglDmaBufHandle *
|
||||
cogl_dma_buf_handle_new (CoglFramebuffer *framebuffer,
|
||||
int dmabuf_fd,
|
||||
gpointer data,
|
||||
@@ -55,7 +55,7 @@ cogl_dma_buf_handle_new (CoglFramebuffer *framebuffer,
|
||||
* Releases @dmabuf_handle; it is a programming error to release
|
||||
* an already released handle.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_dma_buf_handle_free (CoglDmaBufHandle *dmabuf_handle);
|
||||
|
||||
/**
|
||||
@@ -66,7 +66,7 @@ cogl_dma_buf_handle_free (CoglDmaBufHandle *dmabuf_handle);
|
||||
*
|
||||
* Returns: (transfer none): a #CoglFramebuffer
|
||||
*/
|
||||
CoglFramebuffer *
|
||||
COGL_EXPORT CoglFramebuffer *
|
||||
cogl_dma_buf_handle_get_framebuffer (CoglDmaBufHandle *dmabuf_handle);
|
||||
|
||||
/**
|
||||
@@ -76,7 +76,7 @@ cogl_dma_buf_handle_get_framebuffer (CoglDmaBufHandle *dmabuf_handle);
|
||||
*
|
||||
* Returns: a valid file descriptor
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_dma_buf_handle_get_fd (CoglDmaBufHandle *dmabuf_handle);
|
||||
|
||||
|
||||
|
@@ -41,7 +41,7 @@ typedef struct _CoglDriverVtable CoglDriverVtable;
|
||||
struct _CoglDriverVtable
|
||||
{
|
||||
gboolean
|
||||
(* context_init) (CoglContext *context, GError **error);
|
||||
(* context_init) (CoglContext *context);
|
||||
|
||||
void
|
||||
(* context_deinit) (CoglContext *context);
|
||||
|
@@ -76,7 +76,7 @@ G_BEGIN_DECLS
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
EGLDisplay
|
||||
COGL_EXPORT EGLDisplay
|
||||
cogl_egl_context_get_egl_display (CoglContext *context);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -97,7 +97,7 @@ typedef struct _CoglFenceClosure CoglFenceClosure;
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void *
|
||||
COGL_EXPORT void *
|
||||
cogl_fence_closure_get_user_data (CoglFenceClosure *closure);
|
||||
|
||||
/**
|
||||
@@ -118,7 +118,7 @@ cogl_fence_closure_get_user_data (CoglFenceClosure *closure);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglFenceClosure *
|
||||
COGL_EXPORT CoglFenceClosure *
|
||||
cogl_framebuffer_add_fence_callback (CoglFramebuffer *framebuffer,
|
||||
CoglFenceCallback callback,
|
||||
void *user_data);
|
||||
@@ -136,7 +136,7 @@ cogl_framebuffer_add_fence_callback (CoglFramebuffer *framebuffer,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_cancel_fence_callback (CoglFramebuffer *framebuffer,
|
||||
CoglFenceClosure *closure);
|
||||
|
||||
|
@@ -53,6 +53,7 @@ typedef struct _CoglFrameInfo CoglFrameInfo;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_frame_info_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -66,7 +67,7 @@ GType cogl_frame_info_get_gtype (void);
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_frame_info (void *object);
|
||||
|
||||
/**
|
||||
@@ -80,6 +81,7 @@ cogl_is_frame_info (void *object);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
COGL_EXPORT
|
||||
int64_t cogl_frame_info_get_frame_counter (CoglFrameInfo *info);
|
||||
|
||||
/**
|
||||
@@ -101,6 +103,7 @@ int64_t cogl_frame_info_get_frame_counter (CoglFrameInfo *info);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
COGL_EXPORT
|
||||
int64_t cogl_frame_info_get_presentation_time (CoglFrameInfo *info);
|
||||
|
||||
/**
|
||||
@@ -120,6 +123,7 @@ int64_t cogl_frame_info_get_presentation_time (CoglFrameInfo *info);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
COGL_EXPORT
|
||||
float cogl_frame_info_get_refresh_rate (CoglFrameInfo *info);
|
||||
|
||||
/**
|
||||
@@ -133,12 +137,13 @@ float cogl_frame_info_get_refresh_rate (CoglFrameInfo *info);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglOutput *
|
||||
COGL_EXPORT CoglOutput *
|
||||
cogl_frame_info_get_output (CoglFrameInfo *info);
|
||||
|
||||
/**
|
||||
* cogl_frame_info_get_global_frame_counter: (skip)
|
||||
*/
|
||||
COGL_EXPORT
|
||||
int64_t cogl_frame_info_get_global_frame_counter (CoglFrameInfo *info);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -268,10 +268,10 @@ _cogl_framebuffer_mark_clear_clip_dirty (CoglFramebuffer *framebuffer);
|
||||
CoglClipStack *
|
||||
_cogl_framebuffer_get_clip_stack (CoglFramebuffer *framebuffer);
|
||||
|
||||
CoglMatrixStack *
|
||||
COGL_EXPORT CoglMatrixStack *
|
||||
_cogl_framebuffer_get_modelview_stack (CoglFramebuffer *framebuffer);
|
||||
|
||||
CoglMatrixStack *
|
||||
COGL_EXPORT CoglMatrixStack *
|
||||
_cogl_framebuffer_get_projection_stack (CoglFramebuffer *framebuffer);
|
||||
|
||||
void
|
||||
@@ -393,7 +393,7 @@ _cogl_framebuffer_read_pixels_into_bitmap (CoglFramebuffer *framebuffer,
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
_cogl_framebuffer_get_stencil_bits (CoglFramebuffer *framebuffer);
|
||||
|
||||
#endif /* __COGL_FRAMEBUFFER_PRIVATE_H */
|
||||
|
@@ -103,6 +103,7 @@ G_BEGIN_DECLS
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_framebuffer_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -125,7 +126,7 @@ GType cogl_framebuffer_get_gtype (void);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_framebuffer_allocate (CoglFramebuffer *framebuffer,
|
||||
GError **error);
|
||||
|
||||
@@ -139,7 +140,7 @@ cogl_framebuffer_allocate (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_framebuffer_get_width (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -152,7 +153,7 @@ cogl_framebuffer_get_width (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_framebuffer_get_height (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -184,7 +185,7 @@ cogl_framebuffer_get_height (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_set_viewport (CoglFramebuffer *framebuffer,
|
||||
float x,
|
||||
float y,
|
||||
@@ -202,7 +203,7 @@ cogl_framebuffer_set_viewport (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_framebuffer_get_viewport_x (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -216,7 +217,7 @@ cogl_framebuffer_get_viewport_x (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_framebuffer_get_viewport_y (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -230,7 +231,7 @@ cogl_framebuffer_get_viewport_y (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_framebuffer_get_viewport_width (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -244,7 +245,7 @@ cogl_framebuffer_get_viewport_width (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_framebuffer_get_viewport_height (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -262,7 +263,7 @@ cogl_framebuffer_get_viewport_height (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_get_viewport4fv (CoglFramebuffer *framebuffer,
|
||||
float *viewport);
|
||||
|
||||
@@ -275,7 +276,7 @@ cogl_framebuffer_get_viewport4fv (CoglFramebuffer *framebuffer,
|
||||
*
|
||||
* Since: 1.10
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_push_matrix (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -286,7 +287,7 @@ cogl_framebuffer_push_matrix (CoglFramebuffer *framebuffer);
|
||||
*
|
||||
* Since: 1.10
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_pop_matrix (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -298,7 +299,7 @@ cogl_framebuffer_pop_matrix (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_identity_matrix (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -314,7 +315,7 @@ cogl_framebuffer_identity_matrix (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_scale (CoglFramebuffer *framebuffer,
|
||||
float x,
|
||||
float y,
|
||||
@@ -333,7 +334,7 @@ cogl_framebuffer_scale (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_translate (CoglFramebuffer *framebuffer,
|
||||
float x,
|
||||
float y,
|
||||
@@ -356,7 +357,7 @@ cogl_framebuffer_translate (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_rotate (CoglFramebuffer *framebuffer,
|
||||
float angle,
|
||||
float x,
|
||||
@@ -374,7 +375,7 @@ cogl_framebuffer_rotate (CoglFramebuffer *framebuffer,
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_rotate_euler (CoglFramebuffer *framebuffer,
|
||||
const graphene_euler_t *euler);
|
||||
|
||||
@@ -388,7 +389,7 @@ cogl_framebuffer_rotate_euler (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_transform (CoglFramebuffer *framebuffer,
|
||||
const CoglMatrix *matrix);
|
||||
|
||||
@@ -402,7 +403,7 @@ cogl_framebuffer_transform (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_get_modelview_matrix (CoglFramebuffer *framebuffer,
|
||||
CoglMatrix *matrix);
|
||||
|
||||
@@ -416,7 +417,7 @@ cogl_framebuffer_get_modelview_matrix (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_set_modelview_matrix (CoglFramebuffer *framebuffer,
|
||||
const CoglMatrix *matrix);
|
||||
|
||||
@@ -440,7 +441,7 @@ cogl_framebuffer_set_modelview_matrix (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_perspective (CoglFramebuffer *framebuffer,
|
||||
float fov_y,
|
||||
float aspect,
|
||||
@@ -468,7 +469,7 @@ cogl_framebuffer_perspective (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_frustum (CoglFramebuffer *framebuffer,
|
||||
float left,
|
||||
float right,
|
||||
@@ -497,7 +498,7 @@ cogl_framebuffer_frustum (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_orthographic (CoglFramebuffer *framebuffer,
|
||||
float x_1,
|
||||
float y_1,
|
||||
@@ -516,7 +517,7 @@ cogl_framebuffer_orthographic (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_get_projection_matrix (CoglFramebuffer *framebuffer,
|
||||
CoglMatrix *matrix);
|
||||
|
||||
@@ -530,7 +531,7 @@ cogl_framebuffer_get_projection_matrix (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_set_projection_matrix (CoglFramebuffer *framebuffer,
|
||||
const CoglMatrix *matrix);
|
||||
|
||||
@@ -554,7 +555,7 @@ cogl_framebuffer_set_projection_matrix (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_push_scissor_clip (CoglFramebuffer *framebuffer,
|
||||
int x,
|
||||
int y,
|
||||
@@ -581,7 +582,7 @@ cogl_framebuffer_push_scissor_clip (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_push_rectangle_clip (CoglFramebuffer *framebuffer,
|
||||
float x_1,
|
||||
float y_1,
|
||||
@@ -617,7 +618,7 @@ cogl_framebuffer_push_rectangle_clip (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_push_primitive_clip (CoglFramebuffer *framebuffer,
|
||||
CoglPrimitive *primitive,
|
||||
float bounds_x1,
|
||||
@@ -625,7 +626,7 @@ cogl_framebuffer_push_primitive_clip (CoglFramebuffer *framebuffer,
|
||||
float bounds_x2,
|
||||
float bounds_y2);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_push_region_clip (CoglFramebuffer *framebuffer,
|
||||
cairo_region_t *region);
|
||||
|
||||
@@ -640,7 +641,7 @@ cogl_framebuffer_push_region_clip (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_pop_clip (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -654,7 +655,7 @@ cogl_framebuffer_pop_clip (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_framebuffer_get_red_bits (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -668,7 +669,7 @@ cogl_framebuffer_get_red_bits (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_framebuffer_get_green_bits (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -682,7 +683,7 @@ cogl_framebuffer_get_green_bits (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_framebuffer_get_blue_bits (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -696,7 +697,7 @@ cogl_framebuffer_get_blue_bits (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_framebuffer_get_alpha_bits (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -710,7 +711,7 @@ cogl_framebuffer_get_alpha_bits (CoglFramebuffer *framebuffer);
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_framebuffer_get_depth_bits (CoglFramebuffer *framebuffer);
|
||||
|
||||
/*
|
||||
@@ -727,7 +728,7 @@ cogl_framebuffer_get_depth_bits (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.20
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_framebuffer_get_is_stereo (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -745,7 +746,7 @@ cogl_framebuffer_get_is_stereo (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_framebuffer_get_dither_enabled (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -770,7 +771,7 @@ cogl_framebuffer_get_dither_enabled (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_set_dither_enabled (CoglFramebuffer *framebuffer,
|
||||
gboolean dither_enabled);
|
||||
|
||||
@@ -785,7 +786,7 @@ cogl_framebuffer_set_dither_enabled (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.18
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_framebuffer_get_depth_write_enabled (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -803,7 +804,7 @@ cogl_framebuffer_get_depth_write_enabled (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.18
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_set_depth_write_enabled (CoglFramebuffer *framebuffer,
|
||||
gboolean depth_write_enabled);
|
||||
|
||||
@@ -818,7 +819,7 @@ cogl_framebuffer_set_depth_write_enabled (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.20
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglStereoMode
|
||||
COGL_EXPORT CoglStereoMode
|
||||
cogl_framebuffer_get_stereo_mode (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -838,7 +839,7 @@ cogl_framebuffer_get_stereo_mode (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.20
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_set_stereo_mode (CoglFramebuffer *framebuffer,
|
||||
CoglStereoMode stereo_mode);
|
||||
|
||||
@@ -883,7 +884,7 @@ cogl_framebuffer_set_stereo_mode (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_set_samples_per_pixel (CoglFramebuffer *framebuffer,
|
||||
int samples_per_pixel);
|
||||
|
||||
@@ -911,7 +912,7 @@ cogl_framebuffer_set_samples_per_pixel (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_framebuffer_get_samples_per_pixel (CoglFramebuffer *framebuffer);
|
||||
|
||||
|
||||
@@ -943,7 +944,7 @@ cogl_framebuffer_get_samples_per_pixel (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_resolve_samples (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -979,7 +980,7 @@ cogl_framebuffer_resolve_samples (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_resolve_samples_region (CoglFramebuffer *framebuffer,
|
||||
int x,
|
||||
int y,
|
||||
@@ -999,7 +1000,7 @@ cogl_framebuffer_resolve_samples_region (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglContext *
|
||||
COGL_EXPORT CoglContext *
|
||||
cogl_framebuffer_get_context (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -1016,7 +1017,7 @@ cogl_framebuffer_get_context (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_clear (CoglFramebuffer *framebuffer,
|
||||
unsigned long buffers,
|
||||
const CoglColor *color);
|
||||
@@ -1041,7 +1042,7 @@ cogl_framebuffer_clear (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_clear4f (CoglFramebuffer *framebuffer,
|
||||
unsigned long buffers,
|
||||
float red,
|
||||
@@ -1074,7 +1075,7 @@ cogl_framebuffer_clear4f (CoglFramebuffer *framebuffer,
|
||||
* cogl_primitive_draw() instead
|
||||
*/
|
||||
COGL_DEPRECATED_FOR (cogl_primitive_draw)
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_draw_primitive (CoglFramebuffer *framebuffer,
|
||||
CoglPipeline *pipeline,
|
||||
CoglPrimitive *primitive);
|
||||
@@ -1103,7 +1104,7 @@ cogl_framebuffer_draw_primitive (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_draw_rectangle (CoglFramebuffer *framebuffer,
|
||||
CoglPipeline *pipeline,
|
||||
float x_1,
|
||||
@@ -1154,7 +1155,7 @@ cogl_framebuffer_draw_rectangle (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_draw_textured_rectangle (CoglFramebuffer *framebuffer,
|
||||
CoglPipeline *pipeline,
|
||||
float x_1,
|
||||
@@ -1225,7 +1226,7 @@ cogl_framebuffer_draw_textured_rectangle (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_draw_multitextured_rectangle (CoglFramebuffer *framebuffer,
|
||||
CoglPipeline *pipeline,
|
||||
float x_1,
|
||||
@@ -1269,7 +1270,7 @@ cogl_framebuffer_draw_multitextured_rectangle (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_draw_rectangles (CoglFramebuffer *framebuffer,
|
||||
CoglPipeline *pipeline,
|
||||
const float *coordinates,
|
||||
@@ -1323,7 +1324,7 @@ cogl_framebuffer_draw_rectangles (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_draw_textured_rectangles (CoglFramebuffer *framebuffer,
|
||||
CoglPipeline *pipeline,
|
||||
const float *coordinates,
|
||||
@@ -1358,7 +1359,7 @@ cogl_framebuffer_draw_textured_rectangles (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_discard_buffers (CoglFramebuffer *framebuffer,
|
||||
unsigned long buffers);
|
||||
|
||||
@@ -1379,7 +1380,7 @@ cogl_framebuffer_discard_buffers (CoglFramebuffer *framebuffer,
|
||||
* Stability: unstable
|
||||
* Since: 1.10
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_framebuffer_finish (CoglFramebuffer *framebuffer);
|
||||
|
||||
/**
|
||||
@@ -1408,7 +1409,7 @@ cogl_framebuffer_finish (CoglFramebuffer *framebuffer);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_framebuffer_read_pixels_into_bitmap (CoglFramebuffer *framebuffer,
|
||||
int x,
|
||||
int y,
|
||||
@@ -1454,7 +1455,7 @@ cogl_framebuffer_read_pixels_into_bitmap (CoglFramebuffer *framebuffer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_framebuffer_read_pixels (CoglFramebuffer *framebuffer,
|
||||
int x,
|
||||
int y,
|
||||
@@ -1463,7 +1464,7 @@ cogl_framebuffer_read_pixels (CoglFramebuffer *framebuffer,
|
||||
CoglPixelFormat format,
|
||||
uint8_t *pixels);
|
||||
|
||||
uint32_t
|
||||
COGL_EXPORT uint32_t
|
||||
cogl_framebuffer_error_quark (void);
|
||||
|
||||
/**
|
||||
@@ -1489,7 +1490,7 @@ typedef enum /*< prefix=COGL_FRAMEBUFFER_ERROR >*/
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_framebuffer (void *object);
|
||||
|
||||
/**
|
||||
@@ -1544,7 +1545,7 @@ cogl_is_framebuffer (void *object);
|
||||
* and this function returns FALSE, an error object with a code from
|
||||
* COGL_SYSTEM_ERROR will be created.
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_blit_framebuffer (CoglFramebuffer *src,
|
||||
CoglFramebuffer *dest,
|
||||
int src_x,
|
||||
|
@@ -67,7 +67,7 @@ G_BEGIN_DECLS
|
||||
* Stability: unstable
|
||||
* Since: 1.10
|
||||
*/
|
||||
GSource *
|
||||
COGL_EXPORT GSource *
|
||||
cogl_glib_source_new (CoglContext *context,
|
||||
int priority);
|
||||
|
||||
@@ -88,7 +88,7 @@ cogl_glib_source_new (CoglContext *context,
|
||||
* Stability: unstable
|
||||
* Since: 1.16
|
||||
*/
|
||||
GSource *
|
||||
COGL_EXPORT GSource *
|
||||
cogl_glib_renderer_source_new (CoglRenderer *renderer,
|
||||
int priority);
|
||||
|
||||
|
@@ -269,8 +269,10 @@ void _cogl_gtype_object_class_base_finalize (CoglObjectClass *klass);
|
||||
void _cogl_gtype_object_class_init (CoglObjectClass *klass);
|
||||
void _cogl_gtype_object_init (CoglObject *object);
|
||||
|
||||
COGL_EXPORT
|
||||
void cogl_object_value_set_object (GValue *value,
|
||||
gpointer object);
|
||||
COGL_EXPORT
|
||||
gpointer cogl_object_value_get_object (const GValue *value);
|
||||
|
||||
void _cogl_gtype_dummy_iface_init (gpointer iface);
|
||||
|
@@ -61,7 +61,7 @@ typedef struct _CoglIndexBuffer CoglIndexBuffer;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
GType cogl_index_buffer_get_gtype (void);
|
||||
COGL_EXPORT GType cogl_index_buffer_get_gtype (void);
|
||||
|
||||
/**
|
||||
* cogl_index_buffer_new:
|
||||
@@ -78,7 +78,7 @@ GType cogl_index_buffer_get_gtype (void);
|
||||
* Since: 1.4
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglIndexBuffer *
|
||||
COGL_EXPORT CoglIndexBuffer *
|
||||
cogl_index_buffer_new (CoglContext *context,
|
||||
size_t bytes);
|
||||
|
||||
@@ -94,7 +94,7 @@ cogl_index_buffer_new (CoglContext *context,
|
||||
* Since: 1.4
|
||||
* Stability: Unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_index_buffer (void *object);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -112,33 +112,34 @@ G_BEGIN_DECLS
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_indices_get_gtype (void);
|
||||
|
||||
CoglIndices *
|
||||
COGL_EXPORT CoglIndices *
|
||||
cogl_indices_new (CoglContext *context,
|
||||
CoglIndicesType type,
|
||||
const void *indices_data,
|
||||
int n_indices);
|
||||
|
||||
CoglIndices *
|
||||
COGL_EXPORT CoglIndices *
|
||||
cogl_indices_new_for_buffer (CoglIndicesType type,
|
||||
CoglIndexBuffer *buffer,
|
||||
size_t offset);
|
||||
|
||||
CoglIndexBuffer *
|
||||
COGL_EXPORT CoglIndexBuffer *
|
||||
cogl_indices_get_buffer (CoglIndices *indices);
|
||||
|
||||
CoglIndicesType
|
||||
COGL_EXPORT CoglIndicesType
|
||||
cogl_indices_get_type (CoglIndices *indices);
|
||||
|
||||
size_t
|
||||
COGL_EXPORT size_t
|
||||
cogl_indices_get_offset (CoglIndices *indices);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_indices_set_offset (CoglIndices *indices,
|
||||
size_t offset);
|
||||
|
||||
CoglIndices *
|
||||
COGL_EXPORT CoglIndices *
|
||||
cogl_get_rectangle_indices (CoglContext *context, int n_rectangles);
|
||||
|
||||
/**
|
||||
@@ -152,7 +153,7 @@ cogl_get_rectangle_indices (CoglContext *context, int n_rectangles);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_indices (void *object);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -75,4 +75,6 @@
|
||||
|
||||
#endif /* COGL_DISABLE_DEPRECATION_WARNINGS */
|
||||
|
||||
#define COGL_EXPORT __attribute__((visibility("default"))) extern
|
||||
|
||||
#endif /* __COGL_MACROS_H__ */
|
||||
|
@@ -140,6 +140,7 @@ typedef struct _CoglMatrixStack CoglMatrixStack;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_matrix_stack_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -183,6 +184,7 @@ typedef struct _CoglMatrixEntry CoglMatrixEntry;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_matrix_entry_get_gtype (void);
|
||||
|
||||
|
||||
@@ -214,7 +216,7 @@ GType cogl_matrix_entry_get_gtype (void);
|
||||
*
|
||||
* Return value: (transfer full): A newly allocated #CoglMatrixStack
|
||||
*/
|
||||
CoglMatrixStack *
|
||||
COGL_EXPORT CoglMatrixStack *
|
||||
cogl_matrix_stack_new (CoglContext *ctx);
|
||||
|
||||
/**
|
||||
@@ -229,7 +231,7 @@ cogl_matrix_stack_new (CoglContext *ctx);
|
||||
* called when going back up one layer to restore the previous
|
||||
* transform of an ancestor.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_stack_push (CoglMatrixStack *stack);
|
||||
|
||||
/**
|
||||
@@ -242,7 +244,7 @@ cogl_matrix_stack_push (CoglMatrixStack *stack);
|
||||
* This is usually called while traversing a scenegraph whenever you
|
||||
* return up one level in the graph towards the root node.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_stack_pop (CoglMatrixStack *stack);
|
||||
|
||||
/**
|
||||
@@ -251,7 +253,7 @@ cogl_matrix_stack_pop (CoglMatrixStack *stack);
|
||||
*
|
||||
* Resets the current matrix to the identity matrix.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_stack_load_identity (CoglMatrixStack *stack);
|
||||
|
||||
/**
|
||||
@@ -264,7 +266,7 @@ cogl_matrix_stack_load_identity (CoglMatrixStack *stack);
|
||||
* Multiplies the current matrix by one that scales the x, y and z
|
||||
* axes by the given values.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_stack_scale (CoglMatrixStack *stack,
|
||||
float x,
|
||||
float y,
|
||||
@@ -280,7 +282,7 @@ cogl_matrix_stack_scale (CoglMatrixStack *stack,
|
||||
* Multiplies the current matrix by one that translates along all
|
||||
* three axes according to the given values.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_stack_translate (CoglMatrixStack *stack,
|
||||
float x,
|
||||
float y,
|
||||
@@ -300,7 +302,7 @@ cogl_matrix_stack_translate (CoglMatrixStack *stack,
|
||||
* the axis-vector (0, 0, 1) causes a small counter-clockwise
|
||||
* rotation.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_stack_rotate (CoglMatrixStack *stack,
|
||||
float angle,
|
||||
float x,
|
||||
@@ -315,7 +317,7 @@ cogl_matrix_stack_rotate (CoglMatrixStack *stack,
|
||||
* Multiplies the current matrix by one that rotates according to the
|
||||
* rotation described by @euler.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_stack_rotate_euler (CoglMatrixStack *stack,
|
||||
const graphene_euler_t *euler);
|
||||
|
||||
@@ -326,7 +328,7 @@ cogl_matrix_stack_rotate_euler (CoglMatrixStack *stack,
|
||||
*
|
||||
* Multiplies the current matrix by the given matrix.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_stack_multiply (CoglMatrixStack *stack,
|
||||
const CoglMatrix *matrix);
|
||||
|
||||
@@ -348,7 +350,7 @@ cogl_matrix_stack_multiply (CoglMatrixStack *stack,
|
||||
* viewing frustum defined by 4 side clip planes that all cross
|
||||
* through the origin and 2 near and far clip planes.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_stack_frustum (CoglMatrixStack *stack,
|
||||
float left,
|
||||
float right,
|
||||
@@ -374,7 +376,7 @@ cogl_matrix_stack_frustum (CoglMatrixStack *stack,
|
||||
* since there wont be enough precision to identify the depth of
|
||||
* objects near to each other.</note>
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_stack_perspective (CoglMatrixStack *stack,
|
||||
float fov_y,
|
||||
float aspect,
|
||||
@@ -397,7 +399,7 @@ cogl_matrix_stack_perspective (CoglMatrixStack *stack,
|
||||
*
|
||||
* Replaces the current matrix with an orthographic projection matrix.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_stack_orthographic (CoglMatrixStack *stack,
|
||||
float x_1,
|
||||
float y_1,
|
||||
@@ -418,7 +420,7 @@ cogl_matrix_stack_orthographic (CoglMatrixStack *stack,
|
||||
* for degenerate transformations that can't be inverted (in this case the
|
||||
* @inverse matrix will simply be initialized with the identity matrix)
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_matrix_stack_get_inverse (CoglMatrixStack *stack,
|
||||
CoglMatrix *inverse);
|
||||
|
||||
@@ -440,7 +442,7 @@ cogl_matrix_stack_get_inverse (CoglMatrixStack *stack,
|
||||
* Return value: (transfer none): A pointer to the #CoglMatrixEntry
|
||||
* representing the current matrix stack transform.
|
||||
*/
|
||||
CoglMatrixEntry *
|
||||
COGL_EXPORT CoglMatrixEntry *
|
||||
cogl_matrix_stack_get_entry (CoglMatrixStack *stack);
|
||||
|
||||
/**
|
||||
@@ -469,7 +471,7 @@ cogl_matrix_stack_get_entry (CoglMatrixStack *stack);
|
||||
* and in that case @matrix will be initialized with
|
||||
* the value of the current transform.
|
||||
*/
|
||||
CoglMatrix *
|
||||
COGL_EXPORT CoglMatrix *
|
||||
cogl_matrix_stack_get (CoglMatrixStack *stack,
|
||||
CoglMatrix *matrix);
|
||||
|
||||
@@ -500,7 +502,7 @@ cogl_matrix_stack_get (CoglMatrixStack *stack,
|
||||
* and in that case @matrix will be initialized with
|
||||
* the effective transform represented by @entry.
|
||||
*/
|
||||
CoglMatrix *
|
||||
COGL_EXPORT CoglMatrix *
|
||||
cogl_matrix_entry_get (CoglMatrixEntry *entry,
|
||||
CoglMatrix *matrix);
|
||||
|
||||
@@ -514,7 +516,7 @@ cogl_matrix_entry_get (CoglMatrixEntry *entry,
|
||||
* since the last time cogl_matrix_stack_push() was called or since
|
||||
* the stack was initialized.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_stack_set (CoglMatrixStack *stack,
|
||||
const CoglMatrix *matrix);
|
||||
|
||||
@@ -527,7 +529,7 @@ cogl_matrix_stack_set (CoglMatrixStack *stack,
|
||||
* Return value: %TRUE if @object is a #CoglMatrixStack, otherwise
|
||||
* %FALSE.
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_matrix_stack (void *object);
|
||||
|
||||
/**
|
||||
@@ -549,7 +551,7 @@ cogl_is_matrix_stack (void *object);
|
||||
* @entry0 and the transform of @entry1 is a translation,
|
||||
* otherwise %FALSE.
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_matrix_entry_calculate_translation (CoglMatrixEntry *entry0,
|
||||
CoglMatrixEntry *entry1,
|
||||
float *x,
|
||||
@@ -570,7 +572,7 @@ cogl_matrix_entry_calculate_translation (CoglMatrixEntry *entry0,
|
||||
* Return value: %TRUE if @entry is definitely an identity transform,
|
||||
* otherwise %FALSE.
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_matrix_entry_is_identity (CoglMatrixEntry *entry);
|
||||
|
||||
/**
|
||||
@@ -588,7 +590,7 @@ cogl_matrix_entry_is_identity (CoglMatrixEntry *entry);
|
||||
* Return value: %TRUE if @entry0 represents the same transform as
|
||||
* @entry1, otherwise %FALSE.
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_matrix_entry_equal (CoglMatrixEntry *entry0,
|
||||
CoglMatrixEntry *entry1);
|
||||
|
||||
@@ -599,7 +601,7 @@ cogl_matrix_entry_equal (CoglMatrixEntry *entry0,
|
||||
* Allows visualizing the operations that build up the given @entry
|
||||
* for debugging purposes by printing to stdout.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_debug_matrix_entry_print (CoglMatrixEntry *entry);
|
||||
|
||||
/**
|
||||
@@ -613,7 +615,7 @@ cogl_debug_matrix_entry_print (CoglMatrixEntry *entry);
|
||||
* It is an error to pass an @entry pointer to cogl_object_ref() and
|
||||
* cogl_object_unref()
|
||||
*/
|
||||
CoglMatrixEntry *
|
||||
COGL_EXPORT CoglMatrixEntry *
|
||||
cogl_matrix_entry_ref (CoglMatrixEntry *entry);
|
||||
|
||||
/**
|
||||
@@ -624,7 +626,7 @@ cogl_matrix_entry_ref (CoglMatrixEntry *entry);
|
||||
* cogl_matrix_entry_unref() or to release the reference given when
|
||||
* calling cogl_matrix_stack_get_entry().
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_entry_unref (CoglMatrixEntry *entry);
|
||||
|
||||
#endif /* _COGL_MATRIX_STACK_H_ */
|
||||
|
@@ -135,7 +135,7 @@ COGL_STRUCT_SIZE_ASSERT (CoglMatrix, 128 + sizeof (unsigned long) * 3);
|
||||
* .wx=0; .wy=0; .wz=0; .ww=1;
|
||||
* ]|
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_init_identity (CoglMatrix *matrix);
|
||||
|
||||
/**
|
||||
@@ -156,7 +156,7 @@ cogl_matrix_init_identity (CoglMatrix *matrix);
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_init_translation (CoglMatrix *matrix,
|
||||
float tx,
|
||||
float ty,
|
||||
@@ -174,7 +174,7 @@ cogl_matrix_init_translation (CoglMatrix *matrix,
|
||||
* <note>It is possible to multiply the @a matrix in-place, so
|
||||
* @result can be equal to @a but can't be equal to @b.</note>
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_multiply (CoglMatrix *result,
|
||||
const CoglMatrix *a,
|
||||
const CoglMatrix *b);
|
||||
@@ -190,7 +190,7 @@ cogl_matrix_multiply (CoglMatrix *result,
|
||||
* Multiplies @matrix with a rotation matrix that applies a rotation
|
||||
* of @angle degrees around the specified 3D vector.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_rotate (CoglMatrix *matrix,
|
||||
float angle,
|
||||
float x,
|
||||
@@ -207,7 +207,7 @@ cogl_matrix_rotate (CoglMatrix *matrix,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_rotate_euler (CoglMatrix *matrix,
|
||||
const graphene_euler_t *euler);
|
||||
|
||||
@@ -221,7 +221,7 @@ cogl_matrix_rotate_euler (CoglMatrix *matrix,
|
||||
* Multiplies @matrix with a transform matrix that translates along
|
||||
* the X, Y and Z axis.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_translate (CoglMatrix *matrix,
|
||||
float x,
|
||||
float y,
|
||||
@@ -237,7 +237,7 @@ cogl_matrix_translate (CoglMatrix *matrix,
|
||||
* Multiplies @matrix with a transform matrix that scales along the X,
|
||||
* Y and Z axis.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_scale (CoglMatrix *matrix,
|
||||
float sx,
|
||||
float sy,
|
||||
@@ -286,7 +286,7 @@ cogl_matrix_scale (CoglMatrix *matrix,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_look_at (CoglMatrix *matrix,
|
||||
float eye_position_x,
|
||||
float eye_position_y,
|
||||
@@ -314,7 +314,7 @@ cogl_matrix_look_at (CoglMatrix *matrix,
|
||||
*
|
||||
* Multiplies @matrix by the given frustum perspective matrix.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_frustum (CoglMatrix *matrix,
|
||||
float left,
|
||||
float right,
|
||||
@@ -339,7 +339,7 @@ cogl_matrix_frustum (CoglMatrix *matrix,
|
||||
* since there wont be enough precision to identify the depth of
|
||||
* objects near to each other.</note>
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_perspective (CoglMatrix *matrix,
|
||||
float fov_y,
|
||||
float aspect,
|
||||
@@ -365,7 +365,7 @@ cogl_matrix_perspective (CoglMatrix *matrix,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_orthographic (CoglMatrix *matrix,
|
||||
float x_1,
|
||||
float y_1,
|
||||
@@ -404,7 +404,7 @@ cogl_matrix_orthographic (CoglMatrix *matrix,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_view_2d_in_frustum (CoglMatrix *matrix,
|
||||
float left,
|
||||
float right,
|
||||
@@ -443,7 +443,7 @@ cogl_matrix_view_2d_in_frustum (CoglMatrix *matrix,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_view_2d_in_perspective (CoglMatrix *matrix,
|
||||
float fov_y,
|
||||
float aspect,
|
||||
@@ -459,7 +459,7 @@ cogl_matrix_view_2d_in_perspective (CoglMatrix *matrix,
|
||||
*
|
||||
* Initializes @matrix with the contents of @array
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_init_from_array (CoglMatrix *matrix,
|
||||
const float *array);
|
||||
|
||||
@@ -471,7 +471,7 @@ cogl_matrix_init_from_array (CoglMatrix *matrix,
|
||||
*
|
||||
* Return value: a pointer to the float array
|
||||
*/
|
||||
const float *
|
||||
COGL_EXPORT const float *
|
||||
cogl_matrix_get_array (const CoglMatrix *matrix);
|
||||
|
||||
/**
|
||||
@@ -481,7 +481,7 @@ cogl_matrix_get_array (const CoglMatrix *matrix);
|
||||
*
|
||||
* Initializes @matrix from a #graphene_euler_t rotation.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_init_from_euler (CoglMatrix *matrix,
|
||||
const graphene_euler_t *euler);
|
||||
|
||||
@@ -497,7 +497,7 @@ cogl_matrix_init_from_euler (CoglMatrix *matrix,
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_matrix_equal (const void *v1, const void *v2);
|
||||
|
||||
/**
|
||||
@@ -512,7 +512,7 @@ cogl_matrix_equal (const void *v1, const void *v2);
|
||||
*
|
||||
* Since: 1.6
|
||||
*/
|
||||
CoglMatrix *
|
||||
COGL_EXPORT CoglMatrix *
|
||||
cogl_matrix_copy (const CoglMatrix *matrix);
|
||||
|
||||
/**
|
||||
@@ -524,7 +524,7 @@ cogl_matrix_copy (const CoglMatrix *matrix);
|
||||
*
|
||||
* Since: 1.6
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_free (CoglMatrix *matrix);
|
||||
|
||||
/**
|
||||
@@ -547,7 +547,7 @@ cogl_matrix_free (CoglMatrix *matrix);
|
||||
*
|
||||
* Since: 1.2
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_matrix_get_inverse (const CoglMatrix *matrix,
|
||||
CoglMatrix *inverse);
|
||||
|
||||
@@ -566,7 +566,7 @@ cogl_matrix_get_inverse (const CoglMatrix *matrix,
|
||||
* Transforms a point whos position is given and returned as four float
|
||||
* components.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_transform_point (const CoglMatrix *matrix,
|
||||
float *x,
|
||||
float *y,
|
||||
@@ -622,7 +622,7 @@ cogl_matrix_transform_point (const CoglMatrix *matrix,
|
||||
*
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_transform_points (const CoglMatrix *matrix,
|
||||
int n_components,
|
||||
size_t stride_in,
|
||||
@@ -677,7 +677,7 @@ cogl_matrix_transform_points (const CoglMatrix *matrix,
|
||||
*
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_project_points (const CoglMatrix *matrix,
|
||||
int n_components,
|
||||
size_t stride_in,
|
||||
@@ -695,7 +695,7 @@ cogl_matrix_project_points (const CoglMatrix *matrix,
|
||||
* Returns: %TRUE if @matrix is an identity matrix else %FALSE
|
||||
* Since: 1.8
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_matrix_is_identity (const CoglMatrix *matrix);
|
||||
|
||||
/**
|
||||
@@ -707,7 +707,7 @@ cogl_matrix_is_identity (const CoglMatrix *matrix);
|
||||
*
|
||||
* Since: 1.10
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_matrix_transpose (CoglMatrix *matrix);
|
||||
|
||||
/**
|
||||
@@ -718,7 +718,7 @@ cogl_matrix_transpose (CoglMatrix *matrix);
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_debug_matrix_print (const CoglMatrix *matrix);
|
||||
|
||||
#define COGL_GTYPE_TYPE_MATRIX (cogl_matrix_get_gtype ())
|
||||
@@ -728,6 +728,7 @@ cogl_debug_matrix_print (const CoglMatrix *matrix);
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_matrix_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -739,7 +740,7 @@ GType cogl_matrix_get_gtype (void);
|
||||
*
|
||||
* Deprecated: 1.18: Use cogl_matrix_get_gtype() instead.
|
||||
*/
|
||||
GType
|
||||
COGL_EXPORT GType
|
||||
cogl_gtype_matrix_get_type (void);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -177,7 +177,7 @@ typedef void (*CoglMetaTextureCallback) (CoglTexture *sub_texture,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_meta_texture_foreach_in_region (CoglMetaTexture *meta_texture,
|
||||
float tx_1,
|
||||
float ty_1,
|
||||
|
@@ -43,6 +43,7 @@
|
||||
#endif
|
||||
#include <cogl/winsys/cogl-winsys-private.h>
|
||||
|
||||
COGL_EXPORT
|
||||
void cogl_renderer_set_custom_winsys (CoglRenderer *renderer,
|
||||
CoglCustomWinsysVtableGetter winsys_vtable_getter,
|
||||
void *user_data);
|
||||
|
@@ -279,7 +279,7 @@ _cogl_object_set_user_data (CoglObject *object,
|
||||
void *user_data,
|
||||
CoglUserDataDestroyInternalCallback destroy);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_object_default_unref (void *obj);
|
||||
|
||||
#endif /* __COGL_OBJECT_PRIVATE_H */
|
||||
|
@@ -52,6 +52,7 @@ typedef struct _CoglObject CoglObject;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_object_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -62,7 +63,7 @@ GType cogl_object_get_gtype (void);
|
||||
*
|
||||
* Returns: the @object, with its reference count increased
|
||||
*/
|
||||
void *
|
||||
COGL_EXPORT void *
|
||||
cogl_object_ref (void *object);
|
||||
|
||||
/**
|
||||
@@ -72,7 +73,7 @@ cogl_object_ref (void *object);
|
||||
* Drecreases the reference count of @object by 1; if the reference
|
||||
* count reaches 0, the resources allocated by @object will be freed
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_object_unref (void *object);
|
||||
|
||||
/**
|
||||
@@ -187,7 +188,7 @@ typedef void
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_object_set_user_data (CoglObject *object,
|
||||
CoglUserDataKey *key,
|
||||
void *user_data,
|
||||
@@ -209,7 +210,7 @@ cogl_object_set_user_data (CoglObject *object,
|
||||
*
|
||||
* Since: 1.4
|
||||
*/
|
||||
void *
|
||||
COGL_EXPORT void *
|
||||
cogl_object_get_user_data (CoglObject *object,
|
||||
CoglUserDataKey *key);
|
||||
|
||||
@@ -226,7 +227,7 @@ cogl_object_get_user_data (CoglObject *object,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_debug_object_foreach_type (CoglDebugObjectForeachTypeCallback func,
|
||||
void *user_data);
|
||||
|
||||
@@ -241,7 +242,7 @@ cogl_debug_object_foreach_type (CoglDebugObjectForeachTypeCallback func,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_debug_object_print_instances (void);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -59,6 +59,7 @@ typedef struct _CoglOffscreen CoglOffscreen;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_offscreen_get_gtype (void);
|
||||
|
||||
/* Offscreen api */
|
||||
@@ -95,7 +96,7 @@ GType cogl_offscreen_get_gtype (void);
|
||||
* Return value: (transfer full): a newly instantiated #CoglOffscreen
|
||||
* framebuffer.
|
||||
*/
|
||||
CoglOffscreen *
|
||||
COGL_EXPORT CoglOffscreen *
|
||||
cogl_offscreen_new_with_texture (CoglTexture *texture);
|
||||
|
||||
/**
|
||||
@@ -119,7 +120,7 @@ cogl_offscreen_new_with_texture (CoglTexture *texture);
|
||||
* Deprecated: 1.16: Use cogl_offscreen_new_with_texture instead.
|
||||
*/
|
||||
COGL_DEPRECATED_FOR (cogl_offscreen_new_with_texture)
|
||||
CoglOffscreen *
|
||||
COGL_EXPORT CoglOffscreen *
|
||||
cogl_offscreen_new_to_texture (CoglTexture *texture);
|
||||
|
||||
/**
|
||||
@@ -132,13 +133,13 @@ cogl_offscreen_new_to_texture (CoglTexture *texture);
|
||||
* Returns: %TRUE if @object is a #CoglOffscreen framebuffer,
|
||||
* %FALSE otherwise
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_offscreen (void *object);
|
||||
|
||||
/**
|
||||
* cogl_offscreen_get_texture: (skip)
|
||||
*/
|
||||
CoglTexture *
|
||||
COGL_EXPORT CoglTexture *
|
||||
cogl_offscreen_get_texture (CoglOffscreen *offscreen);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -78,7 +78,7 @@ struct _CoglOnscreen
|
||||
CoglOnscreen *
|
||||
_cogl_onscreen_new (void);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_framebuffer_winsys_update_size (CoglFramebuffer *framebuffer,
|
||||
int width, int height);
|
||||
|
||||
@@ -87,10 +87,10 @@ _cogl_onscreen_queue_event (CoglOnscreen *onscreen,
|
||||
CoglFrameEvent type,
|
||||
CoglFrameInfo *info);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_onscreen_notify_frame_sync (CoglOnscreen *onscreen, CoglFrameInfo *info);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_onscreen_notify_complete (CoglOnscreen *onscreen, CoglFrameInfo *info);
|
||||
|
||||
void
|
||||
|
@@ -52,9 +52,10 @@ typedef struct _CoglOnscreenTemplate CoglOnscreenTemplate;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_onscreen_template_get_gtype (void);
|
||||
|
||||
CoglOnscreenTemplate *
|
||||
COGL_EXPORT CoglOnscreenTemplate *
|
||||
cogl_onscreen_template_new (CoglSwapChain *swap_chain);
|
||||
|
||||
/**
|
||||
@@ -80,7 +81,7 @@ cogl_onscreen_template_new (CoglSwapChain *swap_chain);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_onscreen_template_set_samples_per_pixel (
|
||||
CoglOnscreenTemplate *onscreen_template,
|
||||
int n);
|
||||
@@ -99,7 +100,7 @@ cogl_onscreen_template_set_samples_per_pixel (
|
||||
* Since: 1.20
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_onscreen_template_set_stereo_enabled (
|
||||
CoglOnscreenTemplate *onscreen_template,
|
||||
gboolean enabled);
|
||||
@@ -114,7 +115,7 @@ cogl_onscreen_template_set_stereo_enabled (
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_onscreen_template (void *object);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -55,6 +55,7 @@ typedef struct _CoglOnscreen CoglOnscreen;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_onscreen_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -71,7 +72,7 @@ GType cogl_onscreen_get_gtype (void);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglOnscreen *
|
||||
COGL_EXPORT CoglOnscreen *
|
||||
cogl_onscreen_new (CoglContext *context, int width, int height);
|
||||
|
||||
#ifdef COGL_HAS_X11
|
||||
@@ -92,7 +93,7 @@ cogl_onscreen_new (CoglContext *context, int width, int height);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
uint32_t
|
||||
COGL_EXPORT uint32_t
|
||||
cogl_x11_onscreen_get_window_xid (CoglOnscreen *onscreen);
|
||||
|
||||
#endif /* COGL_HAS_X11 */
|
||||
@@ -125,7 +126,7 @@ cogl_x11_onscreen_get_window_xid (CoglOnscreen *onscreen);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_onscreen_show (CoglOnscreen *onscreen);
|
||||
|
||||
/**
|
||||
@@ -150,7 +151,7 @@ cogl_onscreen_show (CoglOnscreen *onscreen);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_onscreen_hide (CoglOnscreen *onscreen);
|
||||
|
||||
/**
|
||||
@@ -174,7 +175,7 @@ cogl_onscreen_hide (CoglOnscreen *onscreen);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_onscreen_swap_buffers (CoglOnscreen *onscreen);
|
||||
|
||||
|
||||
@@ -227,7 +228,7 @@ cogl_onscreen_swap_buffers (CoglOnscreen *onscreen);
|
||||
* Since: 1.14
|
||||
* Stability: stable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_onscreen_get_buffer_age (CoglOnscreen *onscreen);
|
||||
|
||||
/**
|
||||
@@ -278,7 +279,7 @@ cogl_onscreen_get_buffer_age (CoglOnscreen *onscreen);
|
||||
* Since: 1.16
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_onscreen_swap_buffers_with_damage (CoglOnscreen *onscreen,
|
||||
const int *rectangles,
|
||||
int n_rectangles);
|
||||
@@ -303,7 +304,7 @@ cogl_onscreen_swap_buffers_with_damage (CoglOnscreen *onscreen,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_onscreen_swap_region (CoglOnscreen *onscreen,
|
||||
const int *rectangles,
|
||||
int n_rectangles);
|
||||
@@ -388,6 +389,7 @@ typedef struct _CoglClosure CoglFrameClosure;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_frame_closure_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -427,7 +429,7 @@ GType cogl_frame_closure_get_gtype (void);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglFrameClosure *
|
||||
COGL_EXPORT CoglFrameClosure *
|
||||
cogl_onscreen_add_frame_callback (CoglOnscreen *onscreen,
|
||||
CoglFrameCallback callback,
|
||||
void *user_data,
|
||||
@@ -449,7 +451,7 @@ cogl_onscreen_add_frame_callback (CoglOnscreen *onscreen,
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_onscreen_remove_frame_callback (CoglOnscreen *onscreen,
|
||||
CoglFrameClosure *closure);
|
||||
|
||||
@@ -482,7 +484,7 @@ cogl_onscreen_remove_frame_callback (CoglOnscreen *onscreen,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_onscreen_set_resizable (CoglOnscreen *onscreen,
|
||||
gboolean resizable);
|
||||
|
||||
@@ -509,7 +511,7 @@ cogl_onscreen_set_resizable (CoglOnscreen *onscreen,
|
||||
* resizable or not.
|
||||
* Since: 2.0
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_onscreen_get_resizable (CoglOnscreen *onscreen);
|
||||
|
||||
/**
|
||||
@@ -560,6 +562,7 @@ typedef struct _CoglClosure CoglOnscreenResizeClosure;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_onscreen_resize_closure_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -594,7 +597,7 @@ GType cogl_onscreen_resize_closure_get_gtype (void);
|
||||
* remove the callback and associated @user_data later.
|
||||
* Since: 2.0
|
||||
*/
|
||||
CoglOnscreenResizeClosure *
|
||||
COGL_EXPORT CoglOnscreenResizeClosure *
|
||||
cogl_onscreen_add_resize_callback (CoglOnscreen *onscreen,
|
||||
CoglOnscreenResizeCallback callback,
|
||||
void *user_data,
|
||||
@@ -610,7 +613,7 @@ cogl_onscreen_add_resize_callback (CoglOnscreen *onscreen,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_onscreen_remove_resize_callback (CoglOnscreen *onscreen,
|
||||
CoglOnscreenResizeClosure *closure);
|
||||
|
||||
@@ -674,6 +677,7 @@ typedef struct _CoglClosure CoglOnscreenDirtyClosure;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_onscreen_dirty_closure_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -706,7 +710,7 @@ GType cogl_onscreen_dirty_closure_get_gtype (void);
|
||||
* Since: 1.16
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglOnscreenDirtyClosure *
|
||||
COGL_EXPORT CoglOnscreenDirtyClosure *
|
||||
cogl_onscreen_add_dirty_callback (CoglOnscreen *onscreen,
|
||||
CoglOnscreenDirtyCallback callback,
|
||||
void *user_data,
|
||||
@@ -728,7 +732,7 @@ cogl_onscreen_add_dirty_callback (CoglOnscreen *onscreen,
|
||||
* Since: 1.16
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_onscreen_remove_dirty_callback (CoglOnscreen *onscreen,
|
||||
CoglOnscreenDirtyClosure *closure);
|
||||
|
||||
@@ -743,7 +747,7 @@ cogl_onscreen_remove_dirty_callback (CoglOnscreen *onscreen,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_onscreen (void *object);
|
||||
|
||||
/**
|
||||
@@ -758,7 +762,7 @@ cogl_is_onscreen (void *object);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
int64_t
|
||||
COGL_EXPORT int64_t
|
||||
cogl_onscreen_get_frame_counter (CoglOnscreen *onscreen);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -73,6 +73,7 @@ typedef struct _CoglOutput CoglOutput;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_output_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -127,7 +128,7 @@ typedef enum
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_output (void *object);
|
||||
|
||||
/**
|
||||
@@ -142,7 +143,7 @@ cogl_is_output (void *object);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_output_get_x (CoglOutput *output);
|
||||
|
||||
/**
|
||||
@@ -157,7 +158,7 @@ cogl_output_get_x (CoglOutput *output);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_output_get_y (CoglOutput *output);
|
||||
|
||||
/**
|
||||
@@ -170,7 +171,7 @@ cogl_output_get_y (CoglOutput *output);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_output_get_width (CoglOutput *output);
|
||||
|
||||
/**
|
||||
@@ -183,7 +184,7 @@ cogl_output_get_width (CoglOutput *output);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_output_get_height (CoglOutput *output);
|
||||
|
||||
/**
|
||||
@@ -200,7 +201,7 @@ cogl_output_get_height (CoglOutput *output);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_output_get_mm_width (CoglOutput *output);
|
||||
|
||||
/**
|
||||
@@ -217,7 +218,7 @@ cogl_output_get_mm_width (CoglOutput *output);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_output_get_mm_height (CoglOutput *output);
|
||||
|
||||
/**
|
||||
@@ -232,7 +233,7 @@ cogl_output_get_mm_height (CoglOutput *output);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglSubpixelOrder
|
||||
COGL_EXPORT CoglSubpixelOrder
|
||||
cogl_output_get_subpixel_order (CoglOutput *output);
|
||||
|
||||
/**
|
||||
@@ -247,7 +248,7 @@ cogl_output_get_subpixel_order (CoglOutput *output);
|
||||
* Since: 1.14
|
||||
* Stability: unstable
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_output_get_refresh_rate (CoglOutput *output);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -332,7 +332,7 @@ typedef enum
|
||||
CoglPipelineLayerType
|
||||
_cogl_pipeline_layer_get_type (CoglPipelineLayer *layer);
|
||||
|
||||
CoglTexture *
|
||||
COGL_EXPORT CoglTexture *
|
||||
_cogl_pipeline_layer_get_texture (CoglPipelineLayer *layer);
|
||||
|
||||
CoglTexture *
|
||||
|
@@ -150,7 +150,7 @@ typedef enum
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_layer_texture (CoglPipeline *pipeline,
|
||||
int layer_index,
|
||||
CoglTexture *texture);
|
||||
@@ -172,7 +172,7 @@ cogl_pipeline_set_layer_texture (CoglPipeline *pipeline,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_layer_null_texture (CoglPipeline *pipeline,
|
||||
int layer_index);
|
||||
|
||||
@@ -186,7 +186,7 @@ cogl_pipeline_set_layer_null_texture (CoglPipeline *pipeline,
|
||||
* Stability: unstable
|
||||
* Since: 1.10
|
||||
*/
|
||||
CoglTexture *
|
||||
COGL_EXPORT CoglTexture *
|
||||
cogl_pipeline_get_layer_texture (CoglPipeline *pipeline,
|
||||
int layer_index);
|
||||
|
||||
@@ -199,7 +199,7 @@ cogl_pipeline_get_layer_texture (CoglPipeline *pipeline,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_remove_layer (CoglPipeline *pipeline,
|
||||
int layer_index);
|
||||
|
||||
@@ -297,7 +297,7 @@ cogl_pipeline_remove_layer (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_pipeline_set_layer_combine (CoglPipeline *pipeline,
|
||||
int layer_index,
|
||||
const char *blend_string,
|
||||
@@ -316,7 +316,7 @@ cogl_pipeline_set_layer_combine (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_layer_combine_constant (CoglPipeline *pipeline,
|
||||
int layer_index,
|
||||
const CoglColor *constant);
|
||||
@@ -333,7 +333,7 @@ cogl_pipeline_set_layer_combine_constant (CoglPipeline *pipeline,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_layer_matrix (CoglPipeline *pipeline,
|
||||
int layer_index,
|
||||
const CoglMatrix *matrix);
|
||||
@@ -349,7 +349,7 @@ cogl_pipeline_set_layer_matrix (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_pipeline_get_n_layers (CoglPipeline *pipeline);
|
||||
|
||||
/**
|
||||
@@ -370,7 +370,7 @@ cogl_pipeline_get_n_layers (CoglPipeline *pipeline);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_layer_filters (CoglPipeline *pipeline,
|
||||
int layer_index,
|
||||
CoglPipelineFilter min_filter,
|
||||
@@ -393,7 +393,7 @@ cogl_pipeline_set_layer_filters (CoglPipeline *pipeline,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglPipelineFilter
|
||||
COGL_EXPORT CoglPipelineFilter
|
||||
cogl_pipeline_get_layer_min_filter (CoglPipeline *pipeline,
|
||||
int layer_index);
|
||||
|
||||
@@ -414,7 +414,7 @@ cogl_pipeline_get_layer_min_filter (CoglPipeline *pipeline,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglPipelineFilter
|
||||
COGL_EXPORT CoglPipelineFilter
|
||||
cogl_pipeline_get_layer_mag_filter (CoglPipeline *pipeline,
|
||||
int layer_index);
|
||||
|
||||
@@ -436,7 +436,7 @@ cogl_pipeline_get_layer_mag_filter (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_pipeline_set_layer_point_sprite_coords_enabled (CoglPipeline *pipeline,
|
||||
int layer_index,
|
||||
gboolean enable,
|
||||
@@ -456,7 +456,7 @@ cogl_pipeline_set_layer_point_sprite_coords_enabled (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_pipeline_get_layer_point_sprite_coords_enabled (CoglPipeline *pipeline,
|
||||
int layer_index);
|
||||
|
||||
@@ -474,7 +474,7 @@ cogl_pipeline_get_layer_point_sprite_coords_enabled (CoglPipeline *pipeline,
|
||||
* Since: 1.6
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglPipelineWrapMode
|
||||
COGL_EXPORT CoglPipelineWrapMode
|
||||
cogl_pipeline_get_layer_wrap_mode_s (CoglPipeline *pipeline,
|
||||
int layer_index);
|
||||
|
||||
@@ -489,7 +489,7 @@ cogl_pipeline_get_layer_wrap_mode_s (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_layer_wrap_mode_s (CoglPipeline *pipeline,
|
||||
int layer_index,
|
||||
CoglPipelineWrapMode mode);
|
||||
@@ -508,7 +508,7 @@ cogl_pipeline_set_layer_wrap_mode_s (CoglPipeline *pipeline,
|
||||
* Since: 1.6
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglPipelineWrapMode
|
||||
COGL_EXPORT CoglPipelineWrapMode
|
||||
cogl_pipeline_get_layer_wrap_mode_t (CoglPipeline *pipeline,
|
||||
int layer_index);
|
||||
|
||||
@@ -524,7 +524,7 @@ cogl_pipeline_get_layer_wrap_mode_t (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_layer_wrap_mode_t (CoglPipeline *pipeline,
|
||||
int layer_index,
|
||||
CoglPipelineWrapMode mode);
|
||||
@@ -543,7 +543,7 @@ cogl_pipeline_set_layer_wrap_mode_t (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_layer_wrap_mode (CoglPipeline *pipeline,
|
||||
int layer_index,
|
||||
CoglPipelineWrapMode mode);
|
||||
@@ -563,7 +563,7 @@ cogl_pipeline_set_layer_wrap_mode (CoglPipeline *pipeline,
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_add_layer_snippet (CoglPipeline *pipeline,
|
||||
int layer,
|
||||
CoglSnippet *snippet);
|
||||
|
@@ -775,7 +775,7 @@ _cogl_pipeline_get_layer_combine_constant (CoglPipeline *pipeline,
|
||||
int layer_index,
|
||||
float *constant);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_pipeline_prune_to_n_layers (CoglPipeline *pipeline, int n);
|
||||
|
||||
|
||||
@@ -786,7 +786,7 @@ _cogl_pipeline_prune_to_n_layers (CoglPipeline *pipeline, int n);
|
||||
typedef gboolean (*CoglPipelineInternalLayerCallback) (CoglPipelineLayer *layer,
|
||||
void *user_data);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_pipeline_foreach_layer_internal (CoglPipeline *pipeline,
|
||||
CoglPipelineInternalLayerCallback callback,
|
||||
void *user_data);
|
||||
|
@@ -58,7 +58,7 @@ G_BEGIN_DECLS
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_color (CoglPipeline *pipeline,
|
||||
const CoglColor *color);
|
||||
|
||||
@@ -77,7 +77,7 @@ cogl_pipeline_set_color (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_color4ub (CoglPipeline *pipeline,
|
||||
uint8_t red,
|
||||
uint8_t green,
|
||||
@@ -99,7 +99,7 @@ cogl_pipeline_set_color4ub (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_color4f (CoglPipeline *pipeline,
|
||||
float red,
|
||||
float green,
|
||||
@@ -116,7 +116,7 @@ cogl_pipeline_set_color4f (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_get_color (CoglPipeline *pipeline,
|
||||
CoglColor *color);
|
||||
|
||||
@@ -173,7 +173,7 @@ typedef enum
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_alpha_test_function (CoglPipeline *pipeline,
|
||||
CoglPipelineAlphaFunc alpha_func,
|
||||
float alpha_reference);
|
||||
@@ -187,7 +187,7 @@ cogl_pipeline_set_alpha_test_function (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPipelineAlphaFunc
|
||||
COGL_EXPORT CoglPipelineAlphaFunc
|
||||
cogl_pipeline_get_alpha_test_function (CoglPipeline *pipeline);
|
||||
|
||||
/**
|
||||
@@ -199,7 +199,7 @@ cogl_pipeline_get_alpha_test_function (CoglPipeline *pipeline);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_pipeline_get_alpha_test_reference (CoglPipeline *pipeline);
|
||||
|
||||
/**
|
||||
@@ -284,7 +284,7 @@ cogl_pipeline_get_alpha_test_reference (CoglPipeline *pipeline);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_pipeline_set_blend (CoglPipeline *pipeline,
|
||||
const char *blend_string,
|
||||
GError **error);
|
||||
@@ -300,7 +300,7 @@ cogl_pipeline_set_blend (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_blend_constant (CoglPipeline *pipeline,
|
||||
const CoglColor *constant_color);
|
||||
|
||||
@@ -325,7 +325,7 @@ cogl_pipeline_set_blend_constant (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_point_size (CoglPipeline *pipeline,
|
||||
float point_size);
|
||||
|
||||
@@ -341,7 +341,7 @@ cogl_pipeline_set_point_size (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
float
|
||||
COGL_EXPORT float
|
||||
cogl_pipeline_get_point_size (CoglPipeline *pipeline);
|
||||
|
||||
/**
|
||||
@@ -365,7 +365,7 @@ cogl_pipeline_get_point_size (CoglPipeline *pipeline);
|
||||
* Stability: Unstable
|
||||
* Return value: %TRUE if the change suceeded or %FALSE otherwise
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_pipeline_set_per_vertex_point_size (CoglPipeline *pipeline,
|
||||
gboolean enable,
|
||||
GError **error);
|
||||
@@ -380,7 +380,7 @@ cogl_pipeline_set_per_vertex_point_size (CoglPipeline *pipeline,
|
||||
* enabled or %FALSE otherwise. The per-vertex point size can be
|
||||
* enabled with cogl_pipeline_set_per_vertex_point_size().
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_pipeline_get_per_vertex_point_size (CoglPipeline *pipeline);
|
||||
|
||||
/**
|
||||
@@ -395,7 +395,7 @@ cogl_pipeline_get_per_vertex_point_size (CoglPipeline *pipeline);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglHandle
|
||||
COGL_EXPORT CoglHandle
|
||||
cogl_pipeline_get_user_program (CoglPipeline *pipeline);
|
||||
|
||||
/**
|
||||
@@ -440,7 +440,7 @@ cogl_pipeline_get_user_program (CoglPipeline *pipeline);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_user_program (CoglPipeline *pipeline,
|
||||
CoglHandle program);
|
||||
|
||||
@@ -464,7 +464,7 @@ cogl_pipeline_set_user_program (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_pipeline_set_depth_state (CoglPipeline *pipeline,
|
||||
const CoglDepthState *state,
|
||||
GError **error);
|
||||
@@ -480,7 +480,7 @@ cogl_pipeline_set_depth_state (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_get_depth_state (CoglPipeline *pipeline,
|
||||
CoglDepthState *state_out);
|
||||
|
||||
@@ -524,7 +524,7 @@ typedef enum
|
||||
* Status: Unstable
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_cull_face_mode (CoglPipeline *pipeline,
|
||||
CoglPipelineCullFaceMode cull_face_mode);
|
||||
|
||||
@@ -537,7 +537,7 @@ cogl_pipeline_set_cull_face_mode (CoglPipeline *pipeline,
|
||||
* Status: Unstable
|
||||
* Since: 2.0
|
||||
*/
|
||||
CoglPipelineCullFaceMode
|
||||
COGL_EXPORT CoglPipelineCullFaceMode
|
||||
cogl_pipeline_get_cull_face_mode (CoglPipeline *pipeline);
|
||||
|
||||
/**
|
||||
@@ -556,7 +556,7 @@ cogl_pipeline_get_cull_face_mode (CoglPipeline *pipeline);
|
||||
* Status: Unstable
|
||||
* Since: 2.0
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_front_face_winding (CoglPipeline *pipeline,
|
||||
CoglWinding front_winding);
|
||||
|
||||
@@ -577,7 +577,7 @@ cogl_pipeline_set_front_face_winding (CoglPipeline *pipeline,
|
||||
* Status: Unstable
|
||||
* Since: 2.0
|
||||
*/
|
||||
CoglWinding
|
||||
COGL_EXPORT CoglWinding
|
||||
cogl_pipeline_get_front_face_winding (CoglPipeline *pipeline);
|
||||
|
||||
/**
|
||||
@@ -600,7 +600,7 @@ cogl_pipeline_get_front_face_winding (CoglPipeline *pipeline);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_uniform_1f (CoglPipeline *pipeline,
|
||||
int uniform_location,
|
||||
float value);
|
||||
@@ -625,7 +625,7 @@ cogl_pipeline_set_uniform_1f (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_uniform_1i (CoglPipeline *pipeline,
|
||||
int uniform_location,
|
||||
int value);
|
||||
@@ -654,7 +654,7 @@ cogl_pipeline_set_uniform_1i (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_uniform_float (CoglPipeline *pipeline,
|
||||
int uniform_location,
|
||||
int n_components,
|
||||
@@ -685,7 +685,7 @@ cogl_pipeline_set_uniform_float (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_uniform_int (CoglPipeline *pipeline,
|
||||
int uniform_location,
|
||||
int n_components,
|
||||
@@ -722,7 +722,7 @@ cogl_pipeline_set_uniform_int (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_set_uniform_matrix (CoglPipeline *pipeline,
|
||||
int uniform_location,
|
||||
int dimensions,
|
||||
@@ -743,7 +743,7 @@ cogl_pipeline_set_uniform_matrix (CoglPipeline *pipeline,
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_add_snippet (CoglPipeline *pipeline,
|
||||
CoglSnippet *snippet);
|
||||
|
||||
|
@@ -69,6 +69,7 @@ G_BEGIN_DECLS
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_pipeline_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -83,7 +84,7 @@ GType cogl_pipeline_get_gtype (void);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPipeline *
|
||||
COGL_EXPORT CoglPipeline *
|
||||
cogl_pipeline_new (CoglContext *context);
|
||||
|
||||
/**
|
||||
@@ -104,7 +105,7 @@ cogl_pipeline_new (CoglContext *context);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPipeline *
|
||||
COGL_EXPORT CoglPipeline *
|
||||
cogl_pipeline_copy (CoglPipeline *source);
|
||||
|
||||
/**
|
||||
@@ -119,7 +120,7 @@ cogl_pipeline_copy (CoglPipeline *source);
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_pipeline (void *object);
|
||||
|
||||
/**
|
||||
@@ -151,7 +152,7 @@ typedef gboolean (*CoglPipelineLayerCallback) (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_pipeline_foreach_layer (CoglPipeline *pipeline,
|
||||
CoglPipelineLayerCallback callback,
|
||||
void *user_data);
|
||||
@@ -176,7 +177,7 @@ cogl_pipeline_foreach_layer (CoglPipeline *pipeline,
|
||||
* Since: 2.0
|
||||
* Stability: Unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_pipeline_get_uniform_location (CoglPipeline *pipeline,
|
||||
const char *uniform_name);
|
||||
|
||||
|
@@ -61,6 +61,7 @@ G_BEGIN_DECLS
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_pixel_buffer_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -82,7 +83,7 @@ GType cogl_pixel_buffer_get_gtype (void);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglPixelBuffer *
|
||||
COGL_EXPORT CoglPixelBuffer *
|
||||
cogl_pixel_buffer_new (CoglContext *context,
|
||||
size_t size,
|
||||
const void *data);
|
||||
@@ -99,7 +100,7 @@ cogl_pixel_buffer_new (CoglContext *context,
|
||||
* Since: 1.2
|
||||
* Stability: Unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_pixel_buffer (void *object);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -39,6 +39,7 @@
|
||||
#include <stddef.h>
|
||||
|
||||
#include <cogl/cogl-defines.h>
|
||||
#include <cogl/cogl-macros.h>
|
||||
|
||||
#include <glib.h>
|
||||
#include <glib-object.h>
|
||||
@@ -251,7 +252,7 @@ typedef enum /*< prefix=COGL_PIXEL_FORMAT >*/
|
||||
*
|
||||
* Returns: The number of bytes per pixel in the given format's given plane.
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_pixel_format_get_bytes_per_pixel (CoglPixelFormat format,
|
||||
int plane);
|
||||
|
||||
@@ -302,7 +303,7 @@ _cogl_pixel_format_is_endian_dependant (CoglPixelFormat format);
|
||||
*
|
||||
* Returns: The no. of planes of @format (at most %COGL_PIXEL_FORMAT_MAX_PLANES)
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_pixel_format_get_n_planes (CoglPixelFormat format);
|
||||
|
||||
/**
|
||||
@@ -313,7 +314,7 @@ cogl_pixel_format_get_n_planes (CoglPixelFormat format);
|
||||
*
|
||||
* Returns: (transfer none): A string representation of @format.
|
||||
*/
|
||||
const char *
|
||||
COGL_EXPORT const char *
|
||||
cogl_pixel_format_to_string (CoglPixelFormat format);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -41,7 +41,7 @@ _cogl_poll_renderer_remove_fd (CoglRenderer *renderer, int fd);
|
||||
typedef int64_t (*CoglPollPrepareCallback) (void *user_data);
|
||||
typedef void (*CoglPollDispatchCallback) (void *user_data, int revents);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_poll_renderer_add_fd (CoglRenderer *renderer,
|
||||
int fd,
|
||||
CoglPollFDEvent events,
|
||||
@@ -68,7 +68,7 @@ _cogl_poll_renderer_remove_source (CoglRenderer *renderer,
|
||||
|
||||
typedef void (*CoglIdleCallback) (void *user_data);
|
||||
|
||||
CoglClosure *
|
||||
COGL_EXPORT CoglClosure *
|
||||
_cogl_poll_renderer_add_idle (CoglRenderer *renderer,
|
||||
CoglIdleCallback idle_cb,
|
||||
void *user_data,
|
||||
|
@@ -157,7 +157,7 @@ typedef struct {
|
||||
* Stability: unstable
|
||||
* Since: 1.16
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_poll_renderer_get_info (CoglRenderer *renderer,
|
||||
CoglPollFD **poll_fds,
|
||||
int *n_poll_fds,
|
||||
@@ -185,7 +185,7 @@ cogl_poll_renderer_get_info (CoglRenderer *renderer,
|
||||
* Stability: unstable
|
||||
* Since: 1.16
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_poll_renderer_dispatch (CoglRenderer *renderer,
|
||||
const CoglPollFD *poll_fds,
|
||||
int n_poll_fds);
|
||||
|
@@ -63,7 +63,7 @@ _cogl_primitive_immutable_ref (CoglPrimitive *primitive);
|
||||
void
|
||||
_cogl_primitive_immutable_unref (CoglPrimitive *primitive);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_primitive_draw (CoglPrimitive *primitive,
|
||||
CoglFramebuffer *framebuffer,
|
||||
CoglPipeline *pipeline,
|
||||
|
@@ -102,7 +102,7 @@ cogl_is_primitive_texture (void *object);
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_primitive_texture_set_auto_mipmap (CoglPrimitiveTexture *primitive_texture,
|
||||
gboolean value);
|
||||
|
||||
|
@@ -70,6 +70,7 @@ G_BEGIN_DECLS
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_primitive_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -249,7 +250,7 @@ typedef struct {
|
||||
* Since: 1.6
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPrimitive *
|
||||
COGL_EXPORT CoglPrimitive *
|
||||
cogl_primitive_new (CoglVerticesMode mode,
|
||||
int n_vertices,
|
||||
...);
|
||||
@@ -275,7 +276,7 @@ cogl_primitive_new (CoglVerticesMode mode,
|
||||
* Since: 1.6
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPrimitive *
|
||||
COGL_EXPORT CoglPrimitive *
|
||||
cogl_primitive_new_with_attributes (CoglVerticesMode mode,
|
||||
int n_vertices,
|
||||
CoglAttribute **attributes,
|
||||
@@ -329,7 +330,7 @@ cogl_primitive_new_with_attributes (CoglVerticesMode mode,
|
||||
* Since: 1.6
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPrimitive *
|
||||
COGL_EXPORT CoglPrimitive *
|
||||
cogl_primitive_new_p2 (CoglContext *context,
|
||||
CoglVerticesMode mode,
|
||||
int n_vertices,
|
||||
@@ -383,7 +384,7 @@ cogl_primitive_new_p2 (CoglContext *context,
|
||||
* Since: 1.6
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPrimitive *
|
||||
COGL_EXPORT CoglPrimitive *
|
||||
cogl_primitive_new_p3 (CoglContext *context,
|
||||
CoglVerticesMode mode,
|
||||
int n_vertices,
|
||||
@@ -439,7 +440,7 @@ cogl_primitive_new_p3 (CoglContext *context,
|
||||
* Since: 1.6
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPrimitive *
|
||||
COGL_EXPORT CoglPrimitive *
|
||||
cogl_primitive_new_p2c4 (CoglContext *context,
|
||||
CoglVerticesMode mode,
|
||||
int n_vertices,
|
||||
@@ -495,7 +496,7 @@ cogl_primitive_new_p2c4 (CoglContext *context,
|
||||
* Since: 1.6
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPrimitive *
|
||||
COGL_EXPORT CoglPrimitive *
|
||||
cogl_primitive_new_p3c4 (CoglContext *context,
|
||||
CoglVerticesMode mode,
|
||||
int n_vertices,
|
||||
@@ -551,7 +552,7 @@ cogl_primitive_new_p3c4 (CoglContext *context,
|
||||
* Since: 1.6
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPrimitive *
|
||||
COGL_EXPORT CoglPrimitive *
|
||||
cogl_primitive_new_p2t2 (CoglContext *context,
|
||||
CoglVerticesMode mode,
|
||||
int n_vertices,
|
||||
@@ -607,7 +608,7 @@ cogl_primitive_new_p2t2 (CoglContext *context,
|
||||
* Since: 1.6
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPrimitive *
|
||||
COGL_EXPORT CoglPrimitive *
|
||||
cogl_primitive_new_p3t2 (CoglContext *context,
|
||||
CoglVerticesMode mode,
|
||||
int n_vertices,
|
||||
@@ -663,7 +664,7 @@ cogl_primitive_new_p3t2 (CoglContext *context,
|
||||
* Since: 1.6
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPrimitive *
|
||||
COGL_EXPORT CoglPrimitive *
|
||||
cogl_primitive_new_p2t2c4 (CoglContext *context,
|
||||
CoglVerticesMode mode,
|
||||
int n_vertices,
|
||||
@@ -719,15 +720,15 @@ cogl_primitive_new_p2t2c4 (CoglContext *context,
|
||||
* Since: 1.6
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglPrimitive *
|
||||
COGL_EXPORT CoglPrimitive *
|
||||
cogl_primitive_new_p3t2c4 (CoglContext *context,
|
||||
CoglVerticesMode mode,
|
||||
int n_vertices,
|
||||
const CoglVertexP3T2C4 *data);
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_primitive_get_first_vertex (CoglPrimitive *primitive);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_primitive_set_first_vertex (CoglPrimitive *primitive,
|
||||
int first_vertex);
|
||||
|
||||
@@ -753,7 +754,7 @@ cogl_primitive_set_first_vertex (CoglPrimitive *primitive,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_primitive_get_n_vertices (CoglPrimitive *primitive);
|
||||
|
||||
/**
|
||||
@@ -774,14 +775,14 @@ cogl_primitive_get_n_vertices (CoglPrimitive *primitive);
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_primitive_set_n_vertices (CoglPrimitive *primitive,
|
||||
int n_vertices);
|
||||
|
||||
CoglVerticesMode
|
||||
COGL_EXPORT CoglVerticesMode
|
||||
cogl_primitive_get_mode (CoglPrimitive *primitive);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_primitive_set_mode (CoglPrimitive *primitive,
|
||||
CoglVerticesMode mode);
|
||||
|
||||
@@ -796,7 +797,7 @@ cogl_primitive_set_mode (CoglPrimitive *primitive,
|
||||
* Since: 1.6
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_primitive_set_attributes (CoglPrimitive *primitive,
|
||||
CoglAttribute **attributes,
|
||||
int n_attributes);
|
||||
@@ -829,7 +830,7 @@ cogl_primitive_set_attributes (CoglPrimitive *primitive,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_primitive_set_indices (CoglPrimitive *primitive,
|
||||
CoglIndices *indices,
|
||||
int n_indices);
|
||||
@@ -844,7 +845,7 @@ cogl_primitive_set_indices (CoglPrimitive *primitive,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglIndices *
|
||||
COGL_EXPORT CoglIndices *
|
||||
cogl_primitive_get_indices (CoglPrimitive *primitive);
|
||||
|
||||
/**
|
||||
@@ -859,7 +860,7 @@ cogl_primitive_get_indices (CoglPrimitive *primitive);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglPrimitive *
|
||||
COGL_EXPORT CoglPrimitive *
|
||||
cogl_primitive_copy (CoglPrimitive *primitive);
|
||||
|
||||
/**
|
||||
@@ -874,7 +875,7 @@ cogl_primitive_copy (CoglPrimitive *primitive);
|
||||
* Since: 1.6
|
||||
* Stability: Unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_primitive (void *object);
|
||||
|
||||
/**
|
||||
@@ -909,7 +910,7 @@ typedef gboolean (* CoglPrimitiveAttributeCallback) (CoglPrimitive *primitive,
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_primitive_foreach_attribute (CoglPrimitive *primitive,
|
||||
CoglPrimitiveAttributeCallback callback,
|
||||
void *user_data);
|
||||
@@ -932,7 +933,7 @@ cogl_primitive_foreach_attribute (CoglPrimitive *primitive,
|
||||
* Stability: unstable
|
||||
* Since: 1.16
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_primitive_draw (CoglPrimitive *primitive,
|
||||
CoglFramebuffer *framebuffer,
|
||||
CoglPipeline *pipeline);
|
||||
|
@@ -48,7 +48,7 @@ extern UProfContext *_cogl_uprof_context;
|
||||
void
|
||||
_cogl_uprof_init (void);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
_cogl_profile_trace_message (const char *format, ...);
|
||||
|
||||
#else
|
||||
|
@@ -80,7 +80,7 @@ G_BEGIN_DECLS
|
||||
*/
|
||||
#define COGL_RENDERER_ERROR cogl_renderer_error_quark ()
|
||||
|
||||
uint32_t
|
||||
COGL_EXPORT uint32_t
|
||||
cogl_renderer_error_quark (void);
|
||||
|
||||
typedef struct _CoglRenderer CoglRenderer;
|
||||
@@ -90,6 +90,7 @@ typedef struct _CoglRenderer CoglRenderer;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_renderer_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -102,7 +103,7 @@ GType cogl_renderer_get_gtype (void);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_renderer (void *object);
|
||||
|
||||
/**
|
||||
@@ -145,7 +146,7 @@ cogl_is_renderer (void *object);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglRenderer *
|
||||
COGL_EXPORT CoglRenderer *
|
||||
cogl_renderer_new (void);
|
||||
|
||||
/* optional configuration APIs */
|
||||
@@ -184,7 +185,7 @@ typedef enum
|
||||
*
|
||||
* This may only be called on an un-connected #CoglRenderer.
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_renderer_set_winsys_id (CoglRenderer *renderer,
|
||||
CoglWinsysID winsys_id);
|
||||
|
||||
@@ -199,7 +200,7 @@ cogl_renderer_set_winsys_id (CoglRenderer *renderer,
|
||||
* Returns: The #CoglWinsysID corresponding to the chosen window
|
||||
* system backend.
|
||||
*/
|
||||
CoglWinsysID
|
||||
COGL_EXPORT CoglWinsysID
|
||||
cogl_renderer_get_winsys_id (CoglRenderer *renderer);
|
||||
|
||||
/**
|
||||
@@ -216,7 +217,7 @@ cogl_renderer_get_winsys_id (CoglRenderer *renderer);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_renderer_check_onscreen_template (CoglRenderer *renderer,
|
||||
CoglOnscreenTemplate *onscreen_template,
|
||||
GError **error);
|
||||
@@ -238,7 +239,7 @@ cogl_renderer_check_onscreen_template (CoglRenderer *renderer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_renderer_connect (CoglRenderer *renderer, GError **error);
|
||||
|
||||
/**
|
||||
@@ -284,7 +285,7 @@ typedef enum
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_renderer_add_constraint (CoglRenderer *renderer,
|
||||
CoglRendererConstraint constraint);
|
||||
|
||||
@@ -301,7 +302,7 @@ cogl_renderer_add_constraint (CoglRenderer *renderer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_renderer_remove_constraint (CoglRenderer *renderer,
|
||||
CoglRendererConstraint constraint);
|
||||
|
||||
@@ -311,7 +312,6 @@ cogl_renderer_remove_constraint (CoglRenderer *renderer,
|
||||
* @COGL_DRIVER_NOP: A No-Op driver.
|
||||
* @COGL_DRIVER_GL: An OpenGL driver.
|
||||
* @COGL_DRIVER_GL3: An OpenGL driver using the core GL 3.1 profile
|
||||
* @COGL_DRIVER_GLES1: An OpenGL ES 1.1 driver.
|
||||
* @COGL_DRIVER_GLES2: An OpenGL ES 2.0 driver.
|
||||
*
|
||||
* Identifiers for underlying hardware drivers that may be used by
|
||||
@@ -346,7 +346,7 @@ typedef enum
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_renderer_set_driver (CoglRenderer *renderer,
|
||||
CoglDriver driver);
|
||||
|
||||
@@ -361,7 +361,7 @@ cogl_renderer_set_driver (CoglRenderer *renderer,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglDriver
|
||||
COGL_EXPORT CoglDriver
|
||||
cogl_renderer_get_driver (CoglRenderer *renderer);
|
||||
|
||||
/**
|
||||
@@ -393,7 +393,7 @@ typedef void (*CoglOutputCallback) (CoglOutput *output, void *user_data);
|
||||
* Since: 1.14
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_renderer_foreach_output (CoglRenderer *renderer,
|
||||
CoglOutputCallback callback,
|
||||
void *user_data);
|
||||
@@ -413,7 +413,7 @@ cogl_renderer_foreach_output (CoglRenderer *renderer,
|
||||
* return result must be released with cogl_dma_buf_handle_free()
|
||||
* after use.
|
||||
*/
|
||||
CoglDmaBufHandle *
|
||||
COGL_EXPORT CoglDmaBufHandle *
|
||||
cogl_renderer_create_dma_buf (CoglRenderer *renderer,
|
||||
int width,
|
||||
int height,
|
||||
|
@@ -345,6 +345,7 @@ typedef struct _CoglSnippet CoglSnippet;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_snippet_get_gtype (void);
|
||||
|
||||
/* Enumeration of all the hook points that a snippet can be attached
|
||||
@@ -690,7 +691,7 @@ typedef enum
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglSnippet *
|
||||
COGL_EXPORT CoglSnippet *
|
||||
cogl_snippet_new (CoglSnippetHook hook,
|
||||
const char *declarations,
|
||||
const char *post);
|
||||
@@ -704,7 +705,7 @@ cogl_snippet_new (CoglSnippetHook hook,
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
CoglSnippetHook
|
||||
COGL_EXPORT CoglSnippetHook
|
||||
cogl_snippet_get_hook (CoglSnippet *snippet);
|
||||
|
||||
/**
|
||||
@@ -719,7 +720,7 @@ cogl_snippet_get_hook (CoglSnippet *snippet);
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_snippet (void *object);
|
||||
|
||||
/**
|
||||
@@ -740,7 +741,7 @@ cogl_is_snippet (void *object);
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_snippet_set_declarations (CoglSnippet *snippet,
|
||||
const char *declarations);
|
||||
|
||||
@@ -754,7 +755,7 @@ cogl_snippet_set_declarations (CoglSnippet *snippet,
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
const char *
|
||||
COGL_EXPORT const char *
|
||||
cogl_snippet_get_declarations (CoglSnippet *snippet);
|
||||
|
||||
/**
|
||||
@@ -774,7 +775,7 @@ cogl_snippet_get_declarations (CoglSnippet *snippet);
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_snippet_set_pre (CoglSnippet *snippet,
|
||||
const char *pre);
|
||||
|
||||
@@ -788,7 +789,7 @@ cogl_snippet_set_pre (CoglSnippet *snippet,
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
const char *
|
||||
COGL_EXPORT const char *
|
||||
cogl_snippet_get_pre (CoglSnippet *snippet);
|
||||
|
||||
/**
|
||||
@@ -808,7 +809,7 @@ cogl_snippet_get_pre (CoglSnippet *snippet);
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_snippet_set_replace (CoglSnippet *snippet,
|
||||
const char *replace);
|
||||
|
||||
@@ -822,7 +823,7 @@ cogl_snippet_set_replace (CoglSnippet *snippet,
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
const char *
|
||||
COGL_EXPORT const char *
|
||||
cogl_snippet_get_replace (CoglSnippet *snippet);
|
||||
|
||||
/**
|
||||
@@ -842,7 +843,7 @@ cogl_snippet_get_replace (CoglSnippet *snippet);
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_snippet_set_post (CoglSnippet *snippet,
|
||||
const char *post);
|
||||
|
||||
@@ -856,7 +857,7 @@ cogl_snippet_set_post (CoglSnippet *snippet,
|
||||
* Since: 1.10
|
||||
* Stability: Unstable
|
||||
*/
|
||||
const char *
|
||||
COGL_EXPORT const char *
|
||||
cogl_snippet_get_post (CoglSnippet *snippet);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -90,7 +90,7 @@ GType cogl_sub_texture_get_gtype (void);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglSubTexture *
|
||||
COGL_EXPORT CoglSubTexture *
|
||||
cogl_sub_texture_new (CoglContext *ctx,
|
||||
CoglTexture *parent_texture,
|
||||
int sub_x,
|
||||
@@ -111,7 +111,7 @@ cogl_sub_texture_new (CoglContext *ctx,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglTexture *
|
||||
COGL_EXPORT CoglTexture *
|
||||
cogl_sub_texture_get_parent (CoglSubTexture *sub_texture);
|
||||
|
||||
/**
|
||||
@@ -126,7 +126,7 @@ cogl_sub_texture_get_parent (CoglSubTexture *sub_texture);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_sub_texture (void *object);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -46,20 +46,21 @@ typedef struct _CoglSwapChain CoglSwapChain;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_swap_chain_get_gtype (void);
|
||||
|
||||
CoglSwapChain *
|
||||
COGL_EXPORT CoglSwapChain *
|
||||
cogl_swap_chain_new (void);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_swap_chain_set_has_alpha (CoglSwapChain *swap_chain,
|
||||
gboolean has_alpha);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_swap_chain_set_length (CoglSwapChain *swap_chain,
|
||||
int length);
|
||||
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_swap_chain (void *object);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -75,6 +75,7 @@ typedef struct _CoglTexture2DSliced CoglTexture2DSliced;
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_texture_2d_sliced_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -118,7 +119,7 @@ GType cogl_texture_2d_sliced_get_gtype (void);
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglTexture2DSliced *
|
||||
COGL_EXPORT CoglTexture2DSliced *
|
||||
cogl_texture_2d_sliced_new_with_size (CoglContext *ctx,
|
||||
int width,
|
||||
int height,
|
||||
@@ -166,7 +167,7 @@ cogl_texture_2d_sliced_new_with_size (CoglContext *ctx,
|
||||
*
|
||||
* Since: 1.16
|
||||
*/
|
||||
CoglTexture2DSliced *
|
||||
COGL_EXPORT CoglTexture2DSliced *
|
||||
cogl_texture_2d_sliced_new_from_file (CoglContext *ctx,
|
||||
const char *filename,
|
||||
int max_waste,
|
||||
@@ -227,7 +228,7 @@ cogl_texture_2d_sliced_new_from_file (CoglContext *ctx,
|
||||
*
|
||||
* Since: 1.16
|
||||
*/
|
||||
CoglTexture2DSliced *
|
||||
COGL_EXPORT CoglTexture2DSliced *
|
||||
cogl_texture_2d_sliced_new_from_data (CoglContext *ctx,
|
||||
int width,
|
||||
int height,
|
||||
@@ -278,7 +279,7 @@ cogl_texture_2d_sliced_new_from_data (CoglContext *ctx,
|
||||
*
|
||||
* Since: 1.16
|
||||
*/
|
||||
CoglTexture2DSliced *
|
||||
COGL_EXPORT CoglTexture2DSliced *
|
||||
cogl_texture_2d_sliced_new_from_bitmap (CoglBitmap *bmp,
|
||||
int max_waste);
|
||||
|
||||
@@ -293,7 +294,7 @@ cogl_texture_2d_sliced_new_from_bitmap (CoglBitmap *bmp,
|
||||
* Since: 1.10
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_texture_2d_sliced (void *object);
|
||||
|
||||
#endif /* __COGL_TEXURE_2D_SLICED_H */
|
||||
|
@@ -121,6 +121,9 @@ cogl_texture_2d_new_with_size (CoglContext *ctx,
|
||||
{
|
||||
CoglTextureLoader *loader;
|
||||
|
||||
g_return_val_if_fail (width >= 1, NULL);
|
||||
g_return_val_if_fail (height >= 1, NULL);
|
||||
|
||||
loader = _cogl_texture_create_loader ();
|
||||
loader->src_type = COGL_TEXTURE_SOURCE_TYPE_SIZED;
|
||||
loader->src.sized.width = width;
|
||||
|
@@ -71,6 +71,7 @@ typedef enum _CoglEglImageFlags
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_texture_2d_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -83,7 +84,7 @@ GType cogl_texture_2d_get_gtype (void);
|
||||
* Return value: %TRUE if the object references a #CoglTexture2D,
|
||||
* %FALSE otherwise
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_texture_2d (void *object);
|
||||
|
||||
/**
|
||||
@@ -110,7 +111,7 @@ cogl_is_texture_2d (void *object);
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
CoglTexture2D *
|
||||
COGL_EXPORT CoglTexture2D *
|
||||
cogl_texture_2d_new_with_size (CoglContext *ctx,
|
||||
int width,
|
||||
int height);
|
||||
@@ -139,7 +140,7 @@ cogl_texture_2d_new_with_size (CoglContext *ctx,
|
||||
*
|
||||
* Since: 1.16
|
||||
*/
|
||||
CoglTexture2D *
|
||||
COGL_EXPORT CoglTexture2D *
|
||||
cogl_texture_2d_new_from_file (CoglContext *ctx,
|
||||
const char *filename,
|
||||
GError **error);
|
||||
@@ -177,7 +178,7 @@ cogl_texture_2d_new_from_file (CoglContext *ctx,
|
||||
*
|
||||
* Since: 2.0
|
||||
*/
|
||||
CoglTexture2D *
|
||||
COGL_EXPORT CoglTexture2D *
|
||||
cogl_texture_2d_new_from_data (CoglContext *ctx,
|
||||
int width,
|
||||
int height,
|
||||
@@ -209,7 +210,7 @@ cogl_texture_2d_new_from_data (CoglContext *ctx,
|
||||
* Since: 2.0
|
||||
* Stability: unstable
|
||||
*/
|
||||
CoglTexture2D *
|
||||
COGL_EXPORT CoglTexture2D *
|
||||
cogl_texture_2d_new_from_bitmap (CoglBitmap *bitmap);
|
||||
|
||||
/**
|
||||
@@ -219,7 +220,7 @@ cogl_texture_2d_new_from_bitmap (CoglBitmap *bitmap);
|
||||
/* NB: The reason we require the width, height and format to be passed
|
||||
* even though they may seem redundant is because GLES 1/2 don't
|
||||
* provide a way to query these properties. */
|
||||
CoglTexture2D *
|
||||
COGL_EXPORT CoglTexture2D *
|
||||
cogl_egl_texture_2d_new_from_image (CoglContext *ctx,
|
||||
int width,
|
||||
int height,
|
||||
@@ -235,7 +236,7 @@ typedef gboolean (*CoglTexture2DEGLImageExternalAlloc) (CoglTexture2D *tex_2d,
|
||||
/**
|
||||
* cogl_texture_2d_new_from_egl_image_external: (skip)
|
||||
*/
|
||||
CoglTexture2D *
|
||||
COGL_EXPORT CoglTexture2D *
|
||||
cogl_texture_2d_new_from_egl_image_external (CoglContext *ctx,
|
||||
int width,
|
||||
int height,
|
||||
@@ -244,10 +245,10 @@ cogl_texture_2d_new_from_egl_image_external (CoglContext *ctx,
|
||||
GDestroyNotify destroy,
|
||||
GError **error);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_texture_2d_egl_image_external_bind (CoglTexture2D *tex_2d);
|
||||
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_texture_2d_egl_image_external_alloc_finish (CoglTexture2D *tex_2d,
|
||||
void *user_data,
|
||||
GDestroyNotify destroy);
|
||||
|
@@ -272,7 +272,7 @@ _cogl_texture_register_texture_type (const CoglObjectClass *klass);
|
||||
(TypeName, type_name, \
|
||||
_cogl_texture_register_texture_type (&_cogl_##type_name##_class))
|
||||
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
_cogl_texture_can_hardware_repeat (CoglTexture *texture);
|
||||
|
||||
void
|
||||
@@ -346,7 +346,7 @@ _cogl_texture_spans_foreach_in_region (CoglSpan *x_spans,
|
||||
CoglMetaTextureCallback callback,
|
||||
void *user_data);
|
||||
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
_cogl_texture_set_region (CoglTexture *texture,
|
||||
int width,
|
||||
int height,
|
||||
@@ -390,7 +390,7 @@ _cogl_texture_set_allocated (CoglTexture *texture,
|
||||
int width,
|
||||
int height);
|
||||
|
||||
CoglPixelFormat
|
||||
COGL_EXPORT CoglPixelFormat
|
||||
_cogl_texture_get_format (CoglTexture *texture);
|
||||
|
||||
CoglTextureLoader *
|
||||
|
@@ -76,6 +76,7 @@ G_BEGIN_DECLS
|
||||
*
|
||||
* Returns: a #GType that can be used with the GLib type system.
|
||||
*/
|
||||
COGL_EXPORT
|
||||
GType cogl_texture_get_gtype (void);
|
||||
|
||||
/**
|
||||
@@ -108,6 +109,7 @@ typedef enum
|
||||
COGL_TEXTURE_ERROR_TYPE
|
||||
} CoglTextureError;
|
||||
|
||||
COGL_EXPORT
|
||||
uint32_t cogl_texture_error_quark (void);
|
||||
|
||||
/**
|
||||
@@ -119,7 +121,7 @@ uint32_t cogl_texture_error_quark (void);
|
||||
* Return value: %TRUE if the @object references a texture, and
|
||||
* %FALSE otherwise
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_is_texture (void *object);
|
||||
|
||||
/**
|
||||
@@ -171,7 +173,7 @@ typedef enum _CoglTextureComponents
|
||||
*
|
||||
* Since: 1.18
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_texture_set_components (CoglTexture *texture,
|
||||
CoglTextureComponents components);
|
||||
|
||||
@@ -189,7 +191,7 @@ cogl_texture_set_components (CoglTexture *texture,
|
||||
*
|
||||
* Since: 1.18
|
||||
*/
|
||||
CoglTextureComponents
|
||||
COGL_EXPORT CoglTextureComponents
|
||||
cogl_texture_get_components (CoglTexture *texture);
|
||||
|
||||
/**
|
||||
@@ -223,7 +225,7 @@ cogl_texture_get_components (CoglTexture *texture);
|
||||
*
|
||||
* Since: 1.18
|
||||
*/
|
||||
void
|
||||
COGL_EXPORT void
|
||||
cogl_texture_set_premultiplied (CoglTexture *texture,
|
||||
gboolean premultiplied);
|
||||
|
||||
@@ -242,7 +244,7 @@ cogl_texture_set_premultiplied (CoglTexture *texture,
|
||||
* value or %FALSE if not.
|
||||
* Since: 1.18
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_texture_get_premultiplied (CoglTexture *texture);
|
||||
|
||||
/**
|
||||
@@ -253,7 +255,7 @@ cogl_texture_get_premultiplied (CoglTexture *texture);
|
||||
*
|
||||
* Return value: the width of the GPU side texture in pixels
|
||||
*/
|
||||
unsigned int
|
||||
COGL_EXPORT unsigned int
|
||||
cogl_texture_get_width (CoglTexture *texture);
|
||||
|
||||
/**
|
||||
@@ -264,7 +266,7 @@ cogl_texture_get_width (CoglTexture *texture);
|
||||
*
|
||||
* Return value: the height of the GPU side texture in pixels
|
||||
*/
|
||||
unsigned int
|
||||
COGL_EXPORT unsigned int
|
||||
cogl_texture_get_height (CoglTexture *texture);
|
||||
|
||||
/**
|
||||
@@ -276,7 +278,7 @@ cogl_texture_get_height (CoglTexture *texture);
|
||||
*
|
||||
* Return value: the maximum waste
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_texture_get_max_waste (CoglTexture *texture);
|
||||
|
||||
/**
|
||||
@@ -289,7 +291,7 @@ cogl_texture_get_max_waste (CoglTexture *texture);
|
||||
* Return value: %TRUE if the texture is sliced, %FALSE if the texture
|
||||
* is stored as a single GPU texture
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_texture_is_sliced (CoglTexture *texture);
|
||||
|
||||
/**
|
||||
@@ -308,7 +310,7 @@ cogl_texture_is_sliced (CoglTexture *texture);
|
||||
* Return value: %TRUE if the handle was successfully retrieved, %FALSE
|
||||
* if the handle was invalid
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_texture_get_gl_texture (CoglTexture *texture,
|
||||
unsigned int *out_gl_handle,
|
||||
unsigned int *out_gl_target);
|
||||
@@ -320,8 +322,8 @@ cogl_texture_get_gl_texture (CoglTexture *texture,
|
||||
* @rowstride: the rowstride of @data in bytes or pass 0 to calculate
|
||||
* from the bytes-per-pixel of @format multiplied by the
|
||||
* @texture width.
|
||||
* @data: memory location to write the @texture's contents, or %NULL
|
||||
* to only query the data size through the return value.
|
||||
* @data: (array) (nullable): memory location to write the @texture's contents,
|
||||
* or %NULL to only query the data size through the return value.
|
||||
*
|
||||
* Copies the pixel data from a cogl texture to system memory.
|
||||
*
|
||||
@@ -332,7 +334,7 @@ cogl_texture_get_gl_texture (CoglTexture *texture,
|
||||
*
|
||||
* Return value: the size of the texture data in bytes
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
cogl_texture_get_data (CoglTexture *texture,
|
||||
CoglPixelFormat format,
|
||||
unsigned int rowstride,
|
||||
@@ -354,7 +356,7 @@ cogl_texture_get_data (CoglTexture *texture,
|
||||
* @format: the #CoglPixelFormat used in the source buffer.
|
||||
* @rowstride: rowstride of source buffer (computed from width if none
|
||||
* specified)
|
||||
* @data: the actual pixel data.
|
||||
* @data: (array): the actual pixel data.
|
||||
*
|
||||
* Sets the pixels in a rectangular subregion of @texture from an in-memory
|
||||
* buffer containing pixel data.
|
||||
@@ -364,7 +366,7 @@ cogl_texture_get_data (CoglTexture *texture,
|
||||
* Return value: %TRUE if the subregion upload was successful, and
|
||||
* %FALSE otherwise
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_texture_set_region (CoglTexture *texture,
|
||||
int src_x,
|
||||
int src_y,
|
||||
@@ -384,7 +386,7 @@ cogl_texture_set_region (CoglTexture *texture,
|
||||
* @format: the #CoglPixelFormat used in the source @data buffer.
|
||||
* @rowstride: rowstride of the source @data buffer (computed from
|
||||
* the texture width and @format if it equals 0)
|
||||
* @data: the source data, pointing to the first top-left pixel to set
|
||||
* @data: (array): the source data, pointing to the first top-left pixel to set
|
||||
* @level: The mipmap level to update (Normally 0 for the largest,
|
||||
* base texture)
|
||||
* @error: A #GError to return exceptional errors
|
||||
@@ -430,7 +432,7 @@ cogl_texture_set_region (CoglTexture *texture,
|
||||
* Return value: %TRUE if the data upload was successful, and
|
||||
* %FALSE otherwise
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_texture_set_data (CoglTexture *texture,
|
||||
CoglPixelFormat format,
|
||||
int rowstride,
|
||||
@@ -463,7 +465,7 @@ cogl_texture_set_data (CoglTexture *texture,
|
||||
* Since: 1.8
|
||||
* Stability: unstable
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_texture_set_region_from_bitmap (CoglTexture *texture,
|
||||
int src_x,
|
||||
int src_y,
|
||||
@@ -491,14 +493,14 @@ cogl_texture_set_region_from_bitmap (CoglTexture *texture,
|
||||
* otherwise %FALSE and @error will be updated if it
|
||||
* wasn't %NULL.
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_texture_allocate (CoglTexture *texture,
|
||||
GError **error);
|
||||
|
||||
/**
|
||||
* cogl_texture_is_get_data_supported: (skip)
|
||||
*/
|
||||
gboolean
|
||||
COGL_EXPORT gboolean
|
||||
cogl_texture_is_get_data_supported (CoglTexture *texture);
|
||||
|
||||
G_END_DECLS
|
||||
|
@@ -23,6 +23,8 @@
|
||||
#ifdef HAVE_TRACING
|
||||
|
||||
#include <sysprof-capture.h>
|
||||
#include <sysprof-capture-writer.h>
|
||||
#include <sysprof-clock.h>
|
||||
#include <syscall.h>
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
@@ -30,6 +32,18 @@
|
||||
#define COGL_TRACE_OUTPUT_FILE "cogl-trace-sp-capture.syscap"
|
||||
#define BUFFER_LENGTH (4096 * 4)
|
||||
|
||||
struct _CoglTraceContext
|
||||
{
|
||||
SysprofCaptureWriter *writer;
|
||||
};
|
||||
|
||||
typedef struct _CoglTraceThreadContext
|
||||
{
|
||||
int cpu_id;
|
||||
GPid pid;
|
||||
char *group;
|
||||
} CoglTraceThreadContext;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
int fd;
|
||||
@@ -228,6 +242,37 @@ cogl_set_tracing_disabled_on_thread (GMainContext *main_context)
|
||||
g_source_unref (source);
|
||||
}
|
||||
|
||||
void
|
||||
cogl_trace_end (CoglTraceHead *head)
|
||||
{
|
||||
SysprofTimeStamp end_time;
|
||||
CoglTraceContext *trace_context;
|
||||
CoglTraceThreadContext *trace_thread_context;
|
||||
|
||||
end_time = g_get_monotonic_time () * 1000;
|
||||
trace_context = cogl_trace_context;
|
||||
trace_thread_context = g_private_get (&cogl_trace_thread_data);
|
||||
|
||||
g_mutex_lock (&cogl_trace_mutex);
|
||||
if (!sysprof_capture_writer_add_mark (trace_context->writer,
|
||||
head->begin_time,
|
||||
trace_thread_context->cpu_id,
|
||||
trace_thread_context->pid,
|
||||
(uint64_t) end_time - head->begin_time,
|
||||
trace_thread_context->group,
|
||||
head->name,
|
||||
NULL))
|
||||
{
|
||||
/* XXX: g_main_context_get_thread_default() might be wrong, it probably
|
||||
* needs to store the GMainContext in CoglTraceThreadContext when creating
|
||||
* and use it here.
|
||||
*/
|
||||
if (errno == EPIPE)
|
||||
cogl_set_tracing_disabled_on_thread (g_main_context_get_thread_default ());
|
||||
}
|
||||
g_mutex_unlock (&cogl_trace_mutex);
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
#include <string.h>
|
||||
|
@@ -19,47 +19,42 @@
|
||||
#ifndef COGL_TRACE_H
|
||||
#define COGL_TRACE_H
|
||||
|
||||
#include "cogl-config.h"
|
||||
|
||||
#ifdef HAVE_TRACING
|
||||
|
||||
#include <glib.h>
|
||||
#include <sysprof-capture-writer.h>
|
||||
#include <sysprof-clock.h>
|
||||
#include <stdint.h>
|
||||
#include <errno.h>
|
||||
|
||||
typedef struct _CoglTraceContext
|
||||
{
|
||||
SysprofCaptureWriter *writer;
|
||||
} CoglTraceContext;
|
||||
#include "cogl/cogl-defines.h"
|
||||
#include "cogl/cogl-macros.h"
|
||||
|
||||
typedef struct _CoglTraceThreadContext
|
||||
{
|
||||
int cpu_id;
|
||||
GPid pid;
|
||||
char *group;
|
||||
} CoglTraceThreadContext;
|
||||
#ifdef COGL_HAS_TRACING
|
||||
|
||||
typedef struct _CoglTraceContext CoglTraceContext;
|
||||
|
||||
typedef struct _CoglTraceHead
|
||||
{
|
||||
SysprofTimeStamp begin_time;
|
||||
uint64_t begin_time;
|
||||
const char *name;
|
||||
} CoglTraceHead;
|
||||
|
||||
extern GPrivate cogl_trace_thread_data;
|
||||
extern CoglTraceContext *cogl_trace_context;
|
||||
extern GMutex cogl_trace_mutex;
|
||||
COGL_EXPORT
|
||||
GPrivate cogl_trace_thread_data;
|
||||
COGL_EXPORT
|
||||
CoglTraceContext *cogl_trace_context;
|
||||
COGL_EXPORT
|
||||
GMutex cogl_trace_mutex;
|
||||
|
||||
void cogl_set_tracing_enabled_on_thread_with_fd (GMainContext *main_context,
|
||||
const char *group,
|
||||
int fd);
|
||||
COGL_EXPORT void
|
||||
cogl_set_tracing_enabled_on_thread_with_fd (GMainContext *main_context,
|
||||
const char *group,
|
||||
int fd);
|
||||
|
||||
void cogl_set_tracing_enabled_on_thread (GMainContext *main_context,
|
||||
const char *group,
|
||||
const char *filename);
|
||||
COGL_EXPORT void
|
||||
cogl_set_tracing_enabled_on_thread (GMainContext *main_context,
|
||||
const char *group,
|
||||
const char *filename);
|
||||
|
||||
void cogl_set_tracing_disabled_on_thread (GMainContext *main_context);
|
||||
COGL_EXPORT void
|
||||
cogl_set_tracing_disabled_on_thread (GMainContext *main_context);
|
||||
|
||||
static inline void
|
||||
cogl_trace_begin (CoglTraceHead *head,
|
||||
@@ -69,36 +64,8 @@ cogl_trace_begin (CoglTraceHead *head,
|
||||
head->name = name;
|
||||
}
|
||||
|
||||
static inline void
|
||||
cogl_trace_end (CoglTraceHead *head)
|
||||
{
|
||||
SysprofTimeStamp end_time;
|
||||
CoglTraceContext *trace_context;
|
||||
CoglTraceThreadContext *trace_thread_context;
|
||||
|
||||
end_time = g_get_monotonic_time () * 1000;
|
||||
trace_context = cogl_trace_context;
|
||||
trace_thread_context = g_private_get (&cogl_trace_thread_data);
|
||||
|
||||
g_mutex_lock (&cogl_trace_mutex);
|
||||
if (!sysprof_capture_writer_add_mark (trace_context->writer,
|
||||
head->begin_time,
|
||||
trace_thread_context->cpu_id,
|
||||
trace_thread_context->pid,
|
||||
(uint64_t) end_time - head->begin_time,
|
||||
trace_thread_context->group,
|
||||
head->name,
|
||||
NULL))
|
||||
{
|
||||
/* XXX: g_main_context_get_thread_default() might be wrong, it probably
|
||||
* needs to store the GMainContext in CoglTraceThreadContext when creating
|
||||
* and use it here.
|
||||
*/
|
||||
if (errno == EPIPE)
|
||||
cogl_set_tracing_disabled_on_thread (g_main_context_get_thread_default ());
|
||||
}
|
||||
g_mutex_unlock (&cogl_trace_mutex);
|
||||
}
|
||||
COGL_EXPORT void
|
||||
cogl_trace_end (CoglTraceHead *head);
|
||||
|
||||
static inline void
|
||||
cogl_auto_trace_end_helper (CoglTraceHead **head)
|
||||
@@ -126,7 +93,7 @@ cogl_auto_trace_end_helper (CoglTraceHead **head)
|
||||
ScopedCoglTrace##Name = &CoglTrace##Name; \
|
||||
}
|
||||
|
||||
#else /* HAVE_TRACING */
|
||||
#else /* COGL_HAS_TRACING */
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
@@ -134,14 +101,17 @@ cogl_auto_trace_end_helper (CoglTraceHead **head)
|
||||
#define COGL_TRACE_END(Name) (void) 0
|
||||
#define COGL_TRACE_BEGIN_SCOPED(Name, description) (void) 0
|
||||
|
||||
void cogl_set_tracing_enabled_on_thread_with_fd (void *data,
|
||||
const char *group,
|
||||
int fd);
|
||||
void cogl_set_tracing_enabled_on_thread (void *data,
|
||||
const char *group,
|
||||
const char *filename);
|
||||
void cogl_set_tracing_disabled_on_thread (void *data);
|
||||
COGL_EXPORT void
|
||||
cogl_set_tracing_enabled_on_thread_with_fd (void *data,
|
||||
const char *group,
|
||||
int fd);
|
||||
COGL_EXPORT void
|
||||
cogl_set_tracing_enabled_on_thread (void *data,
|
||||
const char *group,
|
||||
const char *filename);
|
||||
COGL_EXPORT void
|
||||
cogl_set_tracing_disabled_on_thread (void *data);
|
||||
|
||||
#endif /* HAVE_TRACING */
|
||||
#endif /* COGL_HAS_TRACING */
|
||||
|
||||
#endif /* COGL_TRACE_H */
|
||||
|
@@ -39,6 +39,7 @@
|
||||
#include <stddef.h>
|
||||
|
||||
#include <cogl/cogl-defines.h>
|
||||
#include <cogl/cogl-macros.h>
|
||||
|
||||
#include <glib.h>
|
||||
#include <glib-object.h>
|
||||
@@ -81,7 +82,7 @@ typedef struct { \
|
||||
typedef void * CoglHandle;
|
||||
|
||||
#define COGL_TYPE_HANDLE (cogl_handle_get_type ())
|
||||
GType
|
||||
COGL_EXPORT GType
|
||||
cogl_handle_get_type (void) G_GNUC_CONST;
|
||||
|
||||
/* We forward declare this in cogl-types to avoid circular dependencies
|
||||
@@ -276,7 +277,7 @@ typedef enum /*< prefix=COGL_ERROR >*/
|
||||
COGL_SYSTEM_ERROR_NO_MEMORY
|
||||
} CoglSystemError;
|
||||
|
||||
uint32_t
|
||||
COGL_EXPORT uint32_t
|
||||
_cogl_system_error_quark (void);
|
||||
|
||||
/**
|
||||
|
@@ -44,7 +44,7 @@
|
||||
* Return value: @a if @a is already a power of two, otherwise returns
|
||||
* the next nearest power of two.
|
||||
*/
|
||||
int
|
||||
COGL_EXPORT int
|
||||
_cogl_util_next_p2 (int a)
|
||||
{
|
||||
int rval = 1;
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user