condition.h (1129B)
1 /* Copyright (C) 2013-2023, 2025 Vincent Forest (vaplv@free.fr) 2 * 3 * The RSys library is free software: you can redistribute it and/or modify 4 * it under the terms of the GNU General Public License as published 5 * by the Free Software Foundation, either version 3 of the License, or 6 * (at your option) any later version. 7 * 8 * The RSys library is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU General Public License for more details. 12 * 13 * You should have received a copy of the GNU General Public License 14 * along with the RSys library. If not, see <http://www.gnu.org/licenses/>. */ 15 16 #ifndef CONDITION_H 17 #define CONDITION_H 18 19 #include "rsys.h" 20 #include "mutex.h" 21 22 struct cond; 23 struct mutex; 24 25 RSYS_API struct cond* cond_create(void); /* NULL <=> error */ 26 RSYS_API void cond_destroy(struct cond* cond); 27 RSYS_API void cond_wait(struct cond* cond, struct mutex* mutex); 28 RSYS_API void cond_signal(struct cond* cond); 29 RSYS_API void cond_broadcast(struct cond* cond); 30 31 #endif /* CONDITION_H */