Metal setup merge (#1616)
Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Alex Cristici <alex.cristici@gmail.com> Co-authored-by: mwilsnd <mwilsnd@gmail.com> Co-authored-by: Stefan Karschti <stefan.karschti@gmail.com> Co-authored-by: Bart Louwers <bart@emeel.net> Co-authored-by: Alex Cristici <alex@skoon.energy> Co-authored-by: Bart Louwers <bart.louwers@gmail.com> Co-authored-by: Wei Chen <alanchenboy@gmail.com> Co-authored-by: Siarhei Fedartsou <siarhei.fedartsou@gmail.com> Co-authored-by: tdcosta100 <tdcosta100@gmail.com>
This commit is contained in:
@@ -1,22 +1,19 @@
|
||||
#include <mbgl/programs/program_parameters.hpp>
|
||||
|
||||
#include <mbgl/util/string.hpp>
|
||||
|
||||
#include <string_view>
|
||||
#include <stdexcept>
|
||||
|
||||
namespace mbgl {
|
||||
|
||||
ProgramParameters::ProgramParameters(const float pixelRatio, const bool overdraw)
|
||||
: defines([&] {
|
||||
std::string result;
|
||||
result.reserve(32);
|
||||
result += "#define DEVICE_PIXEL_RATIO ";
|
||||
result += util::toString(pixelRatio, true);
|
||||
result += '\n';
|
||||
if (overdraw) {
|
||||
result += "#define OVERDRAW_INSPECTOR\n";
|
||||
}
|
||||
return result;
|
||||
}()) {}
|
||||
: defines(2) {
|
||||
defines["DEVICE_PIXEL_RATIO"] = util::toString(pixelRatio, true);
|
||||
if (overdraw) {
|
||||
defines["OVERDRAW_INSPECTOR"] = std::string();
|
||||
}
|
||||
}
|
||||
|
||||
ProgramParameters ProgramParameters::withShaderSource(const ProgramSource& source) const noexcept {
|
||||
assert(gfx::Backend::Type::TYPE_MAX != source.backend);
|
||||
@@ -34,8 +31,19 @@ ProgramParameters ProgramParameters::withDefaultSource(const ProgramSource& sour
|
||||
return params;
|
||||
}
|
||||
|
||||
const std::string& ProgramParameters::getDefines() const {
|
||||
return defines;
|
||||
const std::string& ProgramParameters::getDefinesString() const {
|
||||
if (definesStr.empty() && !defines.empty()) {
|
||||
definesStr.assign(defines.size() * 32, '\0');
|
||||
definesStr.clear();
|
||||
for (const auto& pair : defines) {
|
||||
definesStr.append("#define ").append(pair.first);
|
||||
if (!pair.second.empty()) {
|
||||
definesStr.append(" ").append(pair.second);
|
||||
}
|
||||
definesStr.append("\n");
|
||||
}
|
||||
}
|
||||
return definesStr;
|
||||
}
|
||||
|
||||
const std::string& ProgramParameters::vertexSource(gfx::Backend::Type backend) const {
|
||||
|
||||
Reference in New Issue
Block a user