53 lines
1.4 KiB
C
53 lines
1.4 KiB
C
|
/*-------------------------------------------------------------------
|
||
|
VCSignalProtocolAddOn.h
|
||
|
-------------------------------------------------------------------
|
||
|
|
||
|
(c) Vector Informatik GmbH. All rights reserved.
|
||
|
|
||
|
------------------------------------------------------------------- */
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
////////////////////////////////////////////////////////////////////////
|
||
|
////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
/*--------------------------------------------------------------------*/
|
||
|
//! Factory for the VCSignalProtocol
|
||
|
/*!
|
||
|
This class is registered at the NIPB::IAddOnRegistrar registrar. It
|
||
|
is responsible to create a instance of the VCSignalProtocol, when needed.
|
||
|
*/
|
||
|
class VCSignalProtocolAddOn :
|
||
|
public NIPB::IProtocolAddOn
|
||
|
{
|
||
|
//
|
||
|
// Construction
|
||
|
//
|
||
|
public:
|
||
|
VCSignalProtocolAddOn();
|
||
|
|
||
|
static VCSignalProtocolAddOn& Instance();
|
||
|
|
||
|
//
|
||
|
// IProtocolAddOn
|
||
|
//
|
||
|
public:
|
||
|
VDECL CreateProtocol( const char /*in*/ *protocolSymbol, NIPB::IProtocol /*out*/ **protocol );
|
||
|
VDECL ReleaseProtocol( NIPB::IProtocol /*in*/ *protocol);
|
||
|
|
||
|
//
|
||
|
// Methods
|
||
|
//
|
||
|
public:
|
||
|
void Release();
|
||
|
|
||
|
//
|
||
|
// Attributes
|
||
|
//
|
||
|
private:
|
||
|
static VCSignalProtocolAddOn *sInstance;
|
||
|
};
|
||
|
|
||
|
////////////////////////////////////////////////////////////////////////
|
||
|
////////////////////////////////////////////////////////////////////////
|