Use signals/slots to prevent QObject lifetime issues

This commit is contained in:
Dan Paulat 2022-02-13 16:19:47 -06:00
parent 9b90189566
commit a47460842b
7 changed files with 125 additions and 41 deletions

View file

@ -0,0 +1,39 @@
#pragma once
#include <scwx/wsr88d/nexrad_file.hpp>
#include <memory>
#include <QObject>
namespace scwx
{
namespace qt
{
namespace request
{
class NexradFileRequestImpl;
class NexradFileRequest : public QObject
{
Q_OBJECT
public:
explicit NexradFileRequest();
~NexradFileRequest();
std::shared_ptr<wsr88d::NexradFile> nexrad_file() const;
void set_nexrad_file(std::shared_ptr<wsr88d::NexradFile> nexradFile);
private:
std::unique_ptr<NexradFileRequestImpl> p;
signals:
void RequestComplete(std::shared_ptr<NexradFileRequest> request);
};
} // namespace request
} // namespace qt
} // namespace scwx