@@ -66,45 +66,69 @@ class BCN_API protocol_explore
6666 bool handle_get_header (const code& ec, interface::header,
6767 uint8_t version, uint8_t media, std::optional<system::hash_cptr> hash,
6868 std::optional<uint32_t > height) NOEXCEPT;
69- // //bool handle_get_filter(const code& ec, interface::filter,
70- // // uint8_t version, uint8_t media, std::optional<system::hash_cptr> hash,
71- // // std::optional<uint32_t> height) NOEXCEPT;
72- // //bool handle_get_block_txs(const code& ec, interface::block_txs,
73- // // uint8_t version, uint8_t media, std::optional<system::hash_cptr> hash,
74- // // std::optional<uint32_t> height) NOEXCEPT;
75-
76- // //bool handle_get_block_tx(const code& ec, interface::block_tx,
77- // // uint8_t version, uint8_t media, uint32_t position,
78- // // std::optional<system::hash_cptr> hash,
79- // // std::optional<uint32_t> height, bool witness) NOEXCEPT;
80-
69+ bool handle_get_block_txs (const code& ec, interface::block_txs,
70+ uint8_t version, uint8_t media, std::optional<system::hash_cptr> hash,
71+ std::optional<uint32_t > height) NOEXCEPT;
72+ bool handle_get_block_tx (const code& ec, interface::block_tx,
73+ uint8_t version, uint8_t media, uint32_t position,
74+ std::optional<system::hash_cptr> hash,
75+ std::optional<uint32_t > height, bool witness) NOEXCEPT;
8176 bool handle_get_transaction (const code& ec, interface::transaction,
8277 uint8_t version, uint8_t media, const system::hash_cptr& hash,
8378 bool witness) NOEXCEPT;
84- // //bool handle_get_address(const code& ec, interface::address,
85- // // uint8_t version, uint8_t media, const system::hash_cptr& hash) NOEXCEPT;
86-
87- // //bool handle_get_input(const code& ec, interface::input,
88- // // uint8_t version, uint8_t media, const system::hash_cptr& hash,
89- // // std::optional<uint32_t> index) NOEXCEPT;
90- // //bool handle_get_input_script(const code& ec, interface::input_script,
91- // // uint8_t version, uint8_t media, const system::hash_cptr& hash,
92- // // std::optional<uint32_t> index) NOEXCEPT;
93- // //bool handle_get_input_witness(const code& ec, interface::input_witness,
94- // // uint8_t version, uint8_t media, const system::hash_cptr& hash,
95- // // std::optional<uint32_t> index) NOEXCEPT;
96-
97- // //bool handle_get_output(const code& ec, interface::output,
98- // // uint8_t version, uint8_t media, const system::hash_cptr& hash,
99- // // std::optional<uint32_t> index) NOEXCEPT;
100- // //bool handle_get_output_script(const code& ec, interface::output_script,
101- // // uint8_t version, uint8_t media, const system::hash_cptr& hash,
102- // // std::optional<uint32_t> index) NOEXCEPT;
103- // //bool handle_get_output_spender(const code& ec, interface::output_spender,
104- // // uint8_t version, uint8_t media, const system::hash_cptr& hash,
105- // // std::optional<uint32_t> index) NOEXCEPT;
79+ bool handle_get_tx_block (const code& ec, interface::tx_block,
80+ uint8_t version, uint8_t media,
81+ const system::hash_cptr& hash) NOEXCEPT;
82+
83+ bool handle_get_inputs (const code& ec, interface::inputs,
84+ uint8_t version, uint8_t media, const system::hash_cptr& hash,
85+ bool witness) NOEXCEPT;
86+ bool handle_get_input (const code& ec, interface::input,
87+ uint8_t version, uint8_t media, const system::hash_cptr& hash,
88+ uint32_t index, bool witness) NOEXCEPT;
89+ bool handle_get_input_script (const code& ec, interface::input_script,
90+ uint8_t version, uint8_t media, const system::hash_cptr& hash,
91+ uint32_t index) NOEXCEPT;
92+ bool handle_get_input_witness (const code& ec, interface::input_witness,
93+ uint8_t version, uint8_t media, const system::hash_cptr& hash,
94+ uint32_t index) NOEXCEPT;
95+
96+ bool handle_get_outputs (const code& ec, interface::outputs,
97+ uint8_t version, uint8_t media,
98+ const system::hash_cptr& hash) NOEXCEPT;
99+ bool handle_get_output (const code& ec, interface::output,
100+ uint8_t version, uint8_t media, const system::hash_cptr& hash,
101+ uint32_t index) NOEXCEPT;
102+ bool handle_get_output_script (const code& ec, interface::output_script,
103+ uint8_t version, uint8_t media, const system::hash_cptr& hash,
104+ uint32_t index) NOEXCEPT;
105+ bool handle_get_output_spender (const code& ec, interface::output_spender,
106+ uint8_t version, uint8_t media, const system::hash_cptr& hash,
107+ uint32_t index) NOEXCEPT;
108+ bool handle_get_output_spenders (const code& ec, interface::output_spender,
109+ uint8_t version, uint8_t media, const system::hash_cptr& hash,
110+ uint32_t index) NOEXCEPT;
111+
112+ bool handle_get_address (const code& ec, interface::address,
113+ uint8_t version, uint8_t media,
114+ const system::hash_cptr& hash) NOEXCEPT;
115+ bool handle_get_filter (const code& ec, interface::filter, uint8_t version,
116+ uint8_t media, uint8_t type, std::optional<system::hash_cptr> hash,
117+ std::optional<uint32_t > height) NOEXCEPT;
118+ bool handle_get_filter_hash (const code& ec, interface::filter_hash,
119+ uint8_t version, uint8_t media, uint8_t type,
120+ std::optional<system::hash_cptr> hash,
121+ std::optional<uint32_t > height) NOEXCEPT;
122+ bool handle_get_filter_header (const code& ec, interface::filter_header,
123+ uint8_t version, uint8_t media, uint8_t type,
124+ std::optional<system::hash_cptr> hash,
125+ std::optional<uint32_t > height) NOEXCEPT;
106126
107127private:
128+ void send_wire (uint8_t media, system::data_chunk&& data) NOEXCEPT;
129+ database::header_link to_header (const std::optional<uint32_t >& height,
130+ const std::optional<system::hash_cptr>& hash) NOEXCEPT;
131+
108132 dispatcher dispatcher_{};
109133};
110134
0 commit comments