Skip to content

Commit bac4b89

Browse files
authored
Merge pull request #41 from REVrobotics/expose-method-to-get-copy-of-received-messages-map
2 parents 68798d4 + b7f6207 commit bac4b89

File tree

5 files changed

+17
-0
lines changed

5 files changed

+17
-0
lines changed

src/main/native/cpp/Drivers/CandleWinUSB/CandleWinUSBDevice.cpp

+6
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333

3434
#include <iostream> //TODO: Remove
3535
#include <thread>
36+
#include <map>
3637

3738
#include <hal/simulation/CanData.h>
3839
#include <hal/CAN.h>
@@ -191,6 +192,11 @@ bool CandleWinUSBDevice::IsConnected()
191192
return true;
192193
}
193194

195+
bool CandleWinUSBDevice::CopyReceivedMessagesMap(std::map<uint32_t, std::shared_ptr<CANMessage>>& receivedMessagesMap)
196+
{
197+
return m_thread.ReceiveMessage(receivedMessagesMap);
198+
}
199+
194200

195201
} // namespace usb
196202
} // namespace rev

src/main/native/cpp/Drivers/Serial/SerialDevice.cpp

+6
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232

3333
#include <iostream> //TODO: Remove
3434
#include <thread>
35+
#include <map>
3536

3637
#include <hal/simulation/CanData.h>
3738
#include <hal/CAN.h>
@@ -152,6 +153,11 @@ bool SerialDevice::IsConnected()
152153
return true;
153154
}
154155

156+
bool SerialDevice::CopyReceivedMessagesMap(std::map<uint32_t, std::shared_ptr<CANMessage>>& receivedMessagesMap)
157+
{
158+
return m_thread.ReceiveMessage(receivedMessagesMap);
159+
}
160+
155161

156162
} // namespace usb
157163
} // namespace rev

src/main/native/include/rev/CANDevice.h

+3
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
#pragma once
3030

3131
#include <string>
32+
#include <map>
3233

3334
#include "rev/CANMessage.h"
3435
#include "rev/CANStatus.h"
@@ -81,6 +82,8 @@ class CANDevice {
8182
virtual void setThreadPriority(utils::ThreadPriority priority) {};
8283
virtual void stopRepeatedMessage(uint32_t messageId) {};
8384
virtual void ClearSendQueue() {};
85+
86+
virtual bool CopyReceivedMessagesMap(std::map<uint32_t, std::shared_ptr<CANMessage>>& receivedMessagesMap) = 0;
8487
};
8588

8689
} // namespace usb

src/main/native/include/rev/Drivers/CandleWinUSB/CandleWinUSBDevice.h

+1
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ class CandleWinUSBDevice : public CANDevice {
6565
virtual void setThreadPriority(utils::ThreadPriority priority);
6666
virtual void stopRepeatedMessage(uint32_t messageId);
6767
virtual void ClearSendQueue();
68+
virtual bool CopyReceivedMessagesMap(std::map<uint32_t, std::shared_ptr<CANMessage>>& receivedMessagesMap) override;
6869
private:
6970
candle_handle m_handle;
7071
CandleWinUSBDeviceThread m_thread;

src/main/native/include/rev/Drivers/SerialPort/SerialDevice.h

+1
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ class SerialDevice : public CANDevice {
6161
virtual CANStatus GetCANDetailStatus(float* percentBusUtilization, uint32_t* busOff, uint32_t* txFull, uint32_t* receiveErr, uint32_t* transmitErr, uint32_t* lastErrorTime) override;
6262

6363
virtual bool IsConnected() override;
64+
virtual bool CopyReceivedMessagesMap(std::map<uint32_t, std::shared_ptr<CANMessage>>& receivedMessagesMap) override;
6465
private:
6566
SerialDeviceThread m_thread;
6667
std::string m_descriptor;

0 commit comments

Comments
 (0)