1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- // ECOin - Copyright (c) - 2014/2022 - GPLv3 - epsylon@riseup.net (https://03c8.net)
- #ifndef COINCONTROL_H
- #define COINCONTROL_H
- class CCoinControl
- {
- public:
- CTxDestination destChange;
- CCoinControl()
- {
- SetNull();
- }
-
- void SetNull()
- {
- destChange = CNoDestination();
- setSelected.clear();
- }
-
- bool HasSelected() const
- {
- return (setSelected.size() > 0);
- }
-
- bool IsSelected(const uint256& hash, unsigned int n) const
- {
- COutPoint outpt(hash, n);
- return (setSelected.count(outpt) > 0);
- }
-
- void Select(COutPoint& output)
- {
- setSelected.insert(output);
- }
-
- void UnSelect(COutPoint& output)
- {
- setSelected.erase(output);
- }
-
- void UnSelectAll()
- {
- setSelected.clear();
- }
- void ListSelected(std::vector<COutPoint>& vOutpoints)
- {
- vOutpoints.assign(setSelected.begin(), setSelected.end());
- }
-
- private:
- std::set<COutPoint> setSelected;
- };
- #endif // COINCONTROL_H
|