Handle some stuff a little bit neater. (i.e. setting android target version)
[fltk_mvc_template.git] / _template / src / ModelIF.h
1 ///////////////////////////////////////////////////////////////////////////
2 // Workfile: ModelIF.h
3 // Author: Daniel Giritzer <daniel@giritzer.eu>
4 // Date:
5 // Description: Interface für die Model Klasse.
6 // Remarks: Dieses Interface definiert alle von einem View
7 //          benötigten Funktionen.
8 ///////////////////////////////////////////////////////////////////////////
9 #ifndef MODELIF_H_INCLUDED
10 #define MODELIF_H_INCLUDED
11
12 #include <memory>
13 #include "Subject.h"
14
15 /////////////////////////////////////////////////
16 /// \brief Interface für die Model Klasse.
17 ///        Dieses Interface definiert alle von einem View
18 ///        benötigten Funktionen um Daten abzufragen.
19 /////////////////////////////////////////////////
20 class ModelIF : public Subject
21 {
22 public:
23     /////////////////////////////////////////////////
24     /// \brief Typedef für einen shared Pointer auf
25     ///        ein Objekt dieser Klasse.
26     /////////////////////////////////////////////////
27     using SPtr = std::shared_ptr<ModelIF>;
28
29     /////////////////////////////////////////////////
30     /// \brief Wirft eine std::string eine Exception.
31     /////////////////////////////////////////////////
32     virtual void throwException() = 0;
33
34 protected:
35     ModelIF() = default;
36 };
37
38 #endif // MODELIF_H_INCLUDED