Atlas Game Manager
A game manager for f95 and dlsite written in c++
Loading...
Searching...
No Matches
NotificationSignalers.hpp
Go to the documentation of this file.
1//
2// Created by kj16609 on 7/21/23.
3//
4
5#pragma once
6#ifndef ATLASGAMEMANAGER_NOTIFICATIONSIGNALERS_HPP
7#define ATLASGAMEMANAGER_NOTIFICATIONSIGNALERS_HPP
8
9#include <concepts>
10#include <type_traits>
11
13{
14 class NotificationSignaler : public QObject
15 {
16 Q_DISABLE_COPY_MOVE( NotificationSignaler )
17
18 public:
19
21 };
22
23 template < typename T >
24 concept has_get_signaler = requires( T t ) {
25 {
26 t.getSignaler()
27 } -> std::same_as< std::unique_ptr< typename T::Signaler > >;
28 };
29
30 template < typename T >
31 concept has_valid_signaler = std::is_base_of_v< NotificationSignaler, typename T::Signaler >;
32
33 template < typename T >
35 using Signaler = std::unique_ptr< typename T::Signaler >;
36
37} // namespace atlas::notifications
38
39#endif //ATLASGAMEMANAGER_NOTIFICATIONSIGNALERS_HPP
Definition NotificationSignalers.hpp:24
Definition NotificationSignalers.hpp:31
Definition notifications.cpp:14
std::unique_ptr< typename T::Signaler > Signaler
Definition NotificationSignalers.hpp:35