summaryrefslogtreecommitdiffstats
path: root/Project/Limiter.h
diff options
context:
space:
mode:
authorThales Lima Oliveira <thaleslima.ufu@gmail.com>2017-10-06 17:07:39 -0300
committerGitHub <noreply@github.com>2017-10-06 17:07:39 -0300
commita32372968abb2f4b3bf0472f59c18f5028d20206 (patch)
tree054de50365749426623bed352a10e84299e84cad /Project/Limiter.h
parentfa2776e9a939a793a9e46a0cc5880dda868e7028 (diff)
parent89befdb9b259d02249876e39ec6fd28860272439 (diff)
downloadPSP.git-a32372968abb2f4b3bf0472f59c18f5028d20206.tar.gz
PSP.git-a32372968abb2f4b3bf0472f59c18f5028d20206.tar.xz
PSP.git-a32372968abb2f4b3bf0472f59c18f5028d20206.zip
Merge pull request #39 from Thales1330/wip/sync-machine-saturation
Wip sync machine saturation
Diffstat (limited to 'Project/Limiter.h')
-rw-r--r--Project/Limiter.h38
1 files changed, 30 insertions, 8 deletions
diff --git a/Project/Limiter.h b/Project/Limiter.h
index 82617a7..396ae16 100644
--- a/Project/Limiter.h
+++ b/Project/Limiter.h
@@ -1,3 +1,20 @@
+/*
+ * Copyright (C) 2017 Thales Lima Oliveira <thales@ufu.br>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
+ */
+
#ifndef LIMITER_H
#define LIMITER_H
@@ -5,12 +22,19 @@
class LimiterForm;
+/**
+ * @class Limiter
+ * @author Thales Lima Oliveira <thales@ufu.br>
+ * @date 05/10/2017
+ * @brief Limits the input value by superior and inferior values.
+ * @file Limiter.h
+ */
class Limiter : public ControlElement
{
-public:
+ public:
Limiter(int id);
~Limiter();
-
+
virtual void Draw(wxPoint2DDouble translation, double scale) const;
virtual bool Contains(wxPoint2DDouble position) const { return m_rect.Contains(position); }
virtual bool Intersects(wxRect2DDouble rect) const { return m_rect.Intersects(rect); }
@@ -19,18 +43,16 @@ public:
virtual bool Solve(double input, double timeStep);
virtual void UpdatePoints();
-
+
double GetUpLimit() const { return m_upLimit; }
double GetLowLimit() const { return m_lowLimit; }
-
void SetUpLimit(double upLimit) { m_upLimit = upLimit; }
void SetLowLimit(double lowLimit) { m_lowLimit = lowLimit; }
-
virtual Element* GetCopy();
-
-protected:
+
+ protected:
double m_upLimit = 5.0;
double m_lowLimit = -5.0;
};
-#endif // LIMITER_H
+#endif // LIMITER_H