diff --git a/src_main/io_devices/pican.cpp b/src_main/io_devices/pican.cpp index 4375e16d..91b51d7a 100644 --- a/src_main/io_devices/pican.cpp +++ b/src_main/io_devices/pican.cpp @@ -86,6 +86,7 @@ int PICAN::readDevice(void * read_to, int max_size) { if(ret < 0) {piCoutObj << "Error while read CAN frame " << ret; return -1;} //piCoutObj << "receive CAN frame Id =" << frame.can_id; memcpy(read_to, frame.data, piMini(frame.can_dlc, max_size)); + readed_id = frame.can_id; return max_size; #endif return 0; @@ -119,6 +120,11 @@ int PICAN::CANID() const { } +int PICAN::readedCANID() const { + return readed_id; +} + + PIString PICAN::constructFullPathDevice() const { PIString ret; ret << path() << ":" << PIString::fromNumber(CANID(),16); diff --git a/src_main/io_devices/pican.h b/src_main/io_devices/pican.h index a2569f0c..878b6174 100644 --- a/src_main/io_devices/pican.h +++ b/src_main/io_devices/pican.h @@ -13,6 +13,7 @@ public: void setCANID(int id); int CANID() const; + int readedCANID() const; protected: bool openDevice(); @@ -28,7 +29,7 @@ protected: private: int sock; - int can_id; + int can_id, readed_id; }; #endif // PICAN_H