| Server IP : 35.154.56.2 / Your IP : 216.73.217.116 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ip-172-31-0-189 6.8.0-1029-aws #31-Ubuntu SMP Wed Apr 23 18:20:04 UTC 2025 aarch64 User : ubuntu ( 1000) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : OFF | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/include/OpenEXR/ |
Upload File : |
// // SPDX-License-Identifier: BSD-3-Clause // Copyright (c) Contributors to the OpenEXR Project. // #ifndef INCLUDED_IMF_CONVERT_H #define INCLUDED_IMF_CONVERT_H //----------------------------------------------------------------------------- // // Routines for converting between pixel data types, // with well-defined behavior for exceptional cases, // without depending on how hardware and operating // system handle integer overflows and floating-point // exceptions. // //----------------------------------------------------------------------------- #include "ImfExport.h" #include "ImfNamespace.h" #include <half.h> OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER //--------------------------------------------------------- // Conversion from half or float to unsigned int: // // input result // --------------------------------------------------- // // finite, >= 0 input, cast to unsigned int // (rounds towards zero) // // finite, < 0 0 // // NaN 0 // // +infinity UINT_MAX // // -infinity 0 // //--------------------------------------------------------- IMF_EXPORT unsigned int halfToUint (half h); IMF_EXPORT unsigned int floatToUint (float f); //--------------------------------------------------------- // Conversion from unsigned int or float to half: // // input result // --------------------------------------------------- // // finite, closest possible half // magnitude <= HALF_MAX // // finite, > HALF_MAX +infinity // // finite, < -HALF_MAX -infinity // // NaN NaN // // +infinity +infinity // // -infinity -infinity // //--------------------------------------------------------- IMF_EXPORT half uintToHalf (unsigned int ui); IMF_EXPORT half floatToHalf (float f); OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_EXIT #endif