#include <cdevClientService.h>

#ifndef VIRTUAL_SERVICE_API
	#define VIRTUAL_SERVICE_API
#endif

// *****************************************************************************
// * newVirtualService :
// *	This function will be called by the cdevSystem object to create an 
// *	initial instance of the VirtualService.
// *****************************************************************************
extern "C" VIRTUAL_SERVICE_API cdevService * newVirtualService ( char * name, cdevSystem * system );

// *****************************************************************************
// * class VirtualService :
// *	This class simply inherits from the cdevClientService and must define 
// *	only a constructor and destructor.
// *****************************************************************************
class VirtualService : public cdevClientService
{
public:
	VirtualService ( char * name, cdevSystem & system = cdevSystem::defaultSystem());
		
protected:
	int RESULT_CODE_TAG;
	
	virtual ~VirtualService    ( void ) {};
	virtual void fireCallback  ( int status, cdevTranObj &xobj,  cdevData *resultData );
};
