YARP
Yet Another Robot Platform
xmlapploader.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2006-2020 Istituto Italiano di Tecnologia (IIT)
3  * All rights reserved.
4  *
5  * This software may be modified and distributed under the terms of the
6  * BSD-3-Clause license. See the accompanying LICENSE file for details.
7  */
8 
9 #ifndef YARP_MANAGER_XMLAPPLOADER
10 #define YARP_MANAGER_XMLAPPLOADER
11 
12 #include <yarp/manager/ymm-types.h>
14 
15 
16 
17 namespace yarp {
18 namespace manager {
19 class TextParser;
20 
24 class XmlAppLoader : public AppLoader {
25 
26 public:
27  XmlAppLoader(const char* szFileName);
28  XmlAppLoader(const char* szPath, const char* szAppName);
29  ~XmlAppLoader() override;
30 
31  bool init() override;
32  void fini() override;
33  void reset() override;
34  Application* getNextApplication() override;
35 
36 protected:
37 
38 private:
39  std::string strAppName;
40  std::string strPath;
41  std::string strFileName;
42  std::vector<std::string> fileNames;
43  Application app;
44  TextParser* parser;
45  Application* parsXml(const char* szFile);
46 };
47 
48 } // namespace yarp
49 } // namespace manager
50 
51 
52 #endif // __YARP_MANAGER_XMLAPPLOADER__
yarp::manager::Application
Class Application.
Definition: application.h:292
yarp::manager::XmlAppLoader::init
bool init() override
Definition: xmlapploader.cpp:74
yarp::manager::XmlAppLoader
Class XmlAppLoader.
Definition: xmlapploader.h:24
yarp::manager::XmlAppLoader::reset
void reset() override
Definition: xmlapploader.cpp:129
yarp::manager::TextParser
Definition: textparser.h:24
yarp::manager::XmlAppLoader::fini
void fini() override
Definition: xmlapploader.cpp:136
yarp::manager::XmlAppLoader::~XmlAppLoader
~XmlAppLoader() override
Definition: xmlapploader.cpp:65
manifestloader.h
yarp::manager::XmlAppLoader::XmlAppLoader
XmlAppLoader(const char *szFileName)
load only one application indicated by its xml file name
Definition: xmlapploader.cpp:56
ymm-types.h
yarp
The main, catch-all namespace for YARP.
Definition: environment.h:18
yarp::manager::AppLoader
Abstract Class AppLoader.
Definition: manifestloader.h:24
yarp::manager::XmlAppLoader::getNextApplication
Application * getNextApplication() override
Definition: xmlapploader.cpp:143