1 // Generated by gmmproc 2.50.1 -- DO NOT MODIFY!
2
3
4 #include <glibmm.h>
5
6 #include <gstreamermm/systemclock.h>
7 #include <gstreamermm/private/systemclock_p.h>
8
9
10 /* gstreamermm - a C++ wrapper for gstreamer
11 *
12 * Copyright 2008 The gstreamermm Development Team
13 *
14 * This library is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU Lesser General Public
16 * License as published by the Free Software Foundation; either
17 * version 2.1 of the License, or (at your option) any later version.
18 *
19 * This library is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22 * Lesser General Public License for more details.
23 *
24 * You should have received a copy of the GNU Lesser General Public
25 * License along with this library; if not, write to the Free
26 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
27 */
28
29 #include <gst/gst.h>
30
31
32 namespace
33 {
34 } // anonymous namespace
35
36
37 namespace Glib
38 {
39
wrap(GstSystemClock * object,bool take_copy)40 Glib::RefPtr<Gst::SystemClock> wrap(GstSystemClock* object, bool take_copy)
41 {
42 return Glib::RefPtr<Gst::SystemClock>( dynamic_cast<Gst::SystemClock*> (Glib::wrap_auto ((GObject*)(object), take_copy)) );
43 //We use dynamic_cast<> in case of multiple inheritance.
44 }
45
46 } /* namespace Glib */
47
48
49 namespace Gst
50 {
51
52
53 /* The *_Class implementation: */
54
init()55 const Glib::Class& SystemClock_Class::init()
56 {
57 if(!gtype_) // create the GType if necessary
58 {
59 // Glib::Class has to know the class init function to clone custom types.
60 class_init_func_ = &SystemClock_Class::class_init_function;
61
62 // This is actually just optimized away, apparently with no harm.
63 // Make sure that the parent type has been created.
64 //CppClassParent::CppObjectType::get_type();
65
66 // Create the wrapper type, with the same class/instance size as the base type.
67 register_derived_type(gst_system_clock_get_type());
68
69 // Add derived versions of interfaces, if the C type implements any interfaces:
70
71 }
72
73 return *this;
74 }
75
76
class_init_function(void * g_class,void * class_data)77 void SystemClock_Class::class_init_function(void* g_class, void* class_data)
78 {
79 const auto klass = static_cast<BaseClassType*>(g_class);
80 CppClassParent::class_init_function(klass, class_data);
81
82
83 }
84
85
wrap_new(GObject * object)86 Glib::ObjectBase* SystemClock_Class::wrap_new(GObject* object)
87 {
88 return new SystemClock((GstSystemClock*)object);
89 }
90
91
92 /* The implementation: */
93
gobj_copy()94 GstSystemClock* SystemClock::gobj_copy()
95 {
96 reference();
97 return gobj();
98 }
99
SystemClock(const Glib::ConstructParams & construct_params)100 SystemClock::SystemClock(const Glib::ConstructParams& construct_params)
101 :
102 Clock(construct_params)
103 {
104
105 }
106
SystemClock(GstSystemClock * castitem)107 SystemClock::SystemClock(GstSystemClock* castitem)
108 :
109 Clock((GstClock*)(castitem))
110 {}
111
112
SystemClock(SystemClock && src)113 SystemClock::SystemClock(SystemClock&& src) noexcept
114 : Clock(std::move(src))
115 {}
116
operator =(SystemClock && src)117 SystemClock& SystemClock::operator=(SystemClock&& src) noexcept
118 {
119 Clock::operator=(std::move(src));
120 return *this;
121 }
122
123
~SystemClock()124 SystemClock::~SystemClock() noexcept
125 {}
126
127
128 SystemClock::CppClassType SystemClock::systemclock_class_; // initialize static member
129
get_type()130 GType SystemClock::get_type()
131 {
132 return systemclock_class_.init().get_type();
133 }
134
135
get_base_type()136 GType SystemClock::get_base_type()
137 {
138 return gst_system_clock_get_type();
139 }
140
141
SystemClock()142 SystemClock::SystemClock()
143 :
144 // Mark this class as non-derived to allow C++ vfuncs to be skipped.
145 Glib::ObjectBase(nullptr),
146 Clock(Glib::ConstructParams(systemclock_class_.init()))
147 {
148
149
150 }
151
obtain()152 Glib::RefPtr<Gst::Clock> SystemClock::obtain()
153 {
154 return Glib::wrap(gst_system_clock_obtain());
155 }
156
157
158 } // namespace Gst
159
160
161