Bitcoin ABC  0.29.2
P2P Digital Currency
outputtype.h
Go to the documentation of this file.
1 // Copyright (c) 2009-2010 Satoshi Nakamoto
2 // Copyright (c) 2009-2017 The Bitcoin Core developers
3 // Distributed under the MIT software license, see the accompanying
4 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
5 
6 #ifndef BITCOIN_OUTPUTTYPE_H
7 #define BITCOIN_OUTPUTTYPE_H
8 
10 #include <script/standard.h>
11 
12 #include <array>
13 #include <string>
14 #include <vector>
15 
16 enum class OutputType { LEGACY };
17 
18 extern const std::array<OutputType, 1> OUTPUT_TYPES;
19 
20 [[nodiscard]] bool ParseOutputType(const std::string &str,
21  OutputType &output_type);
22 const std::string &FormatOutputType(OutputType type);
23 
29 
33 std::vector<CTxDestination> GetAllDestinationsForKey(const CPubKey &key);
34 
41  const CScript &script, OutputType);
42 
43 #endif // BITCOIN_OUTPUTTYPE_H
An encapsulated public key.
Definition: pubkey.h:31
Serialized script, used inside transaction inputs and outputs.
Definition: script.h:431
Fillable signing provider that keeps keys in an address->secret map.
const std::string & FormatOutputType(OutputType type)
Definition: outputtype.cpp:27
OutputType
Definition: outputtype.h:16
bool ParseOutputType(const std::string &str, OutputType &output_type)
Definition: outputtype.cpp:19
std::vector< CTxDestination > GetAllDestinationsForKey(const CPubKey &key)
Get all destinations (potentially) supported by the wallet for the given key.
Definition: outputtype.cpp:43
CTxDestination GetDestinationForKey(const CPubKey &key, OutputType)
Get a destination of the requested type (if possible) to the specified key.
Definition: outputtype.cpp:35
const std::array< OutputType, 1 > OUTPUT_TYPES
Definition: outputtype.cpp:17
CTxDestination AddAndGetDestinationForScript(FillableSigningProvider &keystore, const CScript &script, OutputType)
Get a destination of the requested type (if possible) to the specified script.
Definition: outputtype.cpp:49
std::variant< CNoDestination, PKHash, ScriptHash > CTxDestination
A txout script template with a specific destination.
Definition: standard.h:85