synfig-studio  1.0.3
module.h
Go to the documentation of this file.
1 /* === S Y N F I G ========================================================= */
21 /* ========================================================================= */
22 
23 /* === S T A R T =========================================================== */
24 
25 #ifndef __SYNFIG_MODULE_H
26 #define __SYNFIG_MODULE_H
27 
28 /* === H E A D E R S ======================================================= */
29 
30 #include <ETL/handle>
31 
32 /* === M A C R O S ========================================================= */
33 
34 /* === T Y P E D E F S ===================================================== */
35 
36 /* === C L A S S E S & S T R U C T S ======================================= */
37 
38 namespace studio {
39 
40 class Module : public etl::shared_object
41 {
42  bool status_;
43 
44 protected:
45  Module();
46 
47 public:
48  virtual ~Module();
49 
50  bool start();
51 
52  bool stop();
53 
54  bool get_status()const;
55 
56 protected:
57 
58  virtual bool start_vfunc()=0;
59  virtual bool stop_vfunc()=0;
60 };
61 
62 
63 }; // END of namespace studio
64 
65 /* === E N D =============================================================== */
66 
67 #endif