ProcessModel::ProcessModel( const ProcessModel& source, const Id<Process::ProcessModel>& id, QObject* parent): Curve::CurveProcessModel{source, id, Metadata<ObjectKey_k, ProcessModel>::get(), parent}, m_address(source.address()), m_min{source.min()}, m_max{source.max()}, m_startState{new ProcessState{*this, 0., this}}, m_endState{new ProcessState{*this, 1., this}} { setCurve(source.curve().clone(source.curve().id(), this)); pluginModelList = new iscore::ElementPluginModelList(*source.pluginModelList, this); connect(m_curve, &Curve::Model::changed, this, &ProcessModel::curveChanged); metadata.setName(QString("Automation.%1").arg(*this->id().val())); }
ProcessModel::ProcessModel( const ProcessModel& source, const Id<Process::ProcessModel>& id, QObject* parent): CurveProcessModel{source, id, Metadata<ObjectKey_k, ProcessModel>::get(), parent}, m_sourceAddress(source.sourceAddress()), m_targetAddress(source.targetAddress()), m_sourceMin{source.sourceMin()}, m_sourceMax{source.sourceMax()}, m_targetMin{source.targetMin()}, m_targetMax{source.targetMax()} { setCurve(source.curve().clone(source.curve().id(), this)); pluginModelList = new iscore::ElementPluginModelList(*source.pluginModelList, this); connect(m_curve, &Curve::Model::changed, this, &ProcessModel::curveChanged); metadata.setName(QString("Mapping.%1").arg(*this->id().val())); }