#pragma once
#include <myapp/modbus/rawrtuclient.h>
#include "context.h"

namespace myapp::modbus {

class raw_rtu_client_impl
	: public raw_rtu_client
{
public:
	explicit raw_rtu_client_impl(std::shared_ptr<logging::logger> logger, context ctx);
	~raw_rtu_client_impl();

	void connect() override;

	std::unique_ptr<raw_data> request(raw_data&) override;

private:
	context ctx_;
	std::shared_ptr<logging::logger> logger_;
};
	
} /* namespace myapp::modbus */
