/**++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * * PANIC * Portable Algorithms and Numerics In C++ * * Scientific computing from scratch, with feeling. * * Copyright (c) 2026 Michelle Bausager * * This file is part of PANIC. * * PANIC is free software licensed under the GNU General Public License v3.0 or later. * You may redistribute and/or modify it under the terms of the GPL. * * PANIC 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 LICENSE file for the full license text. * * SPDX-License-Identifier: GPL-3.0-or-later * *++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * * Project Name: PANIC * Module Name: config * File Name: types.hpp * Revision: 0.1.0 * Date: 20-06-2026 * Author: Michelle Bausager * * Description: * Defines which types will be used in the rest of the libraries. * *++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ #pragma once //--------------------------------------------------------------------------------------------------------------------------- // INCLUDE DESCRIPTION //--------------------------------------------------------------------------------------------------------------------------- #include // used for uintx_t and intx_t types. //--------------------------------------------------------------------------------------------------------------------------- // DEFINE DESCRIPTION //--------------------------------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------------------------------- // TYPE DESCRIPTION //--------------------------------------------------------------------------------------------------------------------------- // Type Name : panic::types::uint_t // // Description: // Default unsigned integer type used inside PANIC. // // Underlying Type: // uint32_t //--------------------------------------------------------------------------------------------------------------------------- // // Type Name : panic::types::int_t // // Description: // Default signed integer type used inside PANIC. // // Underlying Type: // int32_t //--------------------------------------------------------------------------------------------------------------------------- // // Type Name : panic::types::real_t // // Description: // Default floating-point type used inside PANIC. // // Underlying Type: // float //--------------------------------------------------------------------------------------------------------------------------- namespace panic { namespace types{ typedef uint32_t uint_t; typedef int32_t int_t; typedef float real_t; } // namespace types } // namespace panic //--------------------------------------------------------------------------------------------------------------------------- // VARIABLE DESCRIPTION //--------------------------------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------------------------------- // FUNCTION PROTOTYPE //---------------------------------------------------------------------------------------------------------------------------