Files
logos-cpp-sdk/cpp/logos_transport_factory.h
Iuri MatiasandLogos Workspace 4197ee1830 Finish Abstraction & Refactor (Ongoing) - part 1 (#25)
* refactor: abstract connection/transport; and clearly separate qt remote obj and qt local into separate implementations

* abstract qt remote registry

* add mock implementation; these serves to further test the abstraction but also useful for testing modules later

* use LogosObject instead of QObject

* abstract provider side

* updates to use new api

* re-add async api back

---------

Co-authored-by: Logos Workspace <logos@workspace.local>
2026-03-23 11:45:25 -04:00

29 lines
867 B
C++

#ifndef LOGOS_TRANSPORT_FACTORY_H
#define LOGOS_TRANSPORT_FACTORY_H
#include <memory>
#include <QString>
class LogosTransportHost;
class LogosTransportConnection;
namespace LogosTransportFactory {
/**
* @brief Create the appropriate transport host for the current mode
* @param registryUrl The URL used by the remote transport (ignored in local mode)
* @return Owning pointer to the transport host
*/
std::unique_ptr<LogosTransportHost> createHost(const QString& registryUrl);
/**
* @brief Create the appropriate transport connection for the current mode
* @param registryUrl The URL to connect to (ignored in local mode)
* @return Owning pointer to the transport connection
*/
std::unique_ptr<LogosTransportConnection> createConnection(const QString& registryUrl);
}
#endif // LOGOS_TRANSPORT_FACTORY_H