aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules/Control/control.h
blob: 4b6a8096770530c79ab73d32997f0e60000b662e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
generated by cgit v1.3.1 (git 2.54.0) at 2026-07-16 07:00:32 +0000
 


600000,
    eOneHour = 3600000
}CTRL_TIMING_ENUM;
typedef enum
{
    IfTypeNone,
    IfTypeThread,
    IfTypeWinder,
    IfTypeIDS,
    IfTypeHeaters,
    IfTypeWaste,
    IfTypeMotors,
    MAX_INTERFACE_TYPES
}SYSTEM_INTERFACE_TYPES_ID_ENUM;


void        ControlInit(void);
void        ControlStop(void);
void        ControlStart(void);
uint32_t    AddControlCallback(char *Name, ControlCBFunction Callback, uint32_t CtrlFrequency, DataReadCBFunction DriverfPtr, uint16_t IfIndex, uint32_t Parameter1, uint32_t Parameter2 );
int         RemoveControlCallback(uint32_t deviceId, ControlCBFunction Callback );
//The safe remove command can be used ONLY when called from the control callback itself
int         SafeRemoveControlCallback(uint32_t deviceId , ControlCBFunction Callback);
int         SafeRemoveHighControlCallback(uint32_t deviceId , ControlCBFunction Callback);

uint32_t    TemplateDataReadCBFunction (uint32_t deviceId, uint32_t Parameter1);
uint32_t    GetControlDevice_i(void);
uint32_t    GetControlLowDevice_i(void);

ControlCBFunction GetControlCallbackFuncPtr(uint32_t ControlId);

extern Task_Handle Control_Task_Handle;
extern uint32_t millisecondCounter;

#endif