From 76df1de5e2307229da9870306e4a1031170aaadf Mon Sep 17 00:00:00 2001 From: Thales Lima Oliveira Date: Thu, 4 Jan 2018 19:11:08 -0200 Subject: Control elements file handling reorganized --- Project/Exponential.cpp | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) (limited to 'Project/Exponential.cpp') diff --git a/Project/Exponential.cpp b/Project/Exponential.cpp index a021854..4a04bbe 100644 --- a/Project/Exponential.cpp +++ b/Project/Exponential.cpp @@ -131,7 +131,7 @@ void Exponential::SetValues(double aValue, double bValue) bool Exponential::Solve(double* input, double timeStep) { - if(!input){ + if(!input) { m_output = 0.0; return true; } @@ -145,3 +145,33 @@ Element* Exponential::GetCopy() *copy = *this; return copy; } + +void Exponential::SaveElement(rapidxml::xml_document<>& doc, rapidxml::xml_node<>* elementListNode) +{ + auto elementNode = XMLParser::AppendNode(doc, elementListNode, "Exponential"); + XMLParser::SetNodeAttribute(doc, elementNode, "ID", m_elementID); + + SaveCADProperties(doc, elementNode); + SaveControlNodes(doc, elementNode); + + auto value = XMLParser::AppendNode(doc, elementNode, "Value"); + auto aValue = XMLParser::AppendNode(doc, value, "A"); + XMLParser::SetNodeValue(doc, aValue, m_aValue); + auto bValue = XMLParser::AppendNode(doc, value, "B"); + XMLParser::SetNodeValue(doc, bValue, m_bValue); +} + +bool Exponential::OpenElement(rapidxml::xml_node<>* elementNode) +{ + if(!OpenCADProperties(elementNode)) return false; + if(!OpenControlNodes(elementNode)) return false; + + // Element properties + auto value = elementNode->first_node("Value"); + m_aValue = XMLParser::GetNodeValueDouble(value, "A"); + m_bValue = XMLParser::GetNodeValueDouble(value, "B"); + + StartMove(m_position); + UpdatePoints(); + return true; +} -- cgit From c11a42ee83fcf535557d4f2cc259efae2da1b7ff Mon Sep 17 00:00:00 2001 From: Thales Lima Oliveira Date: Mon, 8 Jan 2018 20:07:47 -0200 Subject: File handling and control initialization organized --- Project/Exponential.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'Project/Exponential.cpp') diff --git a/Project/Exponential.cpp b/Project/Exponential.cpp index 4a04bbe..136a2fa 100644 --- a/Project/Exponential.cpp +++ b/Project/Exponential.cpp @@ -146,7 +146,7 @@ Element* Exponential::GetCopy() return copy; } -void Exponential::SaveElement(rapidxml::xml_document<>& doc, rapidxml::xml_node<>* elementListNode) +rapidxml::xml_node<>* Exponential::SaveElement(rapidxml::xml_document<>& doc, rapidxml::xml_node<>* elementListNode) { auto elementNode = XMLParser::AppendNode(doc, elementListNode, "Exponential"); XMLParser::SetNodeAttribute(doc, elementNode, "ID", m_elementID); @@ -159,6 +159,8 @@ void Exponential::SaveElement(rapidxml::xml_document<>& doc, rapidxml::xml_node< XMLParser::SetNodeValue(doc, aValue, m_aValue); auto bValue = XMLParser::AppendNode(doc, value, "B"); XMLParser::SetNodeValue(doc, bValue, m_bValue); + + return elementNode; } bool Exponential::OpenElement(rapidxml::xml_node<>* elementNode) -- cgit