1 // Copyright (C) 2007-2008 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.
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
22 #ifndef SALOMEDS_IParameters_H
23 #define SALOMEDS_IParameters_H
29 #include "SALOMEDSClient.hxx"
30 #include "SALOMEDSClient_IParameters.hxx"
33 Class which an interface to store the parameters of the objects
35 class SALOMEDS_IParameters: public SALOMEDSClient_IParameters
38 SALOMEDS_IParameters(const _PTR(AttributeParameter)& ap);
40 virtual ~SALOMEDS_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);
50 Returns a number elements in the list
52 virtual int nbValues(const std::string& listName);
55 Returns a list of values in the list
57 virtual std::vector<std::string> getValues(const std::string& listName);
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);
65 Returns a list all entries lists
67 virtual std::vector<std::string> getLists();
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);
75 Gets a named parameter value for the given entry
77 virtual std::string getParameter(const std::string& entry, const std::string& parameterName);
80 Returns all parameter names of the given entry
82 virtual std::vector<std::string> getAllParameterNames(const std::string& entry);
85 Returns all parameter values of the given entry
87 virtual std::vector<std::string> getAllParameterValues(const std::string& entry);
90 Returns a number of parameters of the given entry
92 virtual int getNbParameters(const std::string& entry);
95 Returns a list all entries
97 virtual std::vector<std::string> getEntries();
100 Sets a global named property value
102 virtual void setProperty(const std::string& name, const std::string& value);
105 Gets a value of global named property
107 virtual std::string getProperty(const std::string& name);
110 Returns a list all properties
112 virtual std::vector<std::string> getProperties();
115 Breaks a value string in two parts which is divided by %separator.
116 If fromEnd is True the search of separator starts from the end of the string
118 virtual std::vector<std::string> parseValue(const std::string& value, const char separator, bool fromEnd = true);
122 Returns encoded entry that is a relative entry for the component
124 virtual std::string encodeEntry(const std::string& entry, const std::string& compName);
127 Returns decoded entry that is an absolute entry
129 virtual std::string decodeEntry(const std::string& entry);
132 Enables/Disables the dumping visual parameters
134 virtual void setDumpPython(_PTR(Study) study, const std::string& theID = "");
137 Returns whether there is the dumping visual parameters
139 virtual bool isDumpPython(_PTR(Study) study, const std::string& theID = "");
142 Returns a default name of the component where the visula parameters are stored.
144 virtual std::string getDefaultVisualComponent();
147 _PTR(AttributeParameter) _ap;
149 std::map<std::string, std::string> _compNames;