aboutsummaryrefslogtreecommitdiff
path: root/src/c/event.h
blob: b59a662e3dcb5a7e8af9b1585cfc1fb81dba1f0c (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
/*
 * Copyright (C) 2026 Reiner Herrmann
 * SPDX-License-Identifier: GPL-3.0-or-later
 */

#ifndef EVENT_H
#define EVENT_H

#include <pebble.h>

enum Category {
	CORE = 0,
	LWS1,
	LWS2,
	LWS3,
	LWS4,
	IBS,
	HOT,
	POF,
	EOD,
	SOTO,
	JW,
	VOE,
};

struct Gw2Event {
	char name[32];
	uint16_t utc_offset;
	enum Category category;
	char location[32];
	uint8_t schedule_hours;
	// uint16_t length; // TODO: to show currently running events
};

void init_events();
void cleanup_events();
void update_event_index();

const struct Gw2Event *get_next_event(int offset);
int minutes_to_event(const struct Gw2Event *event);

GColor8 color_for_category(enum Category category);

#endif