|
33 | 33 | #include <bitcoin/server/protocols/protocol_admin.hpp> |
34 | 34 |
|
35 | 35 | #endif |
| 36 | + |
| 37 | +/* |
| 38 | +
|
| 39 | +Network provides the base for all protocols as rpc, http, peer. However node |
| 40 | +and server do not inherit directly from network. Server extends node, but |
| 41 | +neither inherit from network until a subclass is defined (rpc, http, peer). |
| 42 | +Since stratum_v2 is just a stub it doesn't yet have its own subclass. Websocket |
| 43 | +and html are not independent subclasses (operate within http). |
| 44 | +
|
| 45 | +network::protocol |
| 46 | +├── [server:protocol_stratum_v2] |
| 47 | +├── protocol_rpc<Channel> |
| 48 | +│ └── [server::protocol_rpc<server::channel_stratum_v1>] |
| 49 | +│ └── [server::protocol_rpc<server::channel_electrum>] |
| 50 | +├── protocol_http |
| 51 | +│ ├── [server::protocol_bitcoind_rpc] |
| 52 | +│ └── protocol_ws |
| 53 | +│ └── [server::protocol_html] |
| 54 | +└── protocol_peer |
| 55 | + ├── [node::protocol_peer] |
| 56 | + ├── protocol_alert_311 |
| 57 | + ├── protocol_reject_70002 |
| 58 | + ├── protocol_seed_209 |
| 59 | + ├── protocol_address_in_209 |
| 60 | + ├── protocol_address_out_209 |
| 61 | + ├── protocol_ping_106 |
| 62 | + │ └── protocol_ping_60001 |
| 63 | + └── protocol_version_106 |
| 64 | + └── protocol_version_70001 |
| 65 | + └── protocol_version_70002 |
| 66 | + └── protocol_version_70016 |
| 67 | +
|
| 68 | +node::protocol |
| 69 | +├── [server::protocol] |
| 70 | +└── protocol_peer → network::protocol_peer |
| 71 | + ├── protocol_observer |
| 72 | + ├── protocol_filter_out_70015 |
| 73 | + ├── protocol_block_in_106 |
| 74 | + ├── protocol_performer |
| 75 | + │ └── protocol_block_in_31800 |
| 76 | + ├── protocol_block_out_106 |
| 77 | + │ └── protocol_block_out_70012 |
| 78 | + ├── protocol_header_in_31800 |
| 79 | + │ └── protocol_header_in_70012 |
| 80 | + ├── protocol_header_out_31800 |
| 81 | + │ └── protocol_header_out_70012 |
| 82 | + ├── protocol_transaction_in_106 |
| 83 | + └── protocol_transaction_out_106 |
| 84 | +
|
| 85 | +server::protocol → node::protocol |
| 86 | +├── protocol_stratum_v2 → network::protocol |
| 87 | +├── protocol_rpc<channel_stratum_v1> → network::protocol_rpc<channel_stratum_v1> |
| 88 | +│ └── protocol_stratum_v1 |
| 89 | +├── protocol_rpc<channel_electrum> → network::protocol_rpc<channel_electrum> |
| 90 | +│ ├── protocol_electrum |
| 91 | +│ └── protocol_electrum_version |
| 92 | +└── protocol_http |
| 93 | + ├── protocol_html → network::protocol_ws |
| 94 | + │ ├── protocol_admin |
| 95 | + │ └── protocol_native |
| 96 | + └── protocol_bitcoind_rpc → network::protocol_http |
| 97 | + └── protocol_bitcoind_rest |
| 98 | +
|
| 99 | +*/ |
0 commit comments