text: /*
     Copyright 2021 Kai Huebl (kai@huebl-sgh.de)
  
     Lizenziert gemäß Apache Licence Version 2.0 (die „Lizenz“); Nutzung dieser
     Datei nur in Übereinstimmung mit der Lizenz erlaubt.
     Eine Kopie der Lizenz erhalten Sie auf http://www.apache.org/licenses/LICENSE-2.0.
  
     Sofern nicht gemäß geltendem Recht vorgeschrieben oder schriftlich vereinbart,
     erfolgt die Bereitstellung der im Rahmen der Lizenz verbreiteten Software OHNE
     GEWÄHR ODER VORBEHALTE – ganz gleich, ob ausdrücklich oder stillschweigend.
  
     Informationen über die jeweiligen Bedingungen für Genehmigungen und Einschränkungen
     im Rahmen der Lizenz finden Sie in der Lizenz.
  
     Autor: Kai Huebl (kai@huebl-sgh.de)
   */
  
  #ifndef __Modbus_ModbusRTUTrx_h__
  #define __Modbus_ModbusRTUTrx_h__
  
  #include "Modbus/Modbus/ModbusTrx.h"
  
  namespace Modbus
  {
  
  	class ModbusRTUTrx
  	: public ModbusTrx
  	{
  	  public:
  
  		using SPtr = boost::shared_ptr<ModbusRTUTrx>;
  
  		ModbusRTUTrx(ModbusFunction modbusFunction);
  		virtual ~ModbusRTUTrx(void);
  
  		void slave(uint8_t slave);
  		uint8_t slave(void);
  
  		virtual void handleEvent(const boost::system::error_code& ec, const ModbusRTUTrx::SPtr& modbusTrx) {};
  
  	  private:
  		uint8_t slave_ = 0;
  	};
  
  }
  
  #endif
  