mirror of
https://git.sr.ht/~thestr4ng3r/chiaki
synced 2025-03-12 05:25:23 -07:00
43 lines
1.1 KiB
C
43 lines
1.1 KiB
C
// SPDX-License-Identifier: LicenseRef-AGPL-3.0-only-OpenSSL
|
|
|
|
#ifndef CHIAKI_FEEDBACKSENDER_H
|
|
#define CHIAKI_FEEDBACKSENDER_H
|
|
|
|
#include "controller.h"
|
|
#include "takion.h"
|
|
#include "thread.h"
|
|
#include "common.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef struct chiaki_feedback_sender_t
|
|
{
|
|
ChiakiLog *log;
|
|
ChiakiTakion *takion;
|
|
ChiakiThread thread;
|
|
|
|
ChiakiSeqNum16 state_seq_num;
|
|
|
|
ChiakiSeqNum16 history_seq_num;
|
|
ChiakiFeedbackHistoryBuffer history_buf;
|
|
|
|
bool should_stop;
|
|
ChiakiControllerState controller_state_prev;
|
|
ChiakiControllerState controller_state;
|
|
bool controller_state_changed;
|
|
ChiakiMutex state_mutex;
|
|
ChiakiCond state_cond;
|
|
} ChiakiFeedbackSender;
|
|
|
|
CHIAKI_EXPORT ChiakiErrorCode chiaki_feedback_sender_init(ChiakiFeedbackSender *feedback_sender, ChiakiTakion *takion);
|
|
CHIAKI_EXPORT void chiaki_feedback_sender_fini(ChiakiFeedbackSender *feedback_sender);
|
|
CHIAKI_EXPORT ChiakiErrorCode chiaki_feedback_sender_set_controller_state(ChiakiFeedbackSender *feedback_sender, ChiakiControllerState *state);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // CHIAKI_FEEDBACKSENDER_H
|