#ifndef ISOTP_DECODER_H #define ISOTP_DECODER_H #include #include #include #include "can_structs.h" struct CODE_STRUCT { int code; QString shortDesc; QString longDesc; }; class ISOTP_HANDLER : public QObject { Q_OBJECT public: explicit ISOTP_HANDLER(const QVector *frames, QObject *parent = 0); void setExtendedAddressing(bool mode); public slots: void updatedFrames(int); signals: void newISOMessage(ISOTP_MESSAGE &msg); private: QList messageBuffer; const QVector *modelFrames; bool useExtendedAddressing; void processFrame(const CANFrame &frame); void checkNeedFlush(uint64_t ID); }; #endif // ISOTP_DECODER_H