summaryrefslogtreecommitdiff
path: root/src/database/track.cpp
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2024-01-17 15:31:23 +1100
committerjacqueline <me@jacqueline.id.au>2024-01-17 15:31:23 +1100
commit1f5249de6f7e81aa6ff2586e386f526676e67c81 (patch)
tree5fcc9737e71b3b6b20b7156ea4e759b558f732a3 /src/database/track.cpp
parent08d16e858075e66df1bae3fea9d955e1b6cb73a9 (diff)
downloadtangara-fw-1f5249de6f7e81aa6ff2586e386f526676e67c81.tar.gz
shift some long-lived allocs into spi ram
Diffstat (limited to 'src/database/track.cpp')
-rw-r--r--src/database/track.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/database/track.cpp b/src/database/track.cpp
index 58097cef..943606ce 100644
--- a/src/database/track.cpp
+++ b/src/database/track.cpp
@@ -8,6 +8,7 @@
#include <iomanip>
#include <iostream>
+#include <memory_resource>
#include <sstream>
#include <string>
@@ -90,6 +91,12 @@ auto tagToString(const TagValue& val) -> std::string {
return "";
}
+auto TrackTags::create() -> std::shared_ptr<TrackTags> {
+ return std::allocate_shared<TrackTags,
+ std::pmr::polymorphic_allocator<TrackTags>>(
+ &memory::kSpiRamResource);
+}
+
template <typename T>
auto valueOrMonostate(std::optional<T> t) -> TagValue {
if (t) {