Make interface pure C++.

This commit is contained in:
Alejandro Cabeza Romero 2026-02-02 17:27:25 +01:00
parent 3bad03ed4f
commit b2d7712dee
No known key found for this signature in database
GPG Key ID: DA3D14AE478030FD

View File

@ -11,25 +11,19 @@ extern "C" {
} }
#endif #endif
class ILogosBlockchainModule : public QObject, public PluginInterface { class ILogosBlockchainModule {
Q_INTERFACES(PluginInterface)
public: public:
using QObject::QObject; virtual ~ILogosBlockchainModule() = default;
~ILogosBlockchainModule() override = default;
// Logos Core // Logos Core
Q_INVOKABLE virtual void initLogos(LogosAPI* logosAPIInstance) = 0; virtual void initLogos(LogosAPI* logosAPIInstance) = 0;
// Node // Node
Q_INVOKABLE virtual int start(const QString& config_path) = 0; virtual int start(const QString& config_path, const QString& deployment) = 0;
Q_INVOKABLE virtual int stop() = 0; virtual int stop() = 0;
Q_INVOKABLE virtual int subscribe() = 0; virtual int subscribe() = 0;
Q_INVOKABLE virtual int wallet_get_balance(const uint8_t* wallet_address, const HeaderId* optional_tip, BalanceResult* output_balance) = 0; virtual int wallet_get_balance(const uint8_t* wallet_address, const HeaderId* optional_tip, BalanceResult* output_balance) = 0;
Q_INVOKABLE virtual int wallet_transfer_funds(const TransferFundsArguments* transfer_funds_arguments, Hash* output_hash) = 0; virtual int wallet_transfer_funds(const TransferFundsArguments* transfer_funds_arguments, Hash* output_hash) = 0;
signals:
void eventResponse(const QString& eventName, const QVariantList& data);
}; };
#define ILogosBlockchainModule_iid "org.logos.ilogosblockchainmodule" #define ILogosBlockchainModule_iid "org.logos.ilogosblockchainmodule"