SSPC-Tester/Driver/UDP5080-100/UNI-T SDK/examples/UCI/VC/SimpleUCI/uci_cpp.h

61 lines
1.7 KiB
C
Raw Normal View History

/*!
* \created : 2017/3/17
* \author : M.Yang
* \purpose : <EFBFBD>UCI<EFBFBD><EFBFBD>C++<EFBFBD><EFBFBD>ӿ<EFBFBD>
*/
#ifndef uci_cpp_h__
#define uci_cpp_h__
#include "uci.h"
namespace uci {
class Session;
}
//@brief : UCI <20><EFBFBD><E1BBB0>
//@remark: <20><>uci_ǰ׺<C7B0><D7BA>C<EFBFBD><43><EFBFBD>Թ淶<D4B9>Ľӿ<C4BD><D3BF><EFBFBD><EFBFBD>򵥷<EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĺô<C4BA><C3B4>ǣ<EFBFBD>
// 1<><31><EFBFBD><EFBFBD>Session<6F><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6>رջỰ<D5BB>ǣ<EFBFBD>ʹ<EFBFBD>õ<EFBFBD>ʹ<EFBFBD><CAB9>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>עʹ<D7A2><CAB9><EFBFBD>߼<EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǵ<EFBFBD><C7B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߼<EFBFBD><DFBC><EFBFBD>
// 2<><32><EFBFBD><EFBFBD>ÿһ<C3BF><D2BB><EFBFBD>ӿ<EFBFBD><D3BF>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD><EFBFBD>ʡȥһ<C8A5><D2BB>Session ID<49><44><EFBFBD><EFBFBD><EFBFBD>Σ<EFBFBD><CEA3>ҿ<EFBFBD><D2BF><EFBFBD><EFBFBD><EFBFBD>βε<CEB2>Ĭ<EFBFBD><C4AC>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>ijЩC<D0A9><43><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD><D6A3><EFBFBD>ʹ<EFBFBD>ýӿڸ<D3BF><DAB8>򵥣<EFBFBD>
// <20><>ע<EFBFBD>
// <09><><EFBFBD><EFBFBD><E0B2BB>ȫ<EFBFBD><C8AB><EFBFBD>ӿڵ<D3BF><DAB5><EFBFBD><EFBFBD><EFBFBD><E4A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
class uci::Session {
public:
Session() : m_Session(INVALID_SESSION) {}
virtual ~Session() {
if (m_Session != INVALID_SESSION) {
uci_Close(m_Session);
m_Session = INVALID_SESSION;
}
}
u_status Open(u_cstring _addr, u_uint32 _timeout = 2000) {
u_status r = uci_OpenX(_addr, _timeout);
if (UCISUCCESS(r))
m_Session = (u_session)r;
return r;
}
u_status Write(u_cstring _msg,u_uint32 _timeout = 1000, const u_byte* _data = NULL, u_size _len = 0) {
return uci_WriteX(m_Session, _msg, _timeout, _data, _len);
}
u_status Read(u_cstring _msg,u_uint32 _timeout, u_byte* _data, u_size _dataLen) {
return uci_ReadX(m_Session, _msg, _timeout, _data, _dataLen);
}
u_status WriteFromFile(u_cstring _msg, u_cstring _filePath, u_uint32 _timeout) {
return uci_WriteFromFileX(m_Session, _msg, _filePath, _timeout);
}
u_status ReadToFile(u_cstring _msg, u_cstring _filePath, u_uint32 _timeout,
u_tchar *_filePathFinal, u_int32 _filePathFinalLength) {
return uci_ReadToFileX(m_Session, _msg, _filePath, _timeout, _filePathFinal, _filePathFinalLength);
}
u_status Close() { return uci_Close(m_Session); }
u_session GetSession() const { return m_Session; }
protected:
u_session m_Session;
};
#endif // uci_cpp_h__