Torch
Loading...
Searching...
No Matches
SampleFactory.h
1
#pragma once
2
3
#include <factories/BaseFactory.h>
4
#include "AudioContext.h"
5
6
class
NSampleData
:
public
IParsedData
{
7
public
:
8
uint32_t codec : 4;
9
uint32_t medium : 2;
10
uint32_t unk : 1;
11
uint32_t isRelocated : 1;
12
uint32_t size : 24;
13
uint32_t sampleAddr;
14
uint32_t loop;
15
uint32_t book;
16
17
// Custom fields
18
uint32_t sampleBankId;
19
uint32_t sampleRate;
20
float
tuning;
21
};
22
23
class
NSampleHeaderExporter
:
public
BaseExporter
{
24
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName, YAML::Node& node, std::string* replacement)
override
;
25
};
26
27
class
NSampleBinaryExporter
:
public
BaseExporter
{
28
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName, YAML::Node& node, std::string* replacement)
override
;
29
};
30
31
class
NSampleCodeExporter
:
public
BaseExporter
{
32
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName, YAML::Node& node, std::string* replacement)
override
;
33
};
34
35
class
NSampleModdingExporter
:
public
BaseExporter
{
36
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName, YAML::Node& node, std::string* replacement)
override
;
37
};
38
39
class
NSampleXMLExporter
:
public
BaseExporter
{
40
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName, YAML::Node& node, std::string* replacement)
override
;
41
};
42
43
class
NSampleFactory
:
public
BaseFactory
{
44
public
:
45
std::optional<std::shared_ptr<IParsedData>> parse(std::vector<uint8_t>& buffer, YAML::Node& data)
override
;
46
inline
std::unordered_map<ExportType, std::shared_ptr<BaseExporter>> GetExporters()
override
{
47
return
{
48
REGISTER(Header,
NSampleHeaderExporter
)
49
REGISTER(Binary,
NSampleBinaryExporter
)
50
REGISTER(Code,
NSampleCodeExporter
)
51
REGISTER(Modding,
NSampleModdingExporter
)
52
REGISTER(XML,
NSampleXMLExporter
)
53
};
54
}
55
bool
SupportModdedAssets()
override
{
return
true
; }
56
};
BaseExporter
Definition
BaseFactory.h:88
BaseFactory
Definition
BaseFactory.h:94
IParsedData
Definition
BaseFactory.h:80
NSampleBinaryExporter
Definition
SampleFactory.h:27
NSampleCodeExporter
Definition
SampleFactory.h:31
NSampleData
Definition
SampleFactory.h:6
NSampleFactory
Definition
SampleFactory.h:43
NSampleHeaderExporter
Definition
SampleFactory.h:23
NSampleModdingExporter
Definition
SampleFactory.h:35
NSampleXMLExporter
Definition
SampleFactory.h:39
src
factories
naudio
v1
SampleFactory.h
Generated by
1.14.0