Sygaldry
Loading...
Searching...
No Matches
sygah-metadata.hpp
1
#pragma once
2
/*
3
Copyright 2023 Travis J. West, https://traviswest.ca, Input Devices and Music
4
Interaction Laboratory (IDMIL), Centre for Interdisciplinary Research in Music
5
Media and Technology (CIRMMT), McGill University, Montréal, Canada, and Univ.
6
Lille, Inria, CNRS, Centrale Lille, UMR 9189 CRIStAL, F-59000 Lille, France
7
8
SPDX-License-Identifier: MIT
9
*/
10
11
#include "sygah-string_literal.hpp"
12
#include "sygah-consteval.hpp"
13
14
namespace
sygaldry {
15
18
21
23
#define metadata_struct(NAME) template<string_literal str>\
24
struct NAME##_\
25
{\
26
\
27
static _consteval auto NAME() {return str.value;}\
28
}
29
30
// TODO: refactor these so the base classes are capitalised instead of post-underscored?
31
33
metadata_struct
(name);
35
metadata_struct
(description);
37
metadata_struct
(unit);
39
metadata_struct
(author);
41
metadata_struct
(designer);
43
metadata_struct
(email);
45
metadata_struct
(license);
47
metadata_struct
(copyright);
49
metadata_struct
(uuid);
51
metadata_struct
(version);
53
metadata_struct
(date);
54
55
#undef metadata_struct
56
59
}
metadata_struct
#define metadata_struct(NAME)
Helper macro used in the definition of metadata structs; This get's undefined immediately so don't tr...
Definition
sygah-metadata.hpp:23
sygaldry
sygah-metadata
sygah-metadata.hpp
Generated by
1.9.8