#ifndef __BRANCHDEVICE_CLIENT_G_H #define __BRANCHDEVICE_CLIENT_G_H #pragma once // This code is generated by spgen tool! #include "BranchDevice_def_g.h" namespace BranchDevice { class BranchDeviceService_ClientBase : public CClientSessionBase { public: BranchDeviceService_ClientBase(CEntityBase *pEntity) : m_pEntityBase(pEntity), m_bSysManaged(false) {} protected: virtual ~BranchDeviceService_ClientBase() {} public: ErrorCodeEnum Connect(CSmartPointer &spAsyncWait) { CSmartPointer pFunc = m_pEntityBase->GetFunction(); ErrorCodeEnum Error = pFunc->ConnectRemoteEntity(this, "BranchDevice", "BranchDeviceService", spAsyncWait); if (Error == Error_Succeed) { m_bSysManaged = true; } return Error; } ErrorCodeEnum Connect() { CSmartPointer spAsyncWait; ErrorCodeEnum Error = Connect(spAsyncWait); if (Error == Error_Succeed) { Error = spAsyncWait->WaitAnswer(); } return Error; } ErrorCodeEnum OpCmd(BranchDeviceService_OpCmd_Req &Req, CSmartPointer &spAsyncWait, DWORD dwTimeout) { CSmartPointer pFunc = GetFunction(); CAutoBuffer Buf = SpObject2Buffer(Req); return pFunc->AsyncRequest(BranchDeviceService_Method_OpCmd, BranchDeviceService_MethodSignature_OpCmd, Buf, spAsyncWait, dwTimeout); } ErrorCodeEnum OpCmd(BranchDeviceService_OpCmd_Req &Req, BranchDeviceService_OpCmd_Ans &Ans, DWORD dwTimeout) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = OpCmd(Req, spAsyncWait, dwTimeout); if (Error == Error_Succeed) { bool bEnd = false; Error = SpWaitAnswerObject(spAsyncWait, Ans, bEnd, dwTimeout); LOG_ASSERT(Error || bEnd); } return Error; } ErrorCodeEnum OpCmd(BranchDeviceService_OpCmd_Req &Req, BranchDeviceService_OpCmd_Ans &Ans, DWORD dwTimeout, DWORD &dwUserError) { CSmartPointer spAsyncWait; ErrorCodeEnum Error = OpCmd(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(BranchDeviceService_Method_Exit, BranchDeviceService_MethodSignature_Exit); } ErrorCodeEnum GetDevInfo(BranchDeviceService_GetDevInfo_Req &Req, CSmartPointer &spAsyncWait, DWORD dwTimeout) { CSmartPointer pFunc = GetFunction(); CAutoBuffer Buf = SpObject2Buffer(Req); return pFunc->AsyncRequest(BranchDeviceService_Method_GetDevInfo, BranchDeviceService_MethodSignature_GetDevInfo, Buf, spAsyncWait, dwTimeout); } ErrorCodeEnum GetDevInfo(BranchDeviceService_GetDevInfo_Req &Req, BranchDeviceService_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(BranchDeviceService_GetDevInfo_Req &Req, BranchDeviceService_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; } bool SafeDelete() { if (!m_bSysManaged) { delete this; } return m_bSysManaged; } protected: bool m_bSysManaged; CEntityBase *m_pEntityBase; }; /////////////////////////// } // namespace BranchDevice #endif // __BRANCHDEVICE_CLIENT_G_H