Kactus2
Kactus2 reference guide
Loading...
Searching...
No Matches
ComponentParameterFinder.h
Go to the documentation of this file.
1//-----------------------------------------------------------------------------
2// File: ComponentParameterFinder.h
3//-----------------------------------------------------------------------------
4// Project: Kactus2
5// Author: Mikko Teuho
6// Date: 15.01.2015
7//
8// Description:
9// The implementation for finding parameters with the correct ID.
10//-----------------------------------------------------------------------------
11
12#ifndef COMPONENTPARAMETERFINDER_H
13#define COMPONENTPARAMETERFINDER_H
14
15#include "ParameterFinder.h"
16
17#include "KactusAPI/KactusAPIGlobal.h"
18
19class AbstractParameterModel;
20class Component;
21
22//-----------------------------------------------------------------------------
24//-----------------------------------------------------------------------------
25class KACTUS2_API ComponentParameterFinder : public ParameterFinder
26{
27
28public:
29
35 explicit ComponentParameterFinder(QSharedPointer<Component const> component) noexcept;
36
39
42
46 ~ComponentParameterFinder() override = default;
47
53 QSharedPointer<Parameter> getParameterWithID(QStringView parameterId) const override;
54
62 bool hasId(QStringView id) const override;
63
71 QString nameForId(QStringView id) const override;
72
80 QString valueForId(QStringView id) const override;
81
87 virtual QStringList getAllParameterIds() const override;
88
94 virtual int getNumberOfParameters() const override;
95
101 virtual void registerParameterModel(QAbstractItemModel const* model) override;
102
108 virtual void setComponent(QSharedPointer<Component const> component);
109
113 QList<QSharedPointer<Parameter> > allAddressSpaceParameters() const;
114
120 QList<QSharedPointer<Parameter> > allBusInterfaceParameters() const;
121
125 QList<QSharedPointer<Parameter> > allCpuParameters() const;
126
130 QList<QSharedPointer<Parameter> > allGeneratorParameters() const;
131
137 QList<QSharedPointer<Parameter> > allRegisterParameters() const;
138
144 QList<QSharedPointer<Parameter> > allIndirectInterfacesParameters() const;
145
146protected:
147
151 virtual QSharedPointer<Parameter> searchParameter(QStringView parameterId) const;
152
158 QSharedPointer<const Component> getComponent() const noexcept;
159
160private:
161
165 int busInterfaceParameterCount() const;
166
170 int registerParameterCount() const;
171
172 //-----------------------------------------------------------------------------
173 // Data.
174 //-----------------------------------------------------------------------------
175
177 QSharedPointer<Component const> component_;
178};
179
180#endif // COMPONENTPARAMETERFINDER_H
virtual QStringList getAllParameterIds() const override
bool hasId(QStringView id) const override
virtual void setComponent(QSharedPointer< Component const > component)
virtual int getNumberOfParameters() const override
~ComponentParameterFinder() override=default
QString valueForId(QStringView id) const override
QString nameForId(QStringView id) const override
QList< QSharedPointer< Parameter > > allIndirectInterfacesParameters() const
QList< QSharedPointer< Parameter > > allCpuParameters() const
virtual void registerParameterModel(QAbstractItemModel const *model) override
ComponentParameterFinder(QSharedPointer< Component const > component) noexcept
ComponentParameterFinder(const ComponentParameterFinder &other)=delete
No copying.
ComponentParameterFinder & operator=(const ComponentParameterFinder &other)=delete
No assignment.
QList< QSharedPointer< Parameter > > allRegisterParameters() const
QList< QSharedPointer< Parameter > > allAddressSpaceParameters() const
QSharedPointer< const Component > getComponent() const noexcept
virtual QSharedPointer< Parameter > searchParameter(QStringView parameterId) const
QList< QSharedPointer< Parameter > > allGeneratorParameters() const
QSharedPointer< Parameter > getParameterWithID(QStringView parameterId) const override
QList< QSharedPointer< Parameter > > allBusInterfaceParameters() const
Parameter finder.