mirror of
https://github.com/intrepidcs/libicsneo.git
synced 2026-08-05 01:18:36 +02:00
Added the ability to block on getMessages until a message arrives
This commit is contained in:
@@ -188,7 +188,7 @@ bool icsneo_disableMessagePolling(const neodevice_t* device) {
|
||||
return device->device->disableMessagePolling();
|
||||
}
|
||||
|
||||
bool icsneo_getMessages(const neodevice_t* device, neomessage_t* messages, size_t* items) {
|
||||
bool icsneo_getMessages(const neodevice_t* device, neomessage_t* messages, size_t* items, uint64_t timeout) {
|
||||
if(!icsneo_isValidNeoDevice(device)) {
|
||||
ErrorManager::GetInstance().add(APIError::InvalidNeoDevice);
|
||||
return false;
|
||||
@@ -207,7 +207,7 @@ bool icsneo_getMessages(const neodevice_t* device, neomessage_t* messages, size_
|
||||
|
||||
std::vector<std::shared_ptr<Message>>& storage = polledMessageStorage[device->device];
|
||||
|
||||
if(!device->device->getMessages(storage, *items))
|
||||
if(!device->device->getMessages(storage, *items, std::chrono::milliseconds(timeout)))
|
||||
return false;
|
||||
|
||||
*items = storage.size();
|
||||
|
||||
@@ -111,7 +111,7 @@ int icsneoGetMessages(void* hObject, icsSpyMessage* pMsg, int* pNumberOfMessages
|
||||
neodevice_t* device = (neodevice_t*)hObject;
|
||||
|
||||
size_t messageCount = 20000;
|
||||
if(!icsneo_getMessages(device, messages, &messageCount))
|
||||
if(!icsneo_getMessages(device, messages, &messageCount, 0))
|
||||
return false;
|
||||
|
||||
*pNumberOfMessages = (int)messageCount;
|
||||
|
||||
Reference in New Issue
Block a user