1 /* 2 * The internal definitions 3 * 4 * Copyright (C) 2012-2020, Joachim Metz <joachim.metz@gmail.com> 5 * 6 * Refer to AUTHORS for acknowledgements. 7 * 8 * This program is free software: you can redistribute it and/or modify 9 * it under the terms of the GNU Lesser General Public License as published by 10 * the Free Software Foundation, either version 3 of the License, or 11 * (at your option) any later version. 12 * 13 * This program is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU General Public License for more details. 17 * 18 * You should have received a copy of the GNU Lesser General Public License 19 * along with this program. If not, see <https://www.gnu.org/licenses/>. 20 */ 21 22 #if !defined( LIBCTHREADS_INTERNAL_DEFINITIONS_H ) 23 #define LIBCTHREADS_INTERNAL_DEFINITIONS_H 24 25 #include <common.h> 26 #include <types.h> 27 28 /* Define HAVE_LOCAL_LIBCTHREADS for local use of libcthreads 29 */ 30 #if !defined( HAVE_LOCAL_LIBCTHREADS ) 31 #include <libcthreads/definitions.h> 32 33 /* The definitions in <libcthreads/definitions.h> are copied here 34 * for local use of libcthreads 35 */ 36 #else 37 38 #define LIBCTHREADS_VERSION 20200508 39 40 /* The libcthreads version string 41 */ 42 #define LIBCTHREADS_VERSION_STRING "20200508" 43 44 /* The comparison function definitions 45 */ 46 enum LIBCTHREADS_COMPARE_DEFINITIONS 47 { 48 /* The first value is less than the second value 49 */ 50 LIBCTHREADS_COMPARE_LESS, 51 52 /* The first and second values are equal 53 */ 54 LIBCTHREADS_COMPARE_EQUAL, 55 56 /* The first value is greater than the second value 57 */ 58 LIBCTHREADS_COMPARE_GREATER 59 }; 60 61 /* The sort flag definitions 62 */ 63 enum LIBCTHREADS_SORT_FLAGS 64 { 65 /* Allow duplicate values 66 */ 67 LIBCTHREADS_SORT_FLAG_NON_UNIQUE_VALUES = 0x00, 68 69 /* Only allow unique values, no duplicates 70 */ 71 LIBCTHREADS_SORT_FLAG_UNIQUE_VALUES = 0x01 72 }; 73 74 #endif /* !defined( HAVE_LOCAL_LIBCTHREADS ) */ 75 76 /* The status definitions 77 */ 78 enum LIBCTHREADS_STATUS 79 { 80 LIBCTHREADS_STATUS_EXIT = 1 81 }; 82 83 #endif /* !defined( LIBCTHREADS_INTERNAL_DEFINITIONS_H ) */ 84 85