File: source_extra_def_impl.hpp

package info (click to toggle)
cppgir 2.0%2Bgit20240928.c8bb1c6%2Breally2.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,228 kB
  • sloc: cpp: 14,307; ansic: 339; makefile: 11; sh: 9
file content (30 lines) | stat: -rw-r--r-- 573 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#ifndef _GI_GLIB_SOURCE_EXTRA_DEF_IMPL_HPP_
#define _GI_GLIB_SOURCE_EXTRA_DEF_IMPL_HPP_

namespace gi
{
namespace repository
{
namespace GLib
{
namespace base
{
template<typename CallbackType>
void
SourceExtra::set_callback(CallbackType callback) noexcept
{
  auto callback_wrap_ = unwrap(std::move(callback), gi::scope_notified);
  g_source_set_callback(this->gobj_(),
      (GSourceFunc)(GCallback)&callback_wrap_->wrapper, callback_wrap_,
      &callback_wrap_->destroy);
}

} // namespace base

} // namespace GLib

} // namespace repository

} // namespace gi

#endif