beerbox/beerbox.h

46 lines
1.0 KiB
C
Raw Normal View History

2015-07-13 14:49:36 +00:00
#define NUM_OF_PEOPLE 25
#define NUM_OF_DRINKS 10
#define DRINK_NAME_MAX_LENGTH 13
2015-09-19 09:46:46 +00:00
#define FILE_NAME_LEN 8
#define FILE_EXTENSION_LEN 3
2015-07-13 17:09:27 +00:00
#define FILE_EXTENSION "per"
2015-07-13 14:49:36 +00:00
#define NAME_LEN 10
extern int __drinks_taken;
extern int __drinks_put_in;
//Beware! Only valid inside the function it has been set in!
extern char tmp_filename[];
typedef struct{
/*Drink spevifier*/
char name[DRINK_NAME_MAX_LENGTH + 1];
/*Value in cents*/
int price;
}Drink;
typedef struct{
Drink drinks[NUM_OF_DRINKS];
}Beerbox;
typedef struct{
char file_name[FILE_NAME_LEN + 1];
2015-09-19 09:46:46 +00:00
2015-07-13 14:49:36 +00:00
char name[NAME_LEN + 1];
2015-07-13 17:32:39 +00:00
char rfid_uuid[13];
uint8_t finger_uuid;
uint8_t credits_left;
2015-07-13 14:49:36 +00:00
int drinks_taken[NUM_OF_DRINKS];
}Person;
Beerbox* read_beerbox(Beerbox *box);
Person read_person(Beerbox *box, char *filename);
void print_person(Beerbox *box, Person *aperson);
2015-09-19 09:46:46 +00:00
int update_pers_file(Beerbox *box, Person *aperson);
2015-07-13 14:49:36 +00:00
char* read_line_from_file(FILE *stream, char *str, int max_len);
char* read_from_file_until(FILE *stream, char *str, int max_len, char until);