LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
groupConfigurationStructure.h
Go to the documentation of this file.
1// Copyright 2002-2020 CEA LIST
2// SPDX-FileCopyrightText: 2022 CEA LIST <gael.de-chalendar@cea.fr>
3//
4// SPDX-License-Identifier: MIT
5
16#ifndef GROUPCONFIGURATIONSTRUCTURE_H
17#define GROUPCONFIGURATIONSTRUCTURE_H
18
19#include "common/LimaCommon.h"
21#include <map>
22#include <deque>
23#include <string>
24
25#include <QJsonObject>
26
27namespace Lima {
28namespace Common {
29namespace XMLConfigurationFiles {
30
31class GroupConfigurationStructurePrivate;
33public:
35 GroupConfigurationStructure(const QJsonObject& group);
36 GroupConfigurationStructure(const std::string& name);
37 GroupConfigurationStructure(const QString& name);
40 const GroupConfigurationStructure& group);
42
43 std::string& getName();
44 std::string& getAttribute(const std::string& key);
45 std::string& getParamsValueAtKey(const std::string& key);
46 bool getParamsValueAtKey(const std::string& key, std::string& value);
47 std::deque< std::string >& getListsValueAtKey(const std::string& key);
48 std::map<std::string,std::string>& getMapAtKey(const std::string& key);
49 const std::map<std::string,std::string>& getParams();
50 const std::map<std::string,std::deque<std::string> >& getLists();
51 const std::map<std::string,std::map<std::string,std::string> >& getMaps();
52 void addAttribute(const std::string& key,const std::string& value);
53 void addParamValuePair(const std::string& key, const std::string& value);
54 void addListNamed(const std::string& listName);
55 void addItemInListNamed(const std::string& item,
56 const std::string& listName);
57 void addMap(const std::string& mapName);
58 void addEntryInMap(const std::string& mapName,const std::string& key,
59 const std::string& value);
60
61// QString getNameQ();
62// QString getAttribute(const QString& key);
63// QString getParamsValueAtKey(const QString& key);
64// bool getParamsValueAtKey(const QString& key, QString& value);
65// std::deque< std::string >& getListsValueAtKey(const QString& key);
66// std::map<std::string, std::string>& getMapAtKey(const QString& key);
67// void addAttribute(const QString& key,const QString& value);
68// void addParamValuePair(const QString& key, const QString& value);
69// void addListNamed(const QString& listName);
70// void addItemInListNamed(const QString& item, const QString& listName);
71// void addMap(const QString& mapName);
72// void addEntryInMap(const QString& mapName,const QString& key,
73// const QString& value);
74
76 std::ostream& os, const GroupConfigurationStructure& dgcs);
77
78 // functions to access typed values
79 bool getBooleanParameter(const std::string& key);
80 uint32_t getIntParameter(const std::string& key);
81 double getDoubleParameter(const std::string& key);
82 std::string getStringParameter(const std::string& key);
83
84// bool getBooleanParameter(const QString& key);
85// uint32_t getIntParameter(const QString& key);
86// double getDoubleParameter(const QString& key);
87// QString getStringParameter(const QString& key);
88
89private:
91};
92
94 std::ostream& os, const GroupConfigurationStructure& dgcs);
95
96} // closing namespace XMLConfigurationFiles
97} // closing namespace Common
98} // closing namespace Lima
99
100#endif
QDebug & operator<<(QDebug &qd, const std::string &str)
Definition QsLog.cpp:39
#define LIMA_XMLCONFIGURATIONFILES_EXPORT
Definition LimaCommon.h:137
std::ostream & operator<<(std::ostream &os, const ConfigurationStructure &conf)
NAUTITIA.
launch exception related to the configuration file parsing