electron/brightray/browser/linux/libnotify_loader.h

47 lines
1.5 KiB
C
Raw Normal View History

2015-12-24 02:46:08 +00:00
// This is generated file. Do not modify directly.
// Path to the code generator:
// tools/generate_library_loader/generate_library_loader.py .
2015-12-24 02:46:08 +00:00
#ifndef BRIGHTRAY_BROWSER_LINUX_LIBNOTIFY_LOADER_H_
#define BRIGHTRAY_BROWSER_LINUX_LIBNOTIFY_LOADER_H_
#include <libnotify/notify.h>
2017-03-23 19:48:22 +00:00
#include <string>
2015-12-24 02:46:08 +00:00
class LibNotifyLoader {
public:
LibNotifyLoader();
~LibNotifyLoader();
bool Load(const std::string& library_name)
__attribute__((warn_unused_result));
bool loaded() const { return loaded_; }
decltype(&::notify_is_initted) notify_is_initted;
decltype(&::notify_init) notify_init;
decltype(&::notify_get_server_caps) notify_get_server_caps;
decltype(&::notify_get_server_info) notify_get_server_info;
2015-12-24 02:46:08 +00:00
decltype(&::notify_notification_new) notify_notification_new;
decltype(&::notify_notification_add_action) notify_notification_add_action;
decltype(&::notify_notification_set_image_from_pixbuf)
notify_notification_set_image_from_pixbuf;
2015-12-24 02:46:08 +00:00
decltype(&::notify_notification_set_timeout) notify_notification_set_timeout;
decltype(&::notify_notification_set_hint_string)
notify_notification_set_hint_string;
2015-12-24 02:46:08 +00:00
decltype(&::notify_notification_show) notify_notification_show;
decltype(&::notify_notification_close) notify_notification_close;
private:
void CleanUp(bool unload);
void* library_;
bool loaded_;
// Disallow copy constructor and assignment operator.
LibNotifyLoader(const LibNotifyLoader&);
void operator=(const LibNotifyLoader&);
};
#endif // BRIGHTRAY_BROWSER_LINUX_LIBNOTIFY_LOADER_H_