YARP
Yet Another Robot Platform
manifestloader.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 
6 #ifndef YARP_MANAGER_MANIFESTLOADER
7 #define YARP_MANAGER_MANIFESTLOADER
8 
10 #include <yarp/manager/module.h>
12 #include <yarp/manager/resource.h>
13 
14 namespace yarp {
15 namespace manager {
16 
17 
21 class AppLoader {
22 
23 public:
24  AppLoader() = default;
25  virtual ~AppLoader() = default;
26  virtual bool init() = 0;
27  virtual void fini() = 0;
28  virtual void reset() = 0;
30 
31 protected:
32 
33 private:
34 
35 };
36 
37 class AppSaver
38 {
39 public:
40  AppSaver() = default;
41  virtual ~AppSaver() = default;
42  virtual bool save(Application* application) = 0;
43 
44 protected:
45 
46 private:
47 };
48 
49 
50 
54 class ModuleLoader {
55 
56 public:
57  ModuleLoader() = default;
58  virtual ~ModuleLoader() = default;
59  virtual bool init() = 0;
60  virtual void reset() = 0;
61  virtual void fini() = 0;
62  virtual Module* getNextModule() = 0;
63 
64 protected:
65 
66 private:
67 
68 };
69 
70 
75 
76 public:
77  ResourceLoader() = default;
78  virtual ~ResourceLoader() = default;
79  virtual bool init() = 0;
80  virtual void reset() = 0;
81  virtual void fini() = 0;
83 
84 protected:
85 
86 private:
87 
88 };
89 
90 
95 struct AppTemplate {
96  std::string name;
97  std::string tmpFileName;
98 };
99 
100 
101 class TempLoader {
102 public:
103  TempLoader() = default;
104  virtual ~TempLoader() = default;
105  virtual bool init() = 0;
106  virtual void fini() = 0;
107  virtual void reset() = 0;
109 
110 protected:
111 
112 private:
113 
114 };
115 
116 } // namespace yarp
117 } // namespace manager
118 
119 
120 #endif // __YARP_MANAGER_MANIFESTLOADER__
Abstract Class AppLoader.
virtual ~AppLoader()=default
virtual Application * getNextApplication()=0
virtual bool init()=0
virtual void reset()=0
virtual void fini()=0
virtual ~AppSaver()=default
virtual bool save(Application *application)=0
Class Application.
Definition: application.h:289
Abstract Class ModuleLoader.
virtual Module * getNextModule()=0
virtual ~ModuleLoader()=default
Class Module.
Definition: module.h:100
Abstract Class ResourceLoader.
virtual ~ResourceLoader()=default
virtual GenericResource * getNextResource()=0
virtual bool init()=0
virtual ~TempLoader()=default
virtual void reset()=0
virtual AppTemplate * getNextAppTemplate()=0
virtual void fini()=0
The main, catch-all namespace for YARP.
Definition: dirs.h:16
Abstract Class TempLoader.