Example
Loading...
Searching...
No Matches
CNFB.h
Go to the documentation of this file.
1// Copyright. 2019 - 2024 PSBD. All rights reserved.
2
3#pragma once
4
6#include "Capsule/CError.h"
8#include "Capsule/CSession.h"
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
17typedef enum clCNFBCallResult {
27
31typedef enum ccCNFBState {
36
40typedef struct clCNFBUserState {
44 const float* feedbackData;
45 uint64_t feedbackSize;
46 int64_t timestamp;
48
63CLC_CLASS_WN(ClassificationNFBPrivate, clCNFB);
64CLC_STRUCT(clCNFBDelegateNFBUserState);
65typedef void (*clCNFBHandlerNFBUserState)(clCNFB, const clCNFBUserState*);
66CL_DLL void clCNFBDelegateNFBUserState_Set(clCNFBDelegateNFBUserState delegate,
74CL_DLL clCNFB clCNFB_Create(clCSession session) NOEXCEPT;
81
82CLC_STRUCT(clCNFBDelegate);
83typedef void (*clCNFBHandler)(clCNFB);
84CL_DLL void clCNFBDelegate_Set(clCNFBDelegate delegate, clCNFBHandler callback) NOEXCEPT;
85
86CLC_STRUCT(clCNFBDelegateBool);
87typedef void (*clCNFBHandlerBool)(clCNFB, bool);
88CL_DLL void clCNFBDelegateBool_Set(clCNFBDelegateBool delegate,
90
91CLC_STRUCT(clCNFBDelegateString);
92typedef void (*clCNFBHandlerString)(clCNFB, const char*);
93CL_DLL void clCNFBDelegateString_Set(clCNFBDelegateString delegate,
95
96CL_DLL clCNFBDelegate clCNFB_GetOnInitializedEvent(clCNFB nfb) NOEXCEPT;
98CL_DLL clCNFBDelegateBool clCNFB_GetOnResetEvent(clCNFB nfb) NOEXCEPT;
99CL_DLL clCNFBDelegateNFBUserState clCNFB_GetOnUserStateChangedEvent(clCNFB nfb) NOEXCEPT;
100CL_DLL clCNFBDelegateString clCNFB_GetOnErrorEvent(clCNFB nfb) NOEXCEPT;
101
131CL_DLL clCNFBCallResult clCNFB_AddFeedbackFunction(clCNFB nfb, const char* feedbackFunction) NOEXCEPT;
132
153
170
177CL_DLL clCNFB clCNFB_CreateCalibrated(clCNFBCalibrator calibrator, clCError* error) NOEXCEPT;
178
190// DEPRECATED
192
193#ifdef __cplusplus
194}
195#endif
#define CLC_STRUCT(Name)
Definition CDefinesPrivate.h:24
#define NOEXCEPT
Definition CDefinesPrivate.h:52
#define CL_DLL
Definition CDefinesPrivate.h:21
#define CLC_CLASS_WN(Wrapped, Name)
Definition CDefinesPrivate.h:54
clCError
Capsule error.
Definition CError.h:8
CL_DLL clCNFBCallResult clCNFB_Initialize(clCNFB nfb) NOEXCEPT
Request initialization.
CL_DLL clCNFB clCNFB_CreateCalibrated(clCNFBCalibrator calibrator, clCError *error) NOEXCEPT
clCNFBCallResult
NFB call result.
Definition CNFB.h:17
@ clC_NFB_FailedToSendData
Definition CNFB.h:24
@ clC_NFB_NotInitialized
Definition CNFB.h:19
@ clC_NFB_ModelIsTrained
Definition CNFB.h:22
@ clC_NFB_Success
Definition CNFB.h:18
@ clC_NFB_ModelIsNotTrained
Definition CNFB.h:20
CL_DLL clCNFBCallResult clCNFB_AddFeedbackFunction(clCNFB nfb, const char *feedbackFunction) NOEXCEPT
Add calculation of neuro feedback with configured output.
void(* clCNFBHandlerBool)(clCNFB, bool)
Definition CNFB.h:87
CL_DLL bool clCNFB_IsModelTrained(clCNFB nfb) NOEXCEPT
Check whether model was trained.
ccCNFBState
NFB state.
Definition CNFB.h:31
@ cc_NFB_Undefined
Definition CNFB.h:32
@ cc_NFB_Relaxation
Definition CNFB.h:33
@ cc_NFB_Concentration
Definition CNFB.h:34
CL_DLL clCNFBCallResult clCNFB_Train(clCNFB nfb) NOEXCEPT
Request training, event is called when training is finished.
CL_DLL void clCNFBDelegateBool_Set(clCNFBDelegateBool delegate, clCNFBHandlerBool callback) NOEXCEPT
void(* clCNFBHandlerString)(clCNFB, const char *)
Definition CNFB.h:92
CL_DLL clCNFBCallResult clCNFB_MarkState(clCNFB nfb, ccCNFBState userState) NOEXCEPT
Mark a change in user state.
void(* clCNFBHandlerNFBUserState)(clCNFB, const clCNFBUserState *)
Definition CNFB.h:65
CL_DLL void clCNFB_Destroy(clCNFB nfb) NOEXCEPT
CL_DLL clCNFBDelegateNFBUserState clCNFB_GetOnUserStateChangedEvent(clCNFB nfb) NOEXCEPT
CL_DLL clCNFBDelegate clCNFB_GetOnInitializedEvent(clCNFB nfb) NOEXCEPT
CL_DLL clCNFBCallResult clCNFB_Reset(clCNFB nfb) NOEXCEPT
Request reset, event is called when reset finished.
CL_DLL clCNFBDelegateString clCNFB_GetOnErrorEvent(clCNFB nfb) NOEXCEPT
CL_DLL clCNFBCallResult clCNFB_InitializeWithPeriod(clCNFB nfb, float userStatePeriod) NOEXCEPT
Request initialization.
CL_DLL void clCNFBDelegateString_Set(clCNFBDelegateString delegate, clCNFBHandlerString callback) NOEXCEPT
CL_DLL void clCNFBDelegate_Set(clCNFBDelegate delegate, clCNFBHandler callback) NOEXCEPT
void(* clCNFBHandler)(clCNFB)
Definition CNFB.h:83
CL_DLL void clCNFBDelegateNFBUserState_Set(clCNFBDelegateNFBUserState delegate, clCNFBHandlerNFBUserState callback) NOEXCEPT
CL_DLL bool clCNFB_IsInitialized(clCNFB nfb) NOEXCEPT
Check whether interface was initialized.
CL_DLL clCNFBDelegateBool clCNFB_GetOnResetEvent(clCNFB nfb) NOEXCEPT
CL_DLL clCNFB clCNFB_Create(clCSession session) NOEXCEPT
CL_DLL clCNFBDelegate clCNFB_GetOnModelTrainedEvent(clCNFB nfb) NOEXCEPT
User state, determined by NFB classifier.
Definition CNFB.h:40
const float * feedbackData
User's neural feedback.
Definition CNFB.h:44
uint64_t feedbackSize
Definition CNFB.h:45
int64_t timestamp
Definition CNFB.h:46