| // Copyright 2019 The PDFium Authors | 
 | // Use of this source code is governed by a BSD-style license that can be | 
 | // found in the LICENSE file. | 
 |  | 
 | #ifndef CORE_FXCRT_BYTEORDER_H_ | 
 | #define CORE_FXCRT_BYTEORDER_H_ | 
 |  | 
 | #include "build/build_config.h" | 
 | #include "third_party/base/sys_byteorder.h" | 
 |  | 
 | namespace fxcrt { | 
 |  | 
 | // Converts the bytes in |x| from host order (endianness) to little endian, and | 
 | // returns the result. | 
 | inline uint16_t ByteSwapToLE16(uint16_t x) { | 
 |   return pdfium::base::ByteSwapToLE16(x); | 
 | } | 
 |  | 
 | inline uint32_t ByteSwapToLE32(uint32_t x) { | 
 |   return pdfium::base::ByteSwapToLE32(x); | 
 | } | 
 |  | 
 | // Converts the bytes in |x| from host order (endianness) to big endian, and | 
 | // returns the result. | 
 | inline uint16_t ByteSwapToBE16(uint16_t x) { | 
 | #if defined(ARCH_CPU_LITTLE_ENDIAN) | 
 |   return pdfium::base::ByteSwap(x); | 
 | #else | 
 |   return x; | 
 | #endif | 
 | } | 
 |  | 
 | inline uint32_t ByteSwapToBE32(uint32_t x) { | 
 | #if defined(ARCH_CPU_LITTLE_ENDIAN) | 
 |   return pdfium::base::ByteSwap(x); | 
 | #else | 
 |   return x; | 
 | #endif | 
 | } | 
 |  | 
 | }  // namespace fxcrt | 
 |  | 
 | #endif  // CORE_FXCRT_BYTEORDER_H_ |