2024-10-20 18:21:03 +13:00
|
|
|
#include <QSemaphore>
|
|
|
|
#include <QSemaphoreReleaser>
|
|
|
|
#include <qsemaphore.h>
|
|
|
|
#include "gen_qsemaphore.h"
|
2024-12-11 19:55:47 +13:00
|
|
|
|
2025-01-07 11:30:33 +01:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
} /* extern C */
|
2024-12-11 19:55:47 +13:00
|
|
|
#endif
|
2024-10-20 18:21:03 +13:00
|
|
|
|
2024-12-07 17:15:57 +13:00
|
|
|
QSemaphore* QSemaphore_new() {
|
|
|
|
return new QSemaphore();
|
2024-10-20 18:21:03 +13:00
|
|
|
}
|
|
|
|
|
2024-12-07 17:15:57 +13:00
|
|
|
QSemaphore* QSemaphore_new2(int n) {
|
|
|
|
return new QSemaphore(static_cast<int>(n));
|
2024-10-20 18:21:03 +13:00
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
void QSemaphore_acquire(QSemaphore* self) {
|
2024-10-20 18:21:03 +13:00
|
|
|
self->acquire();
|
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
bool QSemaphore_tryAcquire(QSemaphore* self) {
|
2024-10-20 18:21:03 +13:00
|
|
|
return self->tryAcquire();
|
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
bool QSemaphore_tryAcquire2(QSemaphore* self, int n, int timeout) {
|
2024-10-20 18:21:03 +13:00
|
|
|
return self->tryAcquire(static_cast<int>(n), static_cast<int>(timeout));
|
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
void QSemaphore_release(QSemaphore* self) {
|
2024-10-20 18:21:03 +13:00
|
|
|
self->release();
|
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
int QSemaphore_available(const QSemaphore* self) {
|
2024-10-20 18:21:03 +13:00
|
|
|
return self->available();
|
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
bool QSemaphore_tryAcquire3(QSemaphore* self) {
|
2024-10-20 18:21:03 +13:00
|
|
|
return self->try_acquire();
|
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
void QSemaphore_acquire1(QSemaphore* self, int n) {
|
2024-10-20 18:21:03 +13:00
|
|
|
self->acquire(static_cast<int>(n));
|
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
bool QSemaphore_tryAcquire1(QSemaphore* self, int n) {
|
2024-10-20 18:21:03 +13:00
|
|
|
return self->tryAcquire(static_cast<int>(n));
|
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
void QSemaphore_release1(QSemaphore* self, int n) {
|
2024-10-20 18:21:03 +13:00
|
|
|
self->release(static_cast<int>(n));
|
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
void QSemaphore_delete(QSemaphore* self) {
|
2025-01-18 17:42:41 +13:00
|
|
|
delete self;
|
2024-10-20 18:21:03 +13:00
|
|
|
}
|
|
|
|
|
2024-12-07 17:15:57 +13:00
|
|
|
QSemaphoreReleaser* QSemaphoreReleaser_new() {
|
|
|
|
return new QSemaphoreReleaser();
|
2024-10-20 18:21:03 +13:00
|
|
|
}
|
|
|
|
|
2024-12-07 17:15:57 +13:00
|
|
|
QSemaphoreReleaser* QSemaphoreReleaser_new2(QSemaphore* sem) {
|
|
|
|
return new QSemaphoreReleaser(*sem);
|
2024-10-20 18:21:03 +13:00
|
|
|
}
|
|
|
|
|
2024-12-07 17:15:57 +13:00
|
|
|
QSemaphoreReleaser* QSemaphoreReleaser_new3(QSemaphore* sem) {
|
|
|
|
return new QSemaphoreReleaser(sem);
|
2024-10-20 18:21:03 +13:00
|
|
|
}
|
|
|
|
|
2024-12-07 17:15:57 +13:00
|
|
|
QSemaphoreReleaser* QSemaphoreReleaser_new4(QSemaphore* sem, int n) {
|
|
|
|
return new QSemaphoreReleaser(*sem, static_cast<int>(n));
|
2024-10-20 18:21:03 +13:00
|
|
|
}
|
|
|
|
|
2024-12-07 17:15:57 +13:00
|
|
|
QSemaphoreReleaser* QSemaphoreReleaser_new5(QSemaphore* sem, int n) {
|
|
|
|
return new QSemaphoreReleaser(sem, static_cast<int>(n));
|
2024-10-20 18:21:03 +13:00
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
void QSemaphoreReleaser_swap(QSemaphoreReleaser* self, QSemaphoreReleaser* other) {
|
2024-10-20 18:21:03 +13:00
|
|
|
self->swap(*other);
|
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
QSemaphore* QSemaphoreReleaser_semaphore(const QSemaphoreReleaser* self) {
|
2024-10-20 18:21:03 +13:00
|
|
|
return self->semaphore();
|
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
QSemaphore* QSemaphoreReleaser_cancel(QSemaphoreReleaser* self) {
|
2024-10-20 18:21:03 +13:00
|
|
|
return self->cancel();
|
|
|
|
}
|
|
|
|
|
2025-02-01 13:45:16 +13:00
|
|
|
void QSemaphoreReleaser_delete(QSemaphoreReleaser* self) {
|
2025-01-18 17:42:41 +13:00
|
|
|
delete self;
|
2024-10-20 18:21:03 +13:00
|
|
|
}
|
|
|
|
|