1 /*! 2 * \brief Implementation of \ref Reader for smartphone as card reader (SaC). 3 * 4 * \copyright Copyright (c) 2017-2021 Governikus GmbH & Co. KG, Germany 5 */ 6 7 #pragma once 8 9 #include "messages/IfdStatus.h" 10 #include "Reader.h" 11 #include "RemoteCard.h" 12 #include "RemoteDispatcherClient.h" 13 14 #include <QScopedPointer> 15 #include <QSharedPointer> 16 17 18 namespace governikus 19 { 20 21 class RemoteReader 22 : public Reader 23 { 24 Q_OBJECT 25 26 private: 27 QScopedPointer<RemoteCard, QScopedPointerDeleteLater> mCard; 28 const QSharedPointer<RemoteDispatcherClient> mRemoteDispatcher; 29 30 CardEvent updateCard() override; 31 32 public: 33 RemoteReader(const QString& pReaderName, const QSharedPointer<RemoteDispatcherClient>& pRemoteDispatcher, const IfdStatus& pIfdStatus); 34 ~RemoteReader() override; 35 36 [[nodiscard]] Card* getCard() const override; 37 38 void updateStatus(const IfdStatus& pIfdStatus); 39 }; 40 41 } // namespace governikus 42