aboutsummaryrefslogtreecommitdiff
path: root/thirdparty/etc2comp/EtcMath.h
diff options
context:
space:
mode:
authorFerenc Arn2017-04-26 10:49:08 -0500
committerFerenc Arn2017-05-31 18:59:00 -0500
commit6a9c990da72a737fa95d9e97d53f835706aea7c3 (patch)
tree0f5c1d36279bef5d0d5c84fc1d3fb24256b65ba8 /thirdparty/etc2comp/EtcMath.h
parentbd26fa7bf2bf02f9ef17ad4ef3a93ffed3ffcf56 (diff)
downloadgodot-6a9c990da72a737fa95d9e97d53f835706aea7c3.tar.gz
godot-6a9c990da72a737fa95d9e97d53f835706aea7c3.tar.zst
godot-6a9c990da72a737fa95d9e97d53f835706aea7c3.zip
Add ETC1/ETC2 compression support though etc2comp.
Remove rg-etc1 code. Also updated travis to use ubuntu 14.04. Fixes #8457.
Diffstat (limited to 'thirdparty/etc2comp/EtcMath.h')
-rw-r--r--thirdparty/etc2comp/EtcMath.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/thirdparty/etc2comp/EtcMath.h b/thirdparty/etc2comp/EtcMath.h
new file mode 100644
index 000000000..c58c9a91b
--- /dev/null
+++ b/thirdparty/etc2comp/EtcMath.h
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2015 The Etc2Comp Authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#pragma once
+
+#include <math.h>
+
+namespace Etc
+{
+
+ // ----------------------------------------------------------------------------------------------------
+ // return true if vertical line
+ bool Regression(float a_afX[], float a_afY[], unsigned int a_Points,
+ float *a_fSlope, float *a_fOffset);
+
+ inline float ConvertMSEToPSNR(float a_fMSE)
+ {
+ if (a_fMSE == 0.0f)
+ {
+ return INFINITY;
+ }
+
+ return 10.0f * log10f(1.0f / a_fMSE);
+ }
+
+
+}