Loading...
Searching...
No Matches
AisSteppedVoltageElement.h
1#pragma once
2
3#pragma once
4
5#include "AisAbstractElement.h"
6#include "AisSquidstatGlobal.h"
7#include <QString>
8
9class SteppedVoltage;
10
24class SQUIDSTATLIBRARY_EXPORT AisSteppedVoltageElement final : public AisAbstractElement {
25public:
37 explicit AisSteppedVoltageElement(double startVoltage,
38 double endVoltage,
39 double voltageStep,
40 double voltageStepDuration,
41 double samplingInterval);
42
48
55
60
65 QString getName() const override;
66
71 QStringList getCategory() const override;
72
77 double getStartVoltage() const;
78
83 void setStartVoltage(double vStart);
84
89 double getEndVoltage() const;
90
95 void setEndVoltage(double vEnd);
96
101 double getStepSize() const;
102
108 void setStepSize(double vStep);
109
114 double getStepDuration() const;
115
120 void setStepDuration(double duration);
121
126 double getSamplingInterval() const;
127
132 void setSamplingInterval(double samplingInterval);
133
138 double getApproxMaxCurrent() const;
139
144 void setApproxMaxCurrent(double approxMaxCurrent);
145
151
156 void setStartVoltageVsOCP(bool startVsOCP);
157
162 bool isEndVoltageVsOCP() const;
163
168 void setEndVoltageVsOCP(bool endVsOCP);
169
174 bool isAutoRange() const;
175
180
181private:
182 std::shared_ptr<SteppedVoltage> m_dataDerived;
183};
184
A class representing an experiment to apply the stepped volatge.
Definition AisSteppedVoltageElement.h:24
void setStartVoltage(double vStart)
Set the starting voltage for the experiment.
bool isAutoRange() const
Check if current autoranging is enabled.
~AisSteppedVoltageElement() override
Destructor for the AisSteppedVoltageElement object.
void setStepSize(double vStep)
Set the voltage step for each iteration.
void setCurrentAutorange()
Enable current autoranging for the experiment.
AisSteppedVoltageElement(const AisSteppedVoltageElement &other)
Copy constructor for the AisSteppedVoltageElement object.
void setApproxMaxCurrent(double approxMaxCurrent)
Set the approximate maximum current.
double getStepDuration() const
Get the time step for each iteration.
double getStepSize() const
Get the voltage step for each iteration.
double getEndVoltage() const
Get the ending voltage for the experiment.
double getStartVoltage() const
Get the starting voltage for the experiment.
void setEndVoltage(double vEnd)
Set the ending voltage for the experiment.
AisSteppedVoltageElement & operator=(const AisSteppedVoltageElement &other)
Overloaded assignment operator for the AisSteppedVoltageElement object.
void setEndVoltageVsOCP(bool endVsOCP)
Set whether the experiment ends with the open circuit potential.
QString getName() const override
Get the name of the element.
void setSamplingInterval(double samplingInterval)
Set the data sampling interval.
double getApproxMaxCurrent() const
Get the approximate maximum current.
bool isEndVoltageVsOCP() const
Check if the experiment ends with the open circuit potential.
bool isStartVoltageVsOCP() const
Check if the experiment starts with the open circuit potential.
void setStartVoltageVsOCP(bool startVsOCP)
Set whether the experiment starts with the open circuit potential.
QStringList getCategory() const override
Get a list of applicable categories of the element.
AisSteppedVoltageElement(double startVoltage, double endVoltage, double voltageStep, double voltageStepDuration, double samplingInterval)
Constructor for the AisSteppedVoltageElement element.
void setStepDuration(double duration)
Set the duration of each step.
double getSamplingInterval() const
Get the data sampling interval.