LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
constraintFunctionManager.h
Go to the documentation of this file.
1// Copyright 2002-2013 CEA LIST
2// SPDX-FileCopyrightText: 2022 CEA LIST <gael.de-chalendar@cea.fr>
3//
4// SPDX-License-Identifier: MIT
5
6/************************************************************************
7 *
8 * @file constraintFunctionManager.h
9 * @author besancon (besanconr@zoe.cea.fr)
10 * @date Wed Mar 16 2005
11 * @version $Id$
12 * copyright Copyright (C) 2005-2012 by CEA LIST
13 * Project Automaton
14 *
15 * @brief manager for constraint functions (contains all defined constraint functions)
16 *
17 *
18 ***********************************************************************/
19
20#ifndef CONSTRAINTFUNCTIONMANAGER_H
21#define CONSTRAINTFUNCTIONMANAGER_H
22
23#include "AutomatonExport.h"
26#include <map>
27
28namespace Lima {
29namespace LinguisticProcessing {
30namespace Automaton {
31
32class ConstraintFunction;
33
35 public Singleton<ConstraintFunctionManager>
36{
37
39
40 public:
43
45 getConstraintFunction(const std::string& id,
46 MediaId language,
47 const LimaString& complement=LimaString());
48
50 createConstraintFunction(const std::string& id,
51 MediaId language,
52 const LimaString& complement=LimaString());
53
54 bool getFunctionName(const ConstraintFunction* functionPtr,
55 std::string& id,
56 LimaString& complement) const;
57
58 const std::multimap<std::string,ConstraintFunction*>&
59 getRegisteredFunctions() const { return m_constraintMap; }
60
61 private:
62 std::multimap<std::string,ConstraintFunction*> m_constraintMap;
63};
64
65} // end namespace
66} // end namespace
67} // end namespace
68
69#endif
#define LIMA_AUTOMATON_EXPORT
const std::multimap< std::string, ConstraintFunction * > & getRegisteredFunctions() const
Defines access method for the singleton pattern.
Definition Singleton.h:22
NAUTITIA.
QString LimaString
Definition LimaString.h:33