Remove more dead code from fx_basic.h
[pdfium.git] / core / include / fxcrt / fx_ext.h
index 7fdbfcd..c24955f 100644 (file)
-// Copyright 2014 PDFium Authors. All rights reserved.\r
-// Use of this source code is governed by a BSD-style license that can be\r
-// found in the LICENSE file.\r
\r
-// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com\r
-\r
-#ifndef _FXCRT_EXTENSION_\r
-#define _FXCRT_EXTENSION_\r
-#ifndef _FX_BASIC_H_\r
-#include "fx_basic.h"\r
-#endif\r
-#ifndef _FXCRT_COORDINATES_\r
-#include "fx_coordinates.h"\r
-#endif\r
-#ifndef _FX_XML_H_\r
-#include "fx_xml.h"\r
-#endif\r
-#ifndef _FX_UNICODE_\r
-#include "fx_ucd.h"\r
-#endif\r
-#ifndef _FX_ARABIC_\r
-#include "fx_arb.h"\r
-#endif\r
-#ifdef __cplusplus\r
-extern "C" {\r
-#endif\r
-\r
-\r
-FX_FLOAT               FXSYS_tan(FX_FLOAT a);\r
-FX_FLOAT               FXSYS_logb(FX_FLOAT b, FX_FLOAT x);\r
-FX_FLOAT               FXSYS_strtof(FX_LPCSTR pcsStr, FX_INT32 iLength = -1, FX_INT32 *pUsedLen = NULL);\r
-FX_FLOAT               FXSYS_wcstof(FX_LPCWSTR pwsStr, FX_INT32 iLength = -1, FX_INT32 *pUsedLen = NULL);\r
-FX_LPWSTR              FXSYS_wcsncpy(FX_LPWSTR dstStr, FX_LPCWSTR srcStr, size_t count);\r
-FX_INT32               FXSYS_wcsnicmp(FX_LPCWSTR s1, FX_LPCWSTR s2, size_t count);\r
-FX_INT32               FXSYS_strnicmp(FX_LPCSTR s1, FX_LPCSTR s2, size_t count);\r
-inline FX_BOOL FXSYS_islower(FX_INT32 ch)\r
-{\r
-    return ch >= 'a' && ch <= 'z';\r
-}\r
-inline FX_BOOL FXSYS_isupper(FX_INT32 ch)\r
-{\r
-    return ch >= 'A' && ch <= 'Z';\r
-}\r
-inline FX_INT32        FXSYS_tolower(FX_INT32 ch)\r
-{\r
-    return ch < 'A' || ch > 'Z' ? ch : (ch + 0x20);\r
-}\r
-inline FX_INT32 FXSYS_toupper(FX_INT32 ch)\r
-{\r
-    return ch < 'a' || ch > 'z' ? ch : (ch - 0x20);\r
-}\r
-\r
-\r
-\r
-FX_DWORD       FX_HashCode_String_GetA(FX_LPCSTR pStr, FX_INT32 iLength, FX_BOOL bIgnoreCase = FALSE);\r
-FX_DWORD       FX_HashCode_String_GetW(FX_LPCWSTR pStr, FX_INT32 iLength, FX_BOOL bIgnoreCase = FALSE);\r
-\r
-#ifdef __cplusplus\r
-}\r
-#endif\r
-#ifdef __cplusplus\r
-extern "C" {\r
-#endif\r
-\r
-FX_LPVOID      FX_Random_MT_Start(FX_DWORD dwSeed);\r
-\r
-FX_DWORD       FX_Random_MT_Generate(FX_LPVOID pContext);\r
-\r
-void           FX_Random_MT_Close(FX_LPVOID pContext);\r
-\r
-void           FX_Random_GenerateBase(FX_LPDWORD pBuffer, FX_INT32 iCount);\r
-\r
-void           FX_Random_GenerateMT(FX_LPDWORD pBuffer, FX_INT32 iCount);\r
-\r
-void           FX_Random_GenerateCrypto(FX_LPDWORD pBuffer, FX_INT32 iCount);\r
-#ifdef __cplusplus\r
-}\r
-#endif\r
-template<class baseType>\r
-class CFX_SSortTemplate\r
-{\r
-public:\r
-    void ShellSort(baseType *pArray, FX_INT32 iCount)\r
-    {\r
-        FXSYS_assert(pArray != NULL && iCount > 0);\r
-        FX_INT32 i, j, gap;\r
-        baseType v1, v2;\r
-        gap = iCount >> 1;\r
-        while (gap > 0) {\r
-            for (i = gap; i < iCount; i ++) {\r
-                j = i - gap;\r
-                v1 = pArray[i];\r
-                while (j > -1 && (v2 = pArray[j]) > v1) {\r
-                    pArray[j + gap] = v2;\r
-                    j -= gap;\r
-                }\r
-                pArray[j + gap] = v1;\r
-            }\r
-            gap >>= 1;\r
-        }\r
-    }\r
-};\r
-#endif\r
+// Copyright 2014 PDFium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
+
+#ifndef CORE_INCLUDE_FXCRT_FX_EXT_H_
+#define CORE_INCLUDE_FXCRT_FX_EXT_H_
+
+#include "fx_system.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+FX_FLOAT FXSYS_tan(FX_FLOAT a);
+FX_FLOAT FXSYS_logb(FX_FLOAT b, FX_FLOAT x);
+FX_FLOAT FXSYS_strtof(const FX_CHAR* pcsStr,
+                      int32_t iLength = -1,
+                      int32_t* pUsedLen = NULL);
+FX_FLOAT FXSYS_wcstof(const FX_WCHAR* pwsStr,
+                      int32_t iLength = -1,
+                      int32_t* pUsedLen = NULL);
+FX_WCHAR* FXSYS_wcsncpy(FX_WCHAR* dstStr, const FX_WCHAR* srcStr, size_t count);
+int32_t FXSYS_wcsnicmp(const FX_WCHAR* s1, const FX_WCHAR* s2, size_t count);
+int32_t FXSYS_strnicmp(const FX_CHAR* s1, const FX_CHAR* s2, size_t count);
+
+inline FX_BOOL FXSYS_islower(int32_t ch) {
+  return ch >= 'a' && ch <= 'z';
+}
+inline FX_BOOL FXSYS_isupper(int32_t ch) {
+  return ch >= 'A' && ch <= 'Z';
+}
+inline int32_t FXSYS_tolower(int32_t ch) {
+  return ch < 'A' || ch > 'Z' ? ch : (ch + 0x20);
+}
+inline int32_t FXSYS_toupper(int32_t ch) {
+  return ch < 'a' || ch > 'z' ? ch : (ch - 0x20);
+}
+
+FX_DWORD FX_HashCode_String_GetA(const FX_CHAR* pStr,
+                                 int32_t iLength,
+                                 FX_BOOL bIgnoreCase = FALSE);
+FX_DWORD FX_HashCode_String_GetW(const FX_WCHAR* pStr,
+                                 int32_t iLength,
+                                 FX_BOOL bIgnoreCase = FALSE);
+
+#ifdef __cplusplus
+}
+#endif
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void* FX_Random_MT_Start(FX_DWORD dwSeed);
+
+FX_DWORD FX_Random_MT_Generate(void* pContext);
+
+void FX_Random_MT_Close(void* pContext);
+
+void FX_Random_GenerateBase(FX_DWORD* pBuffer, int32_t iCount);
+
+void FX_Random_GenerateMT(FX_DWORD* pBuffer, int32_t iCount);
+
+void FX_Random_GenerateCrypto(FX_DWORD* pBuffer, int32_t iCount);
+#ifdef __cplusplus
+}
+#endif
+template <class baseType>
+class CFX_SSortTemplate {
+ public:
+  void ShellSort(baseType* pArray, int32_t iCount) {
+    FXSYS_assert(pArray != NULL && iCount > 0);
+    int32_t i, j, gap;
+    baseType v1, v2;
+    gap = iCount >> 1;
+    while (gap > 0) {
+      for (i = gap; i < iCount; i++) {
+        j = i - gap;
+        v1 = pArray[i];
+        while (j > -1 && (v2 = pArray[j]) > v1) {
+          pArray[j + gap] = v2;
+          j -= gap;
+        }
+        pArray[j + gap] = v1;
+      }
+      gap >>= 1;
+    }
+  }
+};
+
+#endif  // CORE_INCLUDE_FXCRT_FX_EXT_H_