SSPC-Tester/Driver/UDP5080-100/UNI-T SDK/examples/UCI/VC/UTP3000C_Test/TestApp.cpp
2026-06-30 12:10:29 +08:00

69 lines
1.9 KiB
C++

#include "stdafx.h"
#include "TestApp.h"
#pragma comment(lib, "lib\\uci.lib")
using namespace uci;
TestApp::TestApp() : m_session(INVALID_SESSION){}
TestApp::~TestApp() {}
u_status TestApp::Run(const TCHAR* _addr) {
return 0;
}
int TestApp::HandleResult(const TCHAR* _msg, int _r) {
if (UCISUCCESS(_r)) {
_tprintf(_T("%s: OK, r = %d;\n"), _msg, _r);
} else {
_tprintf(_T("%s: Error, r = %d; msg = %s\n"), _msg, _r, uci_GetLastError());
}
return _r;
}
u_status TestApp::Open(const u_tchar* _addr, int _timeout) {
uci_SetAttribute(INVALID_SESSION, _T("lang:zh-Hans;"), nullptr, 0);
return uci_Open(_addr, &m_session, _timeout);
}
u_status TestApp::Write(int _timeout, const void* _data, unsigned int _data_len, const TCHAR *format, ...) {
m_dwTime = GetTickCount();
CString msg;
va_list argptr;
va_start(argptr, format);
msg.FormatV(format, argptr);
auto r = uci::uci_WriteX(m_session, msg, _timeout, (const byte*)_data, _data_len);
// _tprintf(_T("Write [%s], r = %s, %s, use time = %d ms\n"), msg, r,
// UCISUCCESS(r) ? _T("OK") : _T("Error"), uci_GetLastError(), GetTickCount() - m_dwTime);
// ASSERT(r >= 0);
va_end(argptr);
return r;
}
u_status TestApp::Read(u_cstring _msg, u_uint32 _timeout, u_byte* _data, u_size _dataLen) {
m_dwTime = GetTickCount();
auto r = uci::uci_ReadX(m_session, _msg, _timeout, _data, _dataLen);
// _tprintf(_T("Read %s, r = %s, time = %d\n"), _msg, uci_GetLastError(), GetTickCount() - m_dwTime);
// ASSERT(r >= 0);
return r;
}
u_status TestApp::Read(u_uint32 _timeout, u_byte* _data, u_size _dataLen, u_cstring format, ...) {
CString msg;
va_list argptr;
va_start(argptr, format);
msg.FormatV(format, argptr);
m_dwTime = GetTickCount();
auto r = uci_ReadX(m_session, msg, _timeout, _data, _dataLen);
// _tprintf(_T("Read %s, r = %s, time = %d\n"), msg, uci_GetLastError(), GetTickCount() - m_dwTime);
// ASSERT(r >= 0);
va_end(argptr);
return r;
}