7#include <QtCore/QObject>
8#include <QtCore/QString>
28 : QObject(parent), _fact(
fact), _label(label), _function(
function) {}
33 const QString& label()
const {
return _label; }
69 const QString& label()
const {
return _parameter.
label; }
97 : QObject(parent), _fact(fact), _config(config) {}
102 Fact* fact() {
return _fact; }
108 Fact* _fact{
nullptr};
109 ChannelConfig& _config;
122 const QString& label()
const {
return _label; }
130 const QString _label;
131 const int _paramIndex{};
141 : QObject(parent), _label(label) {}
149 const QString& label()
const {
return _label; }
163 const QList<ActuatorActions::Config>&
actions()
const {
return _actions; }
171 const QString _label;
178 QList<ActuatorActions::Config> _actions;
194 const QString& label()
const {
return _label; }
211 const QStringList&
notes()
const {
return _notes; }
221 const QString _label;
222 const Condition _groupVisibilityCondition;
void configInstancesChanged()
QString label READ label CONSTANT(QmlObjectListModel *configInstances READ configInstances NOTIFY configInstancesChanged) const QString &label() const
QmlObjectListModel * configInstances()
ActuatorOutputSubgroup(QObject *parent, const QString &label)
void addConfigParam(ConfigParameter *param)
void addChannel(ActuatorOutputChannel *channel)
QmlObjectListModel * configParams()
const QList< ActuatorActions::Config > & actions() const
ConfigParameter * primaryParam() const
QmlObjectListModel * channelConfigs()
QString label READ label CONSTANT(QmlObjectListModel *channels READ channels NOTIFY channelsChanged) 1(QmlObjectListModel *channelConfigs READ channelConfigs NOTIFY channelConfigsChanged) 1(ConfigParameter *primaryParam READ primaryParam CONSTANT) 1(QmlObjectListModel *configParams READ configParams CONSTANT) const QString &label() const
void addChannelConfig(ChannelConfig *channelConfig)
void addAction(const ActuatorActions::Config &action)
void channelConfigsChanged()
QmlObjectListModel * channels()
QString label READ label CONSTANT(bool groupsVisible READ groupsVisible NOTIFY groupsVisibleChanged) 1(QmlObjectListModel *subgroups READ subgroups NOTIFY subgroupsChanged) 1(ConfigParameter *enableParam READ enableParam CONSTANT) 1(QmlObjectListModel *configParams READ configParams CONSTANT) 1(QStringList notes READ notes NOTIFY notesChanged) const QString &label() const
QmlObjectListModel * configParams()
const QStringList & notes() const
QmlObjectListModel * subgroups()
ConfigParameter * enableParam() const
bool groupsVisible() const
void groupsVisibleChanged()
void forEachOutputFunction(std::function< void(ActuatorOutputSubgroup *, ChannelConfigInstance *, Fact *)> callback) const
void getAllChannelFunctions(QList< Fact * > &allFunctions) const
void addConfigParam(ConfigParameter *param)
void addNote(const QString ¬e)
bool hasExistingOutputFunctionParams() const
void addSubgroup(ActuatorOutputSubgroup *subgroup)
ChannelConfig * channelConfig() const
ChannelConfigInstance(QObject *parent, Fact *fact, ChannelConfig &config)
ChannelConfig *config READ channelConfig CONSTANT(Fact *fact READ fact CONSTANT) Fact *fact()
Function
Describes the meaning of the parameter.
const QString & parameter() const
ChannelConfig(QObject *parent, const Parameter ¶m, Function function, const Condition &visibilityCondition)
const Condition & visibilityCondition() const
Parameter::DisplayOption displayOption() const
QString label READ label CONSTANT(bool advanced READ advanced CONSTANT) 1(bool visible READ visible NOTIFY visibleChanged) const QString &label() const
Function function() const
Function function() const
QString label READ label CONSTANT(Fact *fact READ fact CONSTANT) const QString &label() const
@ Primary
Primary parameter to configure the group of outputs.
@ Enable
Parameter to enable/disable the outputs.
ConfigParameter(QObject *parent, Fact *fact, const QString &label, Function function)
A Fact is used to hold a single value within the system.
DisplayOption displayOption
int indexOffset
extra offset to the ${i} index, or bitset shift offset
bool advanced
whether this should only be shown as advanced option
QString name
vehicle parameter name, this may have an index in the form '${i}'