Changeset View
Changeset View
Standalone View
Standalone View
extern/draco/draco/src/draco/metadata/geometry_metadata.cc
- This file was moved from extern/draco/dracoenc/src/draco/metadata/geometry_metadata.cc.
| // Copyright 2017 The Draco Authors. | // Copyright 2017 The Draco Authors. | ||||
| // | // | ||||
| // Licensed under the Apache License, Version 2.0 (the "License"); | // Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| // you may not use this file except in compliance with the License. | // you may not use this file except in compliance with the License. | ||||
| // You may obtain a copy of the License at | // You may obtain a copy of the License at | ||||
| // | // | ||||
| // http://www.apache.org/licenses/LICENSE-2.0 | // http://www.apache.org/licenses/LICENSE-2.0 | ||||
| // | // | ||||
| // Unless required by applicable law or agreed to in writing, software | // Unless required by applicable law or agreed to in writing, software | ||||
| // distributed under the License is distributed on an "AS IS" BASIS, | // distributed under the License is distributed on an "AS IS" BASIS, | ||||
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| // See the License for the specific language governing permissions and | // See the License for the specific language governing permissions and | ||||
| // limitations under the License. | // limitations under the License. | ||||
| // | // | ||||
| #include "draco/metadata/geometry_metadata.h" | #include "draco/metadata/geometry_metadata.h" | ||||
| #include <utility> | #include <utility> | ||||
| namespace draco { | namespace draco { | ||||
| const AttributeMetadata *GeometryMetadata::GetAttributeMetadataByStringEntry( | const AttributeMetadata *GeometryMetadata::GetAttributeMetadataByStringEntry( | ||||
| const std::string &entry_name, const std::string &entry_value) const { | const std::string &entry_name, const std::string &entry_value) const { | ||||
| for (auto &&att_metadata : att_metadatas_) { | for (auto &&att_metadata : att_metadatas_) { | ||||
| std::string value; | std::string value; | ||||
| if (!att_metadata->GetEntryString(entry_name, &value)) | if (!att_metadata->GetEntryString(entry_name, &value)) { | ||||
| continue; | continue; | ||||
| if (value == entry_value) | } | ||||
| if (value == entry_value) { | |||||
| return att_metadata.get(); | return att_metadata.get(); | ||||
| } | } | ||||
| } | |||||
| // No attribute has the requested entry. | // No attribute has the requested entry. | ||||
| return nullptr; | return nullptr; | ||||
| } | } | ||||
| bool GeometryMetadata::AddAttributeMetadata( | bool GeometryMetadata::AddAttributeMetadata( | ||||
| std::unique_ptr<AttributeMetadata> att_metadata) { | std::unique_ptr<AttributeMetadata> att_metadata) { | ||||
| if (!att_metadata.get()) | if (!att_metadata.get()) { | ||||
| return false; | return false; | ||||
| } | |||||
| att_metadatas_.push_back(std::move(att_metadata)); | att_metadatas_.push_back(std::move(att_metadata)); | ||||
| return true; | return true; | ||||
| } | } | ||||
| } // namespace draco | } // namespace draco | ||||