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