diff options
Diffstat (limited to 'src/pke-at-data-interface-types.hpp')
| -rw-r--r-- | src/pke-at-data-interface-types.hpp | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/src/pke-at-data-interface-types.hpp b/src/pke-at-data-interface-types.hpp new file mode 100644 index 0000000..e83af26 --- /dev/null +++ b/src/pke-at-data-interface-types.hpp @@ -0,0 +1,68 @@ +#ifndef PKE_AT_PKE_AT_DATA_INTERFACE_TYPES_HPP +#define PKE_AT_PKE_AT_DATA_INTERFACE_TYPES_HPP + +#include "pke-at-setlist-types.hpp" +#include <pke/pk.h> + +union di_data_id { + long id_long; +}; + +struct di_service_type_details { + di_data_id id; + pk_cstr name; +}; +struct di_service_type { + di_service_type_details details{}; +}; + +struct di_plan_details { + di_data_id id; + time_t date; + pk_cstr title; + pk_cstr series_title; +}; +struct di_plan { + di_plan_details details{}; +}; + +struct di_song_details { + di_data_id id; + pk_cstr title; + long ccli; +}; +struct di_song { + di_song_details details{}; +}; +struct di_arrangement_details { + di_data_id id; + pk_cstr title; + pk_arr_t<PKE_AT_SECTION_TYPE_INDEX> sequence; + uint8_t beats_per_minute; + uint8_t beats_per_bar; + PKE_AT_KEY_INDEX chord_chart_key; +}; +struct di_arrangement { + di_arrangement_details details{}; +}; +struct di_arrangement_key_details { + di_data_id id; + PKE_AT_KEY_INDEX key; +}; +struct di_arrangement_key { + di_arrangement_key_details details{}; +}; + +struct di_plan_item_details { + di_data_id id; + PKE_AT_KEY_INDEX key; + uint8_t sequence; +}; +struct di_plan_item { + di_plan_item_details details{}; + di_song song{}; + di_arrangement arrangement{}; + di_arrangement_key key{}; +}; + +#endif /* PKE_AT_PKE_AT_DATA_INTERFACE_TYPES_HPP */ |
