1 // Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License, or (at your option) any later version.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
23 #ifndef SALOMEDSClient_IParameters_H
24 #define SALOMEDSClient_IParameters_H
30 #include "SALOMEDSClient_definitions.hxx"
31 #include "SALOMEDSClient_AttributeParameter.hxx"
34 Class which an interface to store the parameters of the objects
36 class SALOMEDSClient_IParameters
40 virtual ~SALOMEDSClient_IParameters() {}
43 Appends a string value to a named list.
44 Returns a number of the added value.
45 Note: the name of the list MUST be unique
47 virtual int append(const std::string& listName, const std::string& value) = 0;
50 Returns a number elements in the list
52 virtual int nbValues(const std::string& listName) = 0;
55 Returns a list of values in the list
57 virtual std::vector<std::string> getValues(const std::string& listName) = 0;
60 Returns a value with given %index, where %index is in range [0:nbValues-1]
62 virtual std::string getValue(const std::string& listName, int index) = 0;
65 Returns a list all entries lists
67 virtual std::vector<std::string> getLists() = 0;
70 Sets a new named parameter value for the given entry
72 virtual void setParameter(const std::string& entry, const std::string& parameterName, const std::string& value) = 0;
75 Gets a named parameter value for the given entry
77 virtual std::string getParameter(const std::string& entry, const std::string& parameterName) = 0;
80 Sets an id parameter value for the given entry.
82 virtual void setIdParameter(const std::string& entry, const std::string& value) = 0;
85 Gets an id parameter value for the given entry
87 virtual std::string getIdParameter(const std::string& entry) = 0;
90 Returns all parameter names of the given entry
92 virtual std::vector<std::string> getAllParameterNames(const std::string& entry) = 0;
95 Returns all parameter values of the given entry
97 virtual std::vector<std::string> getAllParameterValues(const std::string& entry) = 0;
100 Returns a number of parameters of the given entry
102 virtual int getNbParameters(const std::string& entry) = 0;
105 Returns a list all entries
107 virtual std::vector<std::string> getEntries() = 0;
110 Sets a global named property value
112 virtual void setProperty(const std::string& name, const std::string& value) = 0;
115 Gets a value of global named property
117 virtual std::string getProperty(const std::string& name) = 0;
120 Returns a list all properties
122 virtual std::vector<std::string> getProperties() = 0;
125 Breaks a value string in two parts which is divided by %separator.
126 If fromEnd is True the search of separator starts from the end of the string
128 virtual std::vector<std::string> parseValue(const std::string& value, const char separator, bool fromEnd = true) = 0;
132 Returns encoded entry that is a relative entry for the component
134 virtual std::string encodeEntry(const std::string& entry, const std::string& compName) = 0;
137 Returns decoded entry that is an absolute entry
139 virtual std::string decodeEntry(const std::string& entry) = 0;
142 Enables/Disables the dumping visual parameters, static implementation is supposed
144 virtual void setDumpPython(_PTR(Study) study, const std::string& theID = "") = 0;
147 Returns whether there is the dumping visual parameters, static implementation is supposed
149 virtual bool isDumpPython(_PTR(Study) study, const std::string& theID = "") = 0;
152 Returns a default name of the component where the visula parameters are stored.
153 Static implementation is supposed
155 virtual std::string getDefaultVisualComponent() = 0;