#ifndef __PORTABLESCANNER_CLIENT_G_H #define __PORTABLESCANNER_CLIENT_G_H #pragma once // This code is generated by spgen tool! #include "PortableScanner_def_g.h" namespace PortableScanner { class PortableScannerService_ClientBase : public CClientSessionBase { public: explicit PortableScannerService_ClientBase(CEntityBase *pEntity) : m_pEntityBase(pEntity), m_bSysManaged(false) {} PortableScannerService_ClientBase* operator () (const linkContext &curLink) { m_context = curLink; return this; } protected: virtual ~PortableScannerService_ClientBase() { /// override by user } public: void OnConnectSucceed() { bSessionClosed = false; } void OnClose(ErrorCodeEnum) { Dbg("session closed."); bSessionClosed = true; } bool QuerySessionClosed() { return bSessionClosed; } ErrorCodeEnum Connect(CSmartPointer &spAsyncWait) { CSmartPointer pFunc = m_pEntityBase->GetFunction(); ErrorCodeEnum Error = pFunc->ConnectRemoteEntity(this, "PortableScanner", "PortableScannerService", spAsyncWait); if (Error == Error_Succeed) { m_bSysManaged = true; bSessionClosed = false; } return Error; } ErrorCodeEnum Connect() { CSmartPointer spAsyncWait; ErrorCodeEnum Error = Connect(spAsyncWait); if (Error == Error_Succeed) { Error = spAsyncWait->WaitAnswer(); } return Error; } ErrorCodeEnum BindCameraDevice(PortableScannerService_BindCameraDevice_Req &Req, CSmartPointer &spAsyncWait, DWORD dwTimeout) { CSmartPointer pFunc = GetFunction(); CAutoBuffer Buf = SpObject2Buffer(Req); auto ret = pFunc->AsyncRequest(PortableScannerService_Method_BindCameraDevice, PortableScannerService_MethodSignature_BindCameraDevice, Buf, spAsyncWait, m_context, dwTimeout); m_context.clear(); return ret; } ErrorCodeEnum BindCameraDevice(PortableScannerService_BindCameraDevice_Req &Req, PortableScannerService_BindCameraDevice_Ans &Ans, DWORD dwTimeout) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = BindCameraDevice(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum BindCameraDevice(PortableScannerService_BindCameraDevice_Req &Req, PortableScannerService_BindCameraDevice_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = BindCameraDevice(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum DropOffDevice() { CSmartPointer pFunc = GetFunction(); return pFunc->OnewayCall(PortableScannerService_Method_DropOffDevice, PortableScannerService_MethodSignature_DropOffDevice, m_context); } ErrorCodeEnum StartPreview(PortableScannerService_StartPreview_Req &Req, CSmartPointer &spAsyncWait, DWORD dwTimeout) { CSmartPointer pFunc = GetFunction(); CAutoBuffer Buf = SpObject2Buffer(Req); auto ret = pFunc->AsyncRequest(PortableScannerService_Method_StartPreview, PortableScannerService_MethodSignature_StartPreview, Buf, spAsyncWait, m_context, dwTimeout); m_context.clear(); return ret; } ErrorCodeEnum StartPreview(PortableScannerService_StartPreview_Req &Req, PortableScannerService_StartPreview_Ans &Ans, DWORD dwTimeout) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = StartPreview(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum StartPreview(PortableScannerService_StartPreview_Req &Req, PortableScannerService_StartPreview_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = StartPreview(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum CancelPreview(PortableScannerService_CancelPreview_Req &Req, CSmartPointer &spAsyncWait, DWORD dwTimeout) { CSmartPointer pFunc = GetFunction(); CAutoBuffer Buf = SpObject2Buffer(Req); auto ret = pFunc->AsyncRequest(PortableScannerService_Method_CancelPreview, PortableScannerService_MethodSignature_CancelPreview, Buf, spAsyncWait, m_context, dwTimeout); m_context.clear(); return ret; } ErrorCodeEnum CancelPreview(PortableScannerService_CancelPreview_Req &Req, PortableScannerService_CancelPreview_Ans &Ans, DWORD dwTimeout) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = CancelPreview(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum CancelPreview(PortableScannerService_CancelPreview_Req &Req, PortableScannerService_CancelPreview_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = CancelPreview(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum ScanImage(PortableScannerService_ScanImage_Req &Req, CSmartPointer &spAsyncWait, DWORD dwTimeout) { CSmartPointer pFunc = GetFunction(); CAutoBuffer Buf = SpObject2Buffer(Req); auto ret = pFunc->AsyncRequest(PortableScannerService_Method_ScanImage, PortableScannerService_MethodSignature_ScanImage, Buf, spAsyncWait, m_context, dwTimeout); m_context.clear(); return ret; } ErrorCodeEnum ScanImage(PortableScannerService_ScanImage_Req &Req, PortableScannerService_ScanImage_Ans &Ans, DWORD dwTimeout) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = ScanImage(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum ScanImage(PortableScannerService_ScanImage_Req &Req, PortableScannerService_ScanImage_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = ScanImage(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum ScanImageEx(PortableScannerService_ScanImageEx_Req &Req, CSmartPointer &spAsyncWait, DWORD dwTimeout) { CSmartPointer pFunc = GetFunction(); CAutoBuffer Buf = SpObject2Buffer(Req); auto ret = pFunc->AsyncRequest(PortableScannerService_Method_ScanImageEx, PortableScannerService_MethodSignature_ScanImageEx, Buf, spAsyncWait, m_context, dwTimeout); m_context.clear(); return ret; } ErrorCodeEnum ScanImageEx(PortableScannerService_ScanImageEx_Req &Req, PortableScannerService_ScanImageEx_Ans &Ans, DWORD dwTimeout) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = ScanImageEx(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum ScanImageEx(PortableScannerService_ScanImageEx_Req &Req, PortableScannerService_ScanImageEx_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = ScanImageEx(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum SetProperty(PortableScannerService_SetProperty_Req &Req, CSmartPointer &spAsyncWait, DWORD dwTimeout) { CSmartPointer pFunc = GetFunction(); CAutoBuffer Buf = SpObject2Buffer(Req); auto ret = pFunc->AsyncRequest(PortableScannerService_Method_SetProperty, PortableScannerService_MethodSignature_SetProperty, Buf, spAsyncWait, m_context, dwTimeout); m_context.clear(); return ret; } ErrorCodeEnum SetProperty(PortableScannerService_SetProperty_Req &Req, PortableScannerService_SetProperty_Ans &Ans, DWORD dwTimeout) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = SetProperty(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum SetProperty(PortableScannerService_SetProperty_Req &Req, PortableScannerService_SetProperty_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = SetProperty(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum SetWinPos(PortableScannerService_SetWinPos_Req &Req, CSmartPointer &spAsyncWait, DWORD dwTimeout) { CSmartPointer pFunc = GetFunction(); CAutoBuffer Buf = SpObject2Buffer(Req); auto ret = pFunc->AsyncRequest(PortableScannerService_Method_SetWinPos, PortableScannerService_MethodSignature_SetWinPos, Buf, spAsyncWait, m_context, dwTimeout); m_context.clear(); return ret; } ErrorCodeEnum SetWinPos(PortableScannerService_SetWinPos_Req &Req, PortableScannerService_SetWinPos_Ans &Ans, DWORD dwTimeout) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = SetWinPos(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum SetWinPos(PortableScannerService_SetWinPos_Req &Req, PortableScannerService_SetWinPos_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = SetWinPos(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum ShowProperty(PortableScannerService_ShowProperty_Req &Req, CSmartPointer &spAsyncWait, DWORD dwTimeout) { CSmartPointer pFunc = GetFunction(); CAutoBuffer Buf = SpObject2Buffer(Req); auto ret = pFunc->AsyncRequest(PortableScannerService_Method_ShowProperty, PortableScannerService_MethodSignature_ShowProperty, Buf, spAsyncWait, m_context, dwTimeout); m_context.clear(); return ret; } ErrorCodeEnum ShowProperty(PortableScannerService_ShowProperty_Req &Req, PortableScannerService_ShowProperty_Ans &Ans, DWORD dwTimeout) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = ShowProperty(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum ShowProperty(PortableScannerService_ShowProperty_Req &Req, PortableScannerService_ShowProperty_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = ShowProperty(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum GetDevStatus(PortableScannerService_GetDevStatus_Req &Req, CSmartPointer &spAsyncWait, DWORD dwTimeout) { CSmartPointer pFunc = GetFunction(); CAutoBuffer Buf = SpObject2Buffer(Req); auto ret = pFunc->AsyncRequest(PortableScannerService_Method_GetDevStatus, PortableScannerService_MethodSignature_GetDevStatus, Buf, spAsyncWait, m_context, dwTimeout); m_context.clear(); return ret; } ErrorCodeEnum GetDevStatus(PortableScannerService_GetDevStatus_Req &Req, PortableScannerService_GetDevStatus_Ans &Ans, DWORD dwTimeout) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = GetDevStatus(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum GetDevStatus(PortableScannerService_GetDevStatus_Req &Req, PortableScannerService_GetDevStatus_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = GetDevStatus(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum GetDevInfo(PortableScannerService_GetDevInfo_Req &Req, CSmartPointer &spAsyncWait, DWORD dwTimeout) { CSmartPointer pFunc = GetFunction(); CAutoBuffer Buf = SpObject2Buffer(Req); auto ret = pFunc->AsyncRequest(PortableScannerService_Method_GetDevInfo, PortableScannerService_MethodSignature_GetDevInfo, Buf, spAsyncWait, m_context, dwTimeout); m_context.clear(); return ret; } ErrorCodeEnum GetDevInfo(PortableScannerService_GetDevInfo_Req &Req, PortableScannerService_GetDevInfo_Ans &Ans, DWORD dwTimeout) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = GetDevInfo(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum GetDevInfo(PortableScannerService_GetDevInfo_Req &Req, PortableScannerService_GetDevInfo_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = GetDevInfo(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwUserError, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum Exit() { CSmartPointer pFunc = GetFunction(); return pFunc->OnewayCall(PortableScannerService_Method_Exit, PortableScannerService_MethodSignature_Exit, m_context); } bool SafeDelete() { if (!m_bSysManaged) { delete this; } return m_bSysManaged; } protected: bool m_bSysManaged; CEntityBase *m_pEntityBase; linkContext m_context; bool bSessionClosed; }; /////////////////////////// } // namespace PortableScanner #endif // __PORTABLESCANNER_CLIENT_G_H