diff --git a/src/spark/sparkwallet.cpp b/src/spark/sparkwallet.cpp index 5f321cf6a1..b4af6b49c9 100644 --- a/src/spark/sparkwallet.cpp +++ b/src/spark/sparkwallet.cpp @@ -400,6 +400,17 @@ CSparkMintMeta CSparkWallet::getMintMeta(const secp_primitives::Scalar& nonce) { return CSparkMintMeta(); } +bool CSparkWallet::getMintAmount(spark::Coin coin, CAmount& amount) { + spark::IdentifiedCoinData identifiedCoinData; + try { + identifiedCoinData = coin.identify(this->viewKey); + } catch (...) { + return false; + } + amount = identifiedCoinData.v; + return true; +} + void CSparkWallet::UpdateSpendState(const GroupElement& lTag, const uint256& lTagHash, const uint256& txHash, bool fUpdateMint) { if (coinMeta.count(lTagHash)) { auto mintMeta = coinMeta[lTagHash]; diff --git a/src/spark/sparkwallet.h b/src/spark/sparkwallet.h index 61190883de..15b4fbc1d1 100644 --- a/src/spark/sparkwallet.h +++ b/src/spark/sparkwallet.h @@ -80,6 +80,8 @@ class CSparkWallet { // get mint tag from nonce CSparkMintMeta getMintMeta(const secp_primitives::Scalar& nonce); + bool getMintAmount(spark::Coin coin, CAmount& amount); + bool isMine(spark::Coin coin) const; bool isMine(const std::vector& lTags) const;