Removing unused serialization code in CalculatorManager (#858)

This commit is contained in:
Scott Freeman 2019-12-10 17:32:00 -05:00 committed by Matt Cooley
parent 06f43ad373
commit b6f9634e34
2 changed files with 0 additions and 98 deletions

View File

@ -681,96 +681,4 @@ namespace CalculationManager
{
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 };
}
}

View File

@ -76,12 +76,6 @@ namespace CalculationManager
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_pSciHistory;
CalculatorHistory* m_pHistory;