aboutsummaryrefslogtreecommitdiffstats
path: root/src/test/ramps.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ramps.c')
-rw-r--r--src/test/ramps.c141
1 files changed, 65 insertions, 76 deletions
diff --git a/src/test/ramps.c b/src/test/ramps.c
index ee3aa7d..5303195 100644
--- a/src/test/ramps.c
+++ b/src/test/ramps.c
@@ -1,115 +1,104 @@
-/**
- * libgamma -- Display server abstraction layer for gamma ramp adjustments
- * Copyright (C) 2014, 2015 Mattias Andrée (maandree@member.fsf.org)
- *
- * This library 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 3 of the License, or
- * (at your option) any later version.
- *
- * This library 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 library. If not, see <http://www.gnu.org/licenses/>.
- */
+/* See LICENSE file for copyright and license details. */
#include "ramps.h"
/**
- * Test mapping function from [0, 1] float encoding value to [0, 2⁸ − 1] integer output value.
+ * Test mapping function from [0, 1] float encoding value to [0, 2⁸ − 1] integer output value
*
- * @param encoding [0, 1] float encoding value.
- * @return [0, 2⁸ − 1] integer output value.
+ * @param encoding [0, 1] float encoding value
+ * @return [0, 2⁸ − 1] integer output value
*/
-uint8_t invert_ramps8(float encoding)
+uint8_t
+invert_ramps8(float encoding)
{
- double i_encoding = (double)(1.f - encoding);
- double f_output = ((double)UINT8_MAX) * i_encoding;
- uint8_t output = (uint8_t)f_output;
- if ((i_encoding < (double)(0.25f)) && (output > UINT8_MAX / 2))
- output = 0;
- if ((i_encoding > (double)(0.75f)) && (output < UINT8_MAX / 2))
- output = UINT8_MAX;
- return output;
+ double i_encoding = (double)(1.f - encoding);
+ double f_output = (double)UINT8_MAX * i_encoding;
+ uint8_t output = (uint8_t)f_output;
+ if (i_encoding < (double)0.25f && output > UINT8_MAX / 2)
+ output = 0;
+ if (i_encoding > (double)0.75f && output < UINT8_MAX / 2)
+ output = UINT8_MAX;
+ return output;
}
/**
- * Test mapping function from [0, 1] float encoding value to [0, 2¹⁶ − 1] integer output value.
+ * Test mapping function from [0, 1] float encoding value to [0, 2¹⁶ − 1] integer output value
*
- * @param encoding [0, 1] float encoding value.
- * @return [0, 2¹⁶ − 1] integer output value.
+ * @param encoding [0, 1] float encoding value
+ * @return [0, 2¹⁶ − 1] integer output value
*/
-uint16_t invert_ramps16(float encoding)
+uint16_t
+invert_ramps16(float encoding)
{
- double i_encoding = (double)(1.f - encoding);
- double f_output = ((double)UINT16_MAX) * i_encoding;
- uint16_t output = (uint16_t)f_output;
- if ((i_encoding < (double)(0.25f)) && (output > UINT16_MAX / 2))
- output = 0;
- if ((i_encoding > (double)(0.75f)) && (output < UINT16_MAX / 2))
- output = UINT16_MAX;
- return output;
+ double i_encoding = (double)(1.f - encoding);
+ double f_output = (double)UINT16_MAX * i_encoding;
+ uint16_t output = (uint16_t)f_output;
+ if (i_encoding < (double)0.25f && output > UINT16_MAX / 2)
+ output = 0;
+ if (i_encoding > (double)0.75f && output < UINT16_MAX / 2)
+ output = UINT16_MAX;
+ return output;
}
/**
- * Test mapping function from [0, 1] float encoding value to [0, 2³² − 1] integer output value.
+ * Test mapping function from [0, 1] float encoding value to [0, 2³² − 1] integer output value
*
- * @param encoding [0, 1] float encoding value.
- * @return [0, 2³² − 1] integer output value.
+ * @param encoding [0, 1] float encoding value
+ * @return [0, 2³² − 1] integer output value
*/
-uint32_t invert_ramps32(float encoding)
+uint32_t
+invert_ramps32(float encoding)
{
- double i_encoding = (double)(1.f - encoding);
- double f_output = ((double)UINT32_MAX) * i_encoding;
- uint32_t output = (uint32_t)f_output;
- if ((i_encoding < (double)(0.25f)) && (output > UINT32_MAX / 2))
- output = 0;
- if ((i_encoding > (double)(0.75f)) && (output < UINT32_MAX / 2))
- output = UINT32_MAX;
- return output;
+ double i_encoding = (double)(1.f - encoding);
+ double f_output = (double)UINT32_MAX * i_encoding;
+ uint32_t output = (uint32_t)f_output;
+ if (i_encoding < (double)0.25f && output > UINT32_MAX / 2)
+ output = 0;
+ if (i_encoding > (double)0.75f && output < UINT32_MAX / 2)
+ output = UINT32_MAX;
+ return output;
}
/**
- * Test mapping function from [0, 1] float encoding value to [0, 2⁶⁴ − 1] integer output value.
+ * Test mapping function from [0, 1] float encoding value to [0, 2⁶⁴ − 1] integer output value
*
- * @param encoding [0, 1] float encoding value.
- * @return [0, 2⁶⁴ − 1] integer output value.
+ * @param encoding [0, 1] float encoding value
+ * @return [0, 2⁶⁴ − 1] integer output value
*/
-uint64_t invert_ramps64(float encoding)
+uint64_t
+invert_ramps64(float encoding)
{
- double i_encoding = (double)(1.f - encoding);
- double f_output = ((double)UINT64_MAX) * i_encoding;
- uint64_t output = (uint64_t)f_output;
- if ((i_encoding < (double)(0.25f)) && (output > UINT64_MAX / 2))
- output = 0;
- if ((i_encoding > (double)(0.75f)) && (output < UINT64_MAX / 2))
- output = UINT64_MAX;
- return output;
+ double i_encoding = (double)(1.f - encoding);
+ double f_output = (double)UINT64_MAX * i_encoding;
+ uint64_t output = (uint64_t)f_output;
+ if (i_encoding < (double)0.25f && output > UINT64_MAX / 2)
+ output = 0;
+ if (i_encoding > (double)0.75f && output < UINT64_MAX / 2)
+ output = UINT64_MAX;
+ return output;
}
/**
- * Test mapping function from [0, 1] float encoding value to [0, 1] float output value.
+ * Test mapping function from [0, 1] float encoding value to [0, 1] float output value
*
- * @param encoding [0, 1] float encoding value.
- * @return [0, 1] float output value.
+ * @param encoding [0, 1] float encoding value
+ * @return [0, 1] float output value
*/
-float invert_rampsf(float encoding)
+float
+invert_rampsf(float encoding)
{
- return 1.f - encoding;
+ return 1.f - encoding;
}
/**
* Test mapping function from [0, 1] double precision float encoding
- * value to [0, 1] double precision float output value.
+ * value to [0, 1] double precision float output value
*
- * @param encoding [0, 1] float encoding value.
- * @return [0, 1] float output value.
+ * @param encoding [0, 1] float encoding value
+ * @return [0, 1] float output value
*/
-double invert_rampsd(double encoding)
+double
+invert_rampsd(double encoding)
{
- return ((double)1.f) - encoding;
+ return (double)1.f - encoding;
}
-