Deluge Firmware 1.3.0
Build date: 2025.04.16
Loading...
Searching...
No Matches
file_item.h
1/*
2 * Copyright © 2022-2023 Synthstrom Audible Limited
3 *
4 * This file is part of The Synthstrom Audible Deluge Firmware.
5 *
6 * The Synthstrom Audible Deluge Firmware is free software: you can redistribute it and/or modify it under the
7 * terms of the GNU General Public License as published by the Free Software Foundation,
8 * either version 3 of the License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
11 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12 * See the GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License along with this program.
15 * If not, see <https://www.gnu.org/licenses/>.
16 */
17
18#pragma once
19
20#include "storage/storage_manager.h"
21#include "util/d_string.h"
22#include <cstdint>
23
24class FileItem {
25public:
26 FileItem() = default;
27 Error setupWithInstrument(Instrument* newInstrument, bool hibernating);
28 Error getFilenameWithExtension(String* filenameWithExtension);
29 Error getFilenameWithoutExtension(String* filenameWithoutExtension);
30 Error getDisplayNameWithoutExtension(String* displayNameWithoutExtension);
31
32 char const* displayName; // Usually points to filePointer.get(), but for "numeric" files, will cut off the prefix,
33 // e.g. "SONG". And I think this always includes the file extension...
34
35 String filename; // May or may not include file extension. (Or actually I think it always does now...)
36 FilePointer filePointer{0};
37 Instrument* instrument = nullptr;
38 bool existsOnCard{true}; // only false when made through setupWithInstrument through an unsaved instrument
39 bool isFolder;
40 bool instrumentAlreadyInSong = false; // Only valid if instrument is set to something.
41 bool filenameIncludesExtension = true;
42};
Definition instrument.h:45
Definition d_string.h:46