diff options
author | Volker Fischer <corrados@users.noreply.github.com> | 2021-04-30 17:07:36 +0200 |
---|---|---|
committer | Volker Fischer <corrados@users.noreply.github.com> | 2021-04-30 17:07:36 +0200 |
commit | 5be222dee61dc8b28a429d93c39a2500a28de759 (patch) | |
tree | 5ba775dbb76aadbb117c7673ebed3f28fb9bda9c /src/dgxmlparser.cc | |
parent | d605a7a9166dce74aa17d33da92e11ca9b467e55 (diff) | |
parent | a15a662bcf6de70cb379bfc582c349f7ff87ee27 (diff) |
Merge branch 'distance' into edrumulus
Diffstat (limited to 'src/dgxmlparser.cc')
-rw-r--r-- | src/dgxmlparser.cc | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/dgxmlparser.cc b/src/dgxmlparser.cc index 0d3cdcd..bd9af66 100644 --- a/src/dgxmlparser.cc +++ b/src/dgxmlparser.cc @@ -358,9 +358,19 @@ bool parseInstrumentFile(const std::string& filename, InstrumentDOM& dom, LogFun } else { - res &= attrcpy(dom.samples.back().power, sample, "power", logger, filename); - dom.samples.back().normalized = false; - res &= attrcpy(dom.samples.back().normalized, sample, "normalized", logger, filename, true); + res &= attrcpy(dom.samples.back().power, sample, "power", + logger, filename); + + dom.samples.back().position = 0.0; // optional - defaults to 0 + res &= attrcpy(dom.samples.back().position, sample, "position", + logger, filename, true); + // Clamp to [0; 1] range. + dom.samples.back().position = + std::min(1.0, std::max(dom.samples.back().position, 0.0)); + + dom.samples.back().normalized = false; // optional - defaults to false + res &= attrcpy(dom.samples.back().normalized, sample, "normalized", + logger, filename, true); } for(pugi::xml_node audiofile: sample.children("audiofile")) |