#pragma once #include #include #include "keyring.hpp" #include "output.hpp" namespace db { class Database; } namespace wallet { struct BlockTX; class TransactionScanner { public: TransactionScanner(std::shared_ptr keys, std::shared_ptr db) : wallet_keys(keys), db(db) {} std::vector scan_received(const BlockTX& tx, int64_t height, int64_t timestamp); std::vector scan_spent(const cryptonote::transaction& tx); void set_keys(std::shared_ptr keys); private: std::shared_ptr wallet_keys; std::shared_ptr db; }; } // namespace wallet