12#ifndef PORTSINTERFACE_H
13#define PORTSINTERFACE_H
15#include <KactusAPI/KactusAPIGlobal.h>
20#include <IPXACTmodels/common/DirectionTypes.h>
21#include <IPXACTmodels/Component/Port.h>
41 QSharedPointer<ExpressionParser> expressionParser,
42 QSharedPointer<ExpressionFormatter> expressionFormatter);
103 bool setName(std::
string const& currentName, std::
string const& newName) final;
156 std::vector<std::pair<std::
string, std::vector<std::
string> > >
getTypeNameViews(std::
string const& portName) const;
165 std::vector<std::pair<std::
string, std::vector<std::
string> > >
getTypeDefinitions(std::
string const& portName) const;
175 bool setTypeDefViewRefs(std::
string const& portName, std::vector<std::pair<std::
string, std::vector<std::
string> > > const& typeNameViews);
185 bool setTypeDefDefinitions(std::
string const& portName, std::vector<std::pair<std::
string, std::vector<std::
string> > > const& typeDefinitions);
204 bool setTypeName(std::
string const& portName, std::
string const& newType) const;
242 bool setArrayLeft(std::
string const& portName, std::
string const& newArrayLeft) const;
280 bool setArrayRight(std::
string const& portName, std::
string const& newArrayRight) const;
289 std::
string getTags(std::
string const& portName) const;
299 bool setTags(std::
string const& portName, std::
string const& tagList) const;
308 bool isAdHoc(std::
string const& portName) const;
318 bool setAdHoc(std::
string const& portName,
bool newAdHocVisibility) const;
346 bool setDirection(std::
string const& portName, std::
string const& newDirection) const;
384 bool setLeftBound(std::
string const& portName, std::
string const& newLeftBound) const;
422 bool setRightBound(std::
string const& portName, std::
string const& newRightBound) const;
440 std::
string getWidth(std::
string const& portName) const;
450 bool setWidth(std::
string const& portName, std::
string const& newWidth) const;
460 std::
string getDefaultValue(std::
string const& portName,
unsigned int baseNumber = 0) const;
488 bool setDefaultValue(std::
string const& portName, std::
string const& newDefaultValue) const;
498 std::
string getBusWidthValue(std::
string const& portName,
unsigned int baseNumber = 0) const;
526 bool setBusWidth(std::
string const& portName, std::
string const& newBusWidth) const;
545 bool setInitiative(std::
string const& portName, std::
string const& newInitiative) const;
554 std::
string getKind(std::
string const& portName) const;
564 bool setKind(std::
string const& portName, std::
string const& newKind) const;
583 bool setProtocolType(std::
string const& portName, std::
string const& newProtocolType) const;
621 bool setMaxConnections(std::
string const& portName, std::
string const& newMaxConnections) const;
659 bool setMinConnections(std::
string const& portName, std::
string const& newMinConnections) const;
666 void addWirePort(std::
string const& newPortName = std::
string()) final;
842 QSharedPointer<Port>
getPort(std::
string const& portName) const;
844 QSharedPointer<NameGroup>
getItem(std::
string const& portName) const final;
857 void setTypeNameAndDefinition(QSharedPointer<Port> port) const;
864 Port::List ports_ =
nullptr;
867 QSharedPointer<PortValidator> portValidator_;
ParameterizableInterface(QSharedPointer< ExpressionParser > expressionParser, QSharedPointer< ExpressionFormatter > expressionFormatter)
int getItemIndex(std::string const &itemName) const final
bool isAdHoc(std::string const &portName) const
std::vector< std::pair< std::string, std::vector< std::string > > > getTypeDefinitions(std::string const &portName) const
bool setTypeDefDefinitions(std::string const &portName, std::vector< std::pair< std::string, std::vector< std::string > > > const &typeDefinitions)
QSharedPointer< Port > getPort(std::string const &portName) const
bool setInitiative(std::string const &portName, std::string const &newInitiative) const
void setPorts(Port::List ports)
std::string getIndexedItemName(int itemIndex) const final
bool setName(std::string const ¤tName, std::string const &newName) final
bool setAdHoc(std::string const &portName, bool newAdHocVisibility) const
std::string getInitiative(std::string const &portName) const
int itemCount() const final
bool portIsWire(std::string const &portName) const final
std::string getArrayRightFormattedExpression(std::string const &portName) const
bool portHasValidTypes(std::string const &portName) const
bool portIsTransactional(std::string const &portName) const final
bool setProtocolType(std::string const &portName, std::string const &newProtocolType) const
std::vector< std::pair< std::string, std::vector< std::string > > > getTypeNameViews(std::string const &portName) const
bool portHasValidLeftBound(std::string const &portName) const
bool setLeftBound(std::string const &portName, std::string const &newLeftBound) const
bool portHasValidKind(std::string const &portName) const
std::string getArrayRightExpression(std::string const &portName) const
PortsInterface(QSharedPointer< PortValidator > validator, QSharedPointer< ExpressionParser > expressionParser, QSharedPointer< ExpressionFormatter > expressionFormatter)
bool setBusWidth(std::string const &portName, std::string const &newBusWidth) const
bool portHasValidDefaultValue(std::string const &portName) const
bool hasExpressionInLeftOrRightBound(std::string const &portName) const
std::string getBusWidthFormattedExpression(std::string const &portName) const
bool clearTypeDefinitions(std::string const &portName)
QSharedPointer< NameGroup > getItem(std::string const &portName) const final
bool portExists(std::string const &portName) const
std::string getDefaultValue(std::string const &portName, unsigned int baseNumber=0) const
bool setMaxConnections(std::string const &portName, std::string const &newMaxConnections) const
bool portHasValidBusWidth(std::string const &portName) const
std::string getMinConnectionsExpression(std::string const &portName) const
std::string getArrayRightValue(std::string const &portName, unsigned int baseNumber=0) const
bool portHasValidInitiative(std::string const &portName) const
bool setKind(std::string const &portName, std::string const &newKind) const
void addWirePort(std::string const &newPortName=std::string()) final
bool portRightArrayValueIsValid(std::string const &portName) const
std::string getTags(std::string const &portName) const
std::string getMaxConnectionsFormattedExpression(std::string const &portName) const
std::string getWidth(std::string const &portName) const
bool portHasValidMinConnections(std::string const &portName) const
std::string getBusWidthExpression(std::string const &portName) const
std::string getRightBoundFormattedExpression(std::string const &portName) const
bool setTypeDefViewRefs(std::string const &portName, std::vector< std::pair< std::string, std::vector< std::string > > > const &typeNameViews)
virtual ~PortsInterface()=default
std::string getMaxConnectionsValue(std::string const &portName, unsigned int baseNumber=0) const
std::string getKind(std::string const &portName) const
std::string getArrayLeftValue(std::string const &portName, unsigned int baseNumber=0) const
std::string getRightBoundValue(std::string const &portName, unsigned int baseNumber=0) const
bool setDirection(std::string const &portName, std::string const &newDirection) const
bool setDefaultValue(std::string const &portName, std::string const &newDefaultValue) const
std::string getArrayLeftExpression(std::string const &portName) const
bool setArrayRight(std::string const &portName, std::string const &newArrayRight) const
int getAllReferencesToIdInItem(const std::string &itemName, std::string const &valueID) const final
std::string getRightBoundExpression(std::string const &portName) const
std::string getArrayLeftFormattedExpression(std::string const &portName) const
bool setTags(std::string const &portName, std::string const &tagList) const
std::string getDirection(std::string const &portName) const
std::string getDefaultValueExpression(std::string const &portName) const
std::string getLeftBoundExpression(std::string const &portName) const
bool setRightBound(std::string const &portName, std::string const &newRightBound) const
bool itemHasValidName(std::string const &itemName) const final
bool setMinConnections(std::string const &portName, std::string const &newMinConnections) const
bool portHasValidProtocol(std::string const &portName) const
bool setWidth(std::string const &portName, std::string const &newWidth) const
bool portLeftArrayValueIsValid(std::string const &portName) const
void addTransactionalPort(std::string const &newPortName=std::string()) final
std::string getMaxConnectionsExpression(std::string const &portName) const
std::vector< std::string > getItemNames() const final
std::string getLeftBoundValue(std::string const &portName, unsigned int baseNumber=0) const
bool portHasValidMaxConnections(std::string const &portName) const
std::string getLeftBoundFormattedExpression(std::string const &portName) const
bool portHasValidRightBound(std::string const &portName) const
bool removePort(std::string const &portName) const
std::string getMinConnectionsFormattedExpression(std::string const &portName) const
bool setTypeName(std::string const &portName, std::string const &newType) const
std::string getDefaultValueFormattedExpression(std::string const &portName) const
std::string getIconPathForPort(std::string const &portName) const
DirectionTypes::Direction getDirectionType(std::string const &portName) const
std::string getBusWidthValue(std::string const &portName, unsigned int baseNumber=0) const
std::string getTypeName(std::string const &portName) const
std::string getMinConnectionsValue(std::string const &portName, unsigned int baseNumber=0) const
bool validateItems() const final
std::string getProtocolType(std::string const &portName) const
bool setArrayLeft(std::string const &portName, std::string const &newArrayLeft) const