Removing unused serialization code in CalculatorManager (#858)
This commit is contained in:
parent
06f43ad373
commit
b6f9634e34
@ -681,96 +681,4 @@ namespace CalculationManager
|
|||||||
{
|
{
|
||||||
m_inHistoryItemLoadMode = isHistoryItemLoadMode;
|
m_inHistoryItemLoadMode = isHistoryItemLoadMode;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Serialize Rational to vector of long
|
|
||||||
/// How Rational is serialized :
|
|
||||||
/// Serialized Rational.P(Number) + Serialized Rational.Q(Number)
|
|
||||||
/// How Number is saved :
|
|
||||||
/// [0] = Rational.P.Sign
|
|
||||||
/// [1] = Rational.P.Mantissa.size
|
|
||||||
/// [2] = Rational.P.Exp
|
|
||||||
/// [3] = Rational.P.Mantissa[0]
|
|
||||||
/// [4] = Rational.P.Mantissa[1]
|
|
||||||
/// ...
|
|
||||||
/// [2 + Rational.P.Mantissa.size] = Rational.P.Mantissa[size - 1]
|
|
||||||
/// </summary>
|
|
||||||
/// <param name = "rat">Rational number to be serialized</param>
|
|
||||||
vector<long> CalculatorManager::SerializeRational(Rational const& rat)
|
|
||||||
{
|
|
||||||
vector<long> serializedRational{};
|
|
||||||
|
|
||||||
auto serialP = SerializeNumber(rat.P());
|
|
||||||
serializedRational.insert(serializedRational.end(), serialP.begin(), serialP.end());
|
|
||||||
|
|
||||||
auto serialQ = SerializeNumber(rat.Q());
|
|
||||||
serializedRational.insert(serializedRational.end(), serialQ.begin(), serialQ.end());
|
|
||||||
|
|
||||||
return serializedRational;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// DeserializeRational vector and construct a Rational
|
|
||||||
/// How Rational is serialized :
|
|
||||||
/// Serialized Rational.P(Number) + Serialized Rational.Q(Number)
|
|
||||||
/// </summary>
|
|
||||||
Rational CalculatorManager::DeSerializeRational(vector<long>::const_iterator itr)
|
|
||||||
{
|
|
||||||
auto p = DeSerializeNumber(itr);
|
|
||||||
auto q = DeSerializeNumber(itr + SERIALIZED_NUMBER_MINSIZE + p.Mantissa().size());
|
|
||||||
|
|
||||||
return Rational(p, q);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Serialize Number to vector of long
|
|
||||||
/// How Number is saved :
|
|
||||||
/// [0] = Number.Sign
|
|
||||||
/// [1] = Number.Mantissa.size
|
|
||||||
/// [2] = Number.Exp
|
|
||||||
/// [3] = Number.Mantissa[0]
|
|
||||||
/// [4] = Number.Mantissa[1]
|
|
||||||
/// ...
|
|
||||||
/// [2 + Number.Mantissa.size] = Number.Mantissa[size - 1]
|
|
||||||
/// </summary>
|
|
||||||
/// <param name = "num">Number to be serialized</param>
|
|
||||||
vector<long> CalculatorManager::SerializeNumber(Number const& num)
|
|
||||||
{
|
|
||||||
vector<long> serializedNumber{};
|
|
||||||
|
|
||||||
serializedNumber.push_back(num.Sign());
|
|
||||||
serializedNumber.push_back(static_cast<long>(num.Mantissa().size()));
|
|
||||||
serializedNumber.push_back(num.Exp());
|
|
||||||
for (auto const& digit : num.Mantissa())
|
|
||||||
{
|
|
||||||
serializedNumber.push_back(digit);
|
|
||||||
}
|
|
||||||
|
|
||||||
return serializedNumber;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// DeserializeNumber vector and construct a Number
|
|
||||||
/// How Number is saved :
|
|
||||||
/// [0] = Number.Sign
|
|
||||||
/// [1] = Number.Mantissa.size
|
|
||||||
/// [2] = Number.Exp
|
|
||||||
/// [3] = Number.Mantissa[0]
|
|
||||||
/// [4] = Number.Mantissa[1]
|
|
||||||
/// ...
|
|
||||||
/// [2 + Number.Mantissa.size] = Number.Mantissa[size - 1]
|
|
||||||
/// </summary>
|
|
||||||
Number CalculatorManager::DeSerializeNumber(vector<long>::const_iterator itr)
|
|
||||||
{
|
|
||||||
int32_t sign = *itr;
|
|
||||||
uint32_t size = *(itr + 1);
|
|
||||||
int32_t exp = *(itr + 2);
|
|
||||||
vector<uint32_t> mant{};
|
|
||||||
for (size_t i = 0; i < size; ++i)
|
|
||||||
{
|
|
||||||
mant.emplace_back(*(itr + 3 + i));
|
|
||||||
}
|
|
||||||
|
|
||||||
return Number{ sign, exp, mant };
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -76,12 +76,6 @@ namespace CalculationManager
|
|||||||
|
|
||||||
void LoadPersistedPrimaryValue();
|
void LoadPersistedPrimaryValue();
|
||||||
|
|
||||||
static std::vector<long> SerializeRational(CalcEngine::Rational const& rat);
|
|
||||||
static CalcEngine::Rational DeSerializeRational(std::vector<long>::const_iterator itr);
|
|
||||||
|
|
||||||
static std::vector<long> SerializeNumber(CalcEngine::Number const& num);
|
|
||||||
static CalcEngine::Number DeSerializeNumber(std::vector<long>::const_iterator itr);
|
|
||||||
|
|
||||||
std::shared_ptr<CalculatorHistory> m_pStdHistory;
|
std::shared_ptr<CalculatorHistory> m_pStdHistory;
|
||||||
std::shared_ptr<CalculatorHistory> m_pSciHistory;
|
std::shared_ptr<CalculatorHistory> m_pSciHistory;
|
||||||
CalculatorHistory* m_pHistory;
|
CalculatorHistory* m_pHistory;
|
||||||
|
Loading…
Reference in New Issue
Block a user