Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/functions.h')
-rw-r--r--src/common/functions.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/common/functions.h b/src/common/functions.h
new file mode 100644
index 0000000..02f25da
--- /dev/null
+++ b/src/common/functions.h
@@ -0,0 +1,42 @@
+/* functions.h
+ This file is part of the Osirion project
+*/
+
+#ifndef __INCLUDED_FUNCTIONS_H__
+#define __INCLUDED_FUNCTIONS_H__
+
+#include <cstdlib>
+#include <cmath>
+
+/// return the smallest of two float values
+float min(float a, float b);
+
+/// return the smallest of two integers
+int min(int a, int b);
+
+/// return the largest of two float values
+float max(float a, float b);
+
+/// return the largest of two integers
+int max(int a, int b);
+
+/// returns a random float
+/*! The value returned will be in the interval [0-max]
+ * @param max the maximum value returned
+**/
+float randomf(const float max = 1);
+
+/// returns a random integer
+/*! The value returned will be in the interval [0-(max-1)]
+ * @param max the maximum value returned
+**/
+unsigned int randomi(const unsigned int max);
+
+/// return the sign of a float value
+float sgnf(float value);
+
+/// return an angle in the ]-180,180] range
+float degreesf(float angle);
+
+#endif // __INCLUDED_FUNCTIONS_H__
+