X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Flayout.cpp;h=1589ee97b05088c1b11e18b100b8fce2fc6da6af;hb=50acc3dd3ce9a5920cbd4b4ca8e4be3157eb6433;hp=6a77cda95171d84b82f003592d8ca037d3c4dae9;hpb=bc55aaf18c56a82ee3d12b8ba2a6d7f452dbda2c;p=staging%2Fwindowmanager.git diff --git a/src/layout.cpp b/src/layout.cpp index 6a77cda..1589ee9 100644 --- a/src/layout.cpp +++ b/src/layout.cpp @@ -1,47 +1,17 @@ -// -// Created by mfritzsc on 6/27/17. -// +/* + * Copyright (C) 2017 Mentor Graphics Development (Deutschland) GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ -#include "json_helper.hpp" #include "layout.hpp" - -namespace wm { - -surface_id_to_layer::surface_id_to_layer(nlohmann::json const &j) { - DB(j); - if (j["type"] == "range") { - this->id_min = get(j["first_surface_id"]); - this->id_max = get(j["last_surface_id"]); - } else { - this->id_min = this->id_max = get(j["surface_id"]); - } - this->name = j["name"].get(); - this->layer_id = get(j["layer_id"]); -} - -struct result to_surface_id_to_layer_map( - nlohmann::json const &j) { - DB(j); - try { - surface_id_to_layer_map stl{}; - std::transform( - std::cbegin(j), std::cend(j), - std::inserter(stl.mapping, stl.mapping.end()), - [](nlohmann::json const &j) { return surface_id_to_layer(j); }); - for (auto i : stl.mapping) { - if (i.name.empty()) { - return Err( - "Found mapping w/o name"); - } - if (i.layer_id == -1 || i.id_min == -1 || i.id_max == -1) { - return Err( - "Found invalid/unset IDs in mapping"); - } - } - return Ok(stl); - } catch (std::exception &e) { - return Err(e.what()); - } -} - -} // namespace wm \ No newline at end of file