2026-01-30 19:21:23 +01:00
|
|
|
#ifndef I_LOGOS_BLOCKCHAIN_MODULE_API_H
|
|
|
|
|
#define I_LOGOS_BLOCKCHAIN_MODULE_API_H
|
2025-12-17 10:55:13 +01:00
|
|
|
|
2026-02-16 23:14:26 +01:00
|
|
|
#include <QString>
|
2026-02-16 16:15:04 +01:00
|
|
|
#include <core/interface.h>
|
2026-01-22 23:36:47 +01:00
|
|
|
|
2026-02-02 17:27:25 +01:00
|
|
|
class ILogosBlockchainModule {
|
2025-12-17 10:55:13 +01:00
|
|
|
public:
|
2026-02-02 17:27:25 +01:00
|
|
|
virtual ~ILogosBlockchainModule() = default;
|
2025-12-17 10:55:13 +01:00
|
|
|
|
2026-01-22 23:36:47 +01:00
|
|
|
// Logos Core
|
2026-02-02 17:27:25 +01:00
|
|
|
virtual void initLogos(LogosAPI* logosAPIInstance) = 0;
|
2025-12-17 10:55:13 +01:00
|
|
|
|
2026-01-22 23:36:47 +01:00
|
|
|
// Node
|
2026-02-20 13:56:29 +01:00
|
|
|
virtual int generate_user_config(const QVariantMap& args) = 0;
|
|
|
|
|
virtual int generate_user_config_from_str(const QString& args) = 0;
|
2026-02-02 17:27:25 +01:00
|
|
|
virtual int start(const QString& config_path, const QString& deployment) = 0;
|
|
|
|
|
virtual int stop() = 0;
|
2026-02-16 23:14:26 +01:00
|
|
|
virtual QString wallet_get_balance(const QString& addressHex) = 0;
|
|
|
|
|
virtual QString wallet_transfer_funds(
|
2026-02-20 13:56:29 +01:00
|
|
|
const QString& changePublicKey,
|
|
|
|
|
const QStringList& senderAddresses,
|
|
|
|
|
const QString& recipientAddress,
|
|
|
|
|
const QString& amount,
|
|
|
|
|
const QString& optionalTipHex
|
|
|
|
|
) = 0;
|
2026-02-16 23:14:26 +01:00
|
|
|
virtual QStringList wallet_get_known_addresses() = 0;
|
2026-04-17 11:01:18 +02:00
|
|
|
virtual int blend_join_as_core_node(
|
|
|
|
|
const QString& providerIdHex,
|
|
|
|
|
const QString& zkIdHex,
|
|
|
|
|
const QString& lockedNoteIdHex,
|
|
|
|
|
const QStringList& locators
|
|
|
|
|
) = 0;
|
2026-04-17 16:08:25 +02:00
|
|
|
|
|
|
|
|
// Explorer
|
|
|
|
|
virtual QString get_block(const QString& headerIdHex) = 0;
|
|
|
|
|
virtual QString get_blocks(quint64 fromSlot, quint64 toSlot) = 0;
|
|
|
|
|
virtual QString get_transaction(const QString& txHashHex) = 0;
|
|
|
|
|
virtual QString get_cryptarchia_info() = 0;
|
2025-12-17 10:55:13 +01:00
|
|
|
};
|
2025-12-19 15:53:41 +01:00
|
|
|
|
2026-01-30 19:21:23 +01:00
|
|
|
#define ILogosBlockchainModule_iid "org.logos.ilogosblockchainmodule"
|
|
|
|
|
Q_DECLARE_INTERFACE(ILogosBlockchainModule, ILogosBlockchainModule_iid)
|
2025-12-19 15:53:41 +01:00
|
|
|
|
|
|
|
|
#endif
|