atm-admin/libs/XMLStorage.h

43 lines
1012 B
C++

//
// Created by skygrow on 5/14/25.
//
#ifndef XMLSTORAGE_H
#define XMLSTORAGE_H
#include "pugixml.hpp"
namespace AtmAdmin {
class XMLStorage {
public:
explicit XMLStorage (std::string search) : m_search(std::move(search)) {
initXMLDoc();
this->m_data ={initAccountNode(m_search)};
this->name ={m_data.child_value("name") };
this->money ={std::stod(m_data.child_value("money"))};
this->pin ={std::stoi(m_data.child_value("pin")) };
}
void initXMLDoc ();
pugi::xml_node initAccountNode (const std::string& toSearch);
std::string name{};
double money{};
int pin{};
// ~XMLStorage() {
// updateXMLData(m_search);
// }
private:
// void updateXMLData (const std::string& toSearch); // Is currently unused.
pugi::xml_document m_doc;
const std::string m_search;
pugi::xml_node m_data;
};
}
#endif //XMLSTORAGE_H