waybar/include/factory.hpp

82 lines
1.7 KiB
C++
Raw Normal View History

2018-08-09 12:05:48 +02:00
#pragma once
#include <json/json.h>
#ifdef HAVE_LIBDATE
2018-08-09 12:05:48 +02:00
#include "modules/clock.hpp"
#else
#include "modules/simpleclock.hpp"
#endif
2018-08-20 17:20:02 +02:00
#ifdef HAVE_SWAY
2022-04-06 08:37:19 +02:00
#include "modules/sway/language.hpp"
2018-10-30 13:39:30 +01:00
#include "modules/sway/mode.hpp"
2018-08-15 20:17:17 +02:00
#include "modules/sway/window.hpp"
2019-04-18 17:52:00 +02:00
#include "modules/sway/workspaces.hpp"
2018-08-20 17:20:02 +02:00
#endif
#ifdef HAVE_WLR
#include "modules/wlr/taskbar.hpp"
2020-08-05 22:10:08 +02:00
#include "modules/wlr/workspace_manager.hpp"
#endif
2020-06-06 15:41:37 +02:00
#ifdef HAVE_RIVER
#include "modules/river/tags.hpp"
#endif
#if defined(__linux__) && !defined(NO_FILESYSTEM)
2018-08-09 12:05:48 +02:00
#include "modules/battery.hpp"
#endif
2019-08-11 15:10:37 +02:00
#if defined(HAVE_CPU_LINUX) || defined(HAVE_CPU_BSD)
2018-08-09 12:05:48 +02:00
#include "modules/cpu.hpp"
2019-08-11 15:10:37 +02:00
#endif
2019-04-18 17:52:00 +02:00
#include "modules/idle_inhibitor.hpp"
2019-08-09 12:40:33 +02:00
#if defined(HAVE_MEMORY_LINUX) || defined(HAVE_MEMORY_BSD)
2019-04-18 17:52:00 +02:00
#include "modules/memory.hpp"
2019-08-09 12:40:33 +02:00
#endif
2019-09-23 22:25:54 +02:00
#include "modules/disk.hpp"
2019-08-11 17:23:37 +02:00
#ifdef HAVE_DBUSMENU
#include "modules/sni/tray.hpp"
2018-10-25 19:12:28 +02:00
#endif
2018-08-20 17:20:02 +02:00
#ifdef HAVE_LIBNL
2018-08-09 16:38:24 +02:00
#include "modules/network.hpp"
2018-08-20 17:20:02 +02:00
#endif
#ifdef HAVE_LIBUDEV
#include "modules/backlight.hpp"
#endif
2021-02-07 21:05:11 +01:00
#ifdef HAVE_LIBEVDEV
#include "modules/keyboard_state.hpp"
#endif
2022-03-15 17:54:06 +01:00
#ifdef HAVE_UPOWER
2022-03-19 11:34:34 +01:00
#include "modules/upower/upower.hpp"
2022-03-15 17:54:06 +01:00
#endif
2018-08-20 17:20:02 +02:00
#ifdef HAVE_LIBPULSE
2018-08-09 23:55:38 +02:00
#include "modules/pulseaudio.hpp"
2018-08-20 17:20:02 +02:00
#endif
2019-04-16 16:34:37 +02:00
#ifdef HAVE_LIBMPDCLIENT
#include "modules/mpd/mpd.hpp"
2019-04-16 16:34:37 +02:00
#endif
#ifdef HAVE_LIBSNDIO
#include "modules/sndio.hpp"
2019-04-16 16:34:37 +02:00
#endif
#ifdef HAVE_GIO_UNIX
#include "modules/inhibitor.hpp"
#endif
#include "bar.hpp"
2019-04-18 17:52:00 +02:00
#include "modules/custom.hpp"
#include "modules/temperature.hpp"
#if defined(__linux__)
2022-04-06 08:37:19 +02:00
#ifdef WANT_RFKILL
#include "modules/bluetooth.hpp"
#endif
#endif
2018-08-09 12:05:48 +02:00
namespace waybar {
2018-08-16 14:29:41 +02:00
class Factory {
2019-04-18 17:52:00 +02:00
public:
Factory(const Bar& bar, const Json::Value& config);
2019-06-15 14:57:52 +02:00
AModule* makeModule(const std::string& name) const;
2019-04-18 17:52:00 +02:00
private:
2022-04-06 08:37:19 +02:00
const Bar& bar_;
2019-04-18 17:52:00 +02:00
const Json::Value& config_;
2018-08-16 14:29:41 +02:00
};
2018-08-09 12:05:48 +02:00
2019-04-18 17:52:00 +02:00
} // namespace waybar