Squashed 'third_party/osqp/' content from commit 33454b3e23
Change-Id: I056df0582ca06664e86554c341a94c47ab932001
git-subtree-dir: third_party/osqp
git-subtree-split: 33454b3e236f1f44193bfbbb6b8c8e71f8f04e9a
Signed-off-by: Austin Schuh <austin.linux@gmail.com>
diff --git a/include/scaling.h b/include/scaling.h
new file mode 100644
index 0000000..0df9c04
--- /dev/null
+++ b/include/scaling.h
@@ -0,0 +1,44 @@
+#ifndef SCALING_H
+# define SCALING_H
+
+# ifdef __cplusplus
+extern "C" {
+# endif // ifdef __cplusplus
+
+// Functions to scale problem data
+# include "types.h"
+# include "lin_alg.h"
+# include "constants.h"
+
+// Enable data scaling if EMBEDDED is disabled or if EMBEDDED == 2
+# if EMBEDDED != 1
+
+/**
+ * Scale problem matrices
+ * @param work Workspace
+ * @return exitflag
+ */
+c_int scale_data(OSQPWorkspace *work);
+# endif // if EMBEDDED != 1
+
+
+/**
+ * Unscale problem matrices
+ * @param work Workspace
+ * @return exitflag
+ */
+c_int unscale_data(OSQPWorkspace *work);
+
+
+/**
+ * Unscale solution
+ * @param work Workspace
+ * @return exitflag
+ */
+c_int unscale_solution(OSQPWorkspace *work);
+
+# ifdef __cplusplus
+}
+# endif // ifdef __cplusplus
+
+#endif // ifndef SCALING_H