LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
PropertyCodeManager.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
6/***************************************************************************
7 * Copyright (C) 2004 by CEA LIST *
8 * *
9 ***************************************************************************/
10
11#ifndef LIMA_COMMON_PROPERTYCODE_PROPERTYCODEMANAGER_H
12#define LIMA_COMMON_PROPERTYCODE_PROPERTYCODEMANAGER_H
13
15#include "PropertyManager.h"
16
17#include <memory>
18#include <set>
19
20namespace Lima
21{
22namespace Common
23{
24namespace PropertyCode
25{
26
27class PropertyCodeManagerPrivate;
34{
36
37public:
38
44
46
49
56 void readFromXmlFile(const std::string& filename);
57
63 const PropertyAccessor& getPropertyAccessor(
64 const std::string& propertyName) const;
65
71 const PropertyManager& getPropertyManager(
72 const std::string& propertyName) const;
73
79 const std::shared_ptr<PropertyAccessor> getPropertySetAccessor(
80 const std::set<std::string>& propertyNames) const;
81
86 const std::map<std::string,PropertyManager>& getPropertyManagers() const;
87
96 LinguisticCode encode(const std::map<std::string,std::string>& propValues) const;
97
115 void convertSymbolicCodes(const std::string& symbolicCodeFile,
116 std::map<std::string,LinguisticCode>& conversionTable) const;
117
118private:
119 std::unique_ptr<PropertyCodeManagerPrivate> m_d;
120};
121
122} // PropertyCode
123} // Common
124} // Lima
125
126
127#endif
#define LIMA_PROPERTYCODE_EXPORT
Provide function to read write and check a property.
Provide tools to parse a property file, and deal with the property coding system.
Provide tools to manage a specific property.
NAUTITIA.