mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-11-24 10:22:19 -05:00
Add Alternate Headers XML logger (#4207)
This commit is contained in:
parent
f99993af85
commit
839fcffe17
@ -17,6 +17,7 @@ std::shared_ptr<Ship::IResource> SetAlternateHeadersFactory::ReadResource(std::s
|
||||
auto headerName = reader->ReadString();
|
||||
if (!headerName.empty()) {
|
||||
setAlternateHeaders->headers.push_back(std::static_pointer_cast<Scene>(Ship::Context::GetInstance()->GetResourceManager()->LoadResourceProcess(headerName.c_str())));
|
||||
setAlternateHeaders->headerFileNames.push_back(headerName);
|
||||
} else {
|
||||
setAlternateHeaders->headers.push_back(nullptr);
|
||||
}
|
||||
@ -41,7 +42,7 @@ std::shared_ptr<Ship::IResource> SetAlternateHeadersFactoryXML::ReadResource(std
|
||||
std::string childName = child->Name();
|
||||
if (childName == "AlternateHeader") {
|
||||
for (uint32_t i = 0; i < setAlternateHeaders->numHeaders; i++) {
|
||||
auto headerName = std::string(child->Attribute("HeaderName"));
|
||||
auto headerName = std::string(child->Attribute("Path"));
|
||||
if (!headerName.empty()) {
|
||||
setAlternateHeaders->headers.push_back(std::static_pointer_cast<Scene>(Ship::Context::GetInstance()->GetResourceManager()->LoadResourceProcess(headerName.c_str())));
|
||||
} else {
|
||||
|
@ -73,6 +73,12 @@ void LogAlternateHeadersAsXML(std::shared_ptr<Ship::IResource> resource) {
|
||||
tinyxml2::XMLElement* root = doc.NewElement("SetAlternateHeaders");
|
||||
doc.InsertFirstChild(root);
|
||||
|
||||
for (size_t i = 0; i < setAlternateHeaders->headerFileNames.size(); i++) {
|
||||
tinyxml2::XMLElement* entry = doc.NewElement("Header");
|
||||
entry->SetAttribute("Path", setAlternateHeaders->headerFileNames[i].c_str());
|
||||
root->InsertEndChild(entry);
|
||||
}
|
||||
|
||||
tinyxml2::XMLPrinter printer;
|
||||
doc.Accept(&printer);
|
||||
|
||||
|
@ -21,6 +21,7 @@ class SetAlternateHeaders : public SceneCommand<void> {
|
||||
size_t GetPointerSize();
|
||||
|
||||
uint32_t numHeaders;
|
||||
std::vector<std::string> headerFileNames;
|
||||
std::vector<std::shared_ptr<Scene>> headers;
|
||||
};
|
||||
}; // namespace LUS
|
||||
|
Loading…
Reference in New Issue
Block a user