/*------------------------------------------------------------------- VCSignalProtocolAddOn.h ------------------------------------------------------------------- (c) Vector Informatik GmbH. All rights reserved. ------------------------------------------------------------------- */ #include "StdAfx.h" #include "ModbusProtocolAddOn.h" #include "ModbusProtocol.h" //////////////////////////////////////////////////////////////////////// // // Implementation of ModbusProtocolAddOn // //////////////////////////////////////////////////////////////////////// ModbusProtocolAddOn *ModbusProtocolAddOn::sInstance = NULL; //---------------------------------------------------------------------- //! /** */ ModbusProtocolAddOn::ModbusProtocolAddOn() { sInstance = this; } //---------------------------------------------------------------------- //! /** */ ModbusProtocolAddOn& ModbusProtocolAddOn::Instance() { if (sInstance == 0) throw; return *sInstance; } //////////////////////////////////////////////////////////////////////// // IProtocolAddOn //////////////////////////////////////////////////////////////////////// //---------------------------------------------------------------------- //! /** */ VDEF ModbusProtocolAddOn::CreateProtocol( const char /*in*/ *protocolSymbol, NIPB::IProtocol /*out*/ **protocol ) { if (protocol == 0) return NIPB::kInvalidArg; if (protocolSymbol == 0) return NIPB::kInvalidArg; *protocol = new ModbusProtocol(); return NIPB::kOK; } //---------------------------------------------------------------------- //! /** */ VDEF ModbusProtocolAddOn::ReleaseProtocol( NIPB::IProtocol /*in*/ *protocol) { ModbusProtocol *prot = dynamic_cast( protocol ); delete prot; return NIPB::kOK; } //////////////////////////////////////////////////////////////////////// // Public Methods //////////////////////////////////////////////////////////////////////// //---------------------------------------------------------------------- //! /** */ void ModbusProtocolAddOn::Release() { delete this; } //////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////