4 * An OpenGL based 'interactive canvas' library.
6 * Authored By: Emmanuele Bassi <ebassi@linux.intel.com>
8 * Copyright (C) 2009 Intel Corporation.
10 * This library is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU Lesser General Public
12 * License as published by the Free Software Foundation; either
13 * version 2 of the License, or (at your option) any later version.
15 * This library is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 * Lesser General Public License for more details.
20 * You should have received a copy of the GNU Lesser General Public
21 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
24 #ifndef __CLUTTER_MASTER_CLOCK_H__
25 #define __CLUTTER_MASTER_CLOCK_H__
27 #include <clutter/clutter-timeline.h>
31 #define CLUTTER_TYPE_MASTER_CLOCK (_clutter_master_clock_get_type ())
32 #define CLUTTER_MASTER_CLOCK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CLUTTER_TYPE_MASTER_CLOCK, ClutterMasterClock))
33 #define CLUTTER_IS_MASTER_CLOCK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CLUTTER_TYPE_MASTER_CLOCK))
35 typedef struct _ClutterMasterClock ClutterMasterClock;
37 GType _clutter_master_clock_get_type (void) G_GNUC_CONST;
39 ClutterMasterClock * _clutter_master_clock_get_default (void);
40 void _clutter_master_clock_add_timeline (ClutterMasterClock *master_clock,
41 ClutterTimeline *timeline);
42 void _clutter_master_clock_remove_timeline (ClutterMasterClock *master_clock,
43 ClutterTimeline *timeline);
44 void _clutter_master_clock_start_running (ClutterMasterClock *master_clock);
45 void _clutter_master_clock_ensure_next_iteration (ClutterMasterClock *master_clock);
47 void _clutter_timeline_advance (ClutterTimeline *timeline,
49 gint64 _clutter_timeline_get_delta (ClutterTimeline *timeline);
50 void _clutter_timeline_do_tick (ClutterTimeline *timeline,
55 #endif /* __CLUTTER_MASTER_CLOCK_H__ */