summaryrefslogtreecommitdiff
path: root/globals.h
blob: a647a46f157d11e2797b72a3b7419810f3ea35df (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
#ifndef GLOBALS_H_
#define GLOBALS_H_

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include "error_utils.h"


#define error_queue_length 512
#define max_commands_in_input 12
#define max_output_length 512
#define max_channels 2

typedef struct {
	float frequency;
	// this will be enlarged later
} ChannelStruct;

#pragma pack(push)  /* push current alignment to stack */
#pragma pack(1)
typedef struct {
	char flash_start;
	short channels;
	char aux_error_message[32];
	char enable_avrq_extra_ampls;
	char ChanKey_frequency;
	char flash_end;
} FlashStruct;
#pragma pack(pop)

typedef struct {
	ChannelStruct ChannelState[max_channels];
	FlashStruct Flash;
	int error_queue[error_queue_length+1];
	int number_of_errors;	/* how many errors are in the error queue */
} GlobalStruct;

extern GlobalStruct globals;

#endif