12#ifndef MODULEPARAMETERINTERFACE_H
13#define MODULEPARAMETERINTERFACE_H
15#include <KactusAPI/KactusAPIGlobal.h>
20class ComponentInstantiation;
39 QSharedPointer<ExpressionParser> expressionParser,
40 QSharedPointer<ExpressionFormatter> expressionFormatter,
41 QSharedPointer<ComponentInstantiationParameterFinder> parameterFinder);
62 virtual int getItemIndex(std::string
const& itemName)
const override;
94 std::string
getDataType(std::string
const& parameterName)
const;
104 bool setDataType(std::string
const& parameterName, std::string
const& newDataType);
123 bool setUsageType(std::string
const& parameterName, std::string
const& newUsageType);
156 virtual QSharedPointer<Parameter> getParameter(std::string
const& parameterName)
const override final;
165 QSharedPointer<NameGroup> getItem(std::string
const& parameterName)
const override;
174 QSharedPointer<ModuleParameter> getModuleParameter(std::string
const& parameterName)
const;
181 QSharedPointer<QList<QSharedPointer<ModuleParameter> > > moduleParameters_;
184 QSharedPointer<ComponentInstantiationParameterFinder> parameterFinder_;
AbstractParameterInterface(QSharedPointer< ParameterValidator > validator, QSharedPointer< ExpressionParser > expressionParser, QSharedPointer< ExpressionFormatter > expressionFormatter)
The implementation for finding parameters with the correct ID.
bool setUsageType(std::string const ¶meterName, std::string const &newUsageType)
void setModuleParameters(QSharedPointer< ComponentInstantiation > instantiation)
virtual std::vector< std::string > getItemNames() const override
bool removeModuleParameter(std::string const ¶meterName)
std::string getIndexedItemName(int itemIndex) const override
ModuleParameterInterface(const ModuleParameterInterface &other)=delete
No copying. No assignment.
virtual ~ModuleParameterInterface()=default
std::string getDataType(std::string const ¶meterName) const
bool setDataType(std::string const ¶meterName, std::string const &newDataType)
virtual int getItemIndex(std::string const &itemName) const override
std::string getUsageType(std::string const ¶meterName) const
ModuleParameterInterface(QSharedPointer< ParameterValidator > validator, QSharedPointer< ExpressionParser > expressionParser, QSharedPointer< ExpressionFormatter > expressionFormatter, QSharedPointer< ComponentInstantiationParameterFinder > parameterFinder)
void addModuleParameter(int const &row, std::string const &newParameterName=std::string(""))
virtual int itemCount() const override
ModuleParameterInterface & operator=(const ModuleParameterInterface &other)=delete