Loading...
Searching...
No Matches
custom_handler.h
1/*
2* Nebula Atom
3
4* This program is free software: you can redistribute it and/or modify
5* it under the terms of the GNU General Public License as published by
6* the Free Software Foundation, either version 3 of the License, or
7* (at your option) any later version.
8*
9* This program is distributed in the hope that it will be useful,
10* but WITHOUT ANY WARRANTY; without even the implied warranty of
11* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12* GNU General Public License for more details.
13*
14* You should have received a copy of the GNU General Public License
15* along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17
18#ifndef NAF_HANDLERS_CUSTOMANDLER
19#define NAF_HANDLERS_CUSTOMANDLER
20
21
22#include "handlers/root_handler.h"
23
24
25namespace NAF
26{
27 namespace Handlers
28 {
29 class CustomHandler;
30 }
31}
32
33
35 public RootHandler
36{
37 public:
38 CustomHandler(std::function<void(CustomHandler&)> process_function);
39 virtual ~CustomHandler();
40
41 std::function<void(CustomHandler&)>& get_process_function()
42 {
43 auto& var = process_function_;
44 return var;
45 }
46
47 protected:
48 virtual void Process_() override;
49
50 private:
51 std::function<void(CustomHandler&)> process_function_;
52};
53
54#endif // NAF_HANDLERS_CUSTOMANDLER
Definition custom_handler.h:36
Definition root_handler.h:98