hdi08List.h (699B)
1 #pragma once 2 3 #include <vector> 4 5 #include "hdi08Queue.h" 6 7 namespace virusLib 8 { 9 class Hdi08List 10 { 11 public: 12 Hdi08List() 13 { 14 m_queues.reserve(2); 15 } 16 17 void addHDI08(dsp56k::HDI08& _hdi08); 18 bool rxEmpty() const; 19 void exec(); 20 size_t size() const { return m_queues.size(); } 21 22 dsp56k::HDI08& getHDI08(size_t _index) { return getQueue(_index).get(); } 23 Hdi08Queue& getQueue(size_t _index) { return m_queues[_index]; } 24 25 void writeRX(const dsp56k::TWord* _buf, size_t _length); 26 27 void writeRX(const std::vector<dsp56k::TWord>& _data) 28 { 29 writeRX(&_data[0], _data.size()); 30 } 31 32 void writeHostFlags(uint8_t _flag0, uint8_t _flag1); 33 34 private: 35 std::vector<Hdi08Queue> m_queues; 36 }; 37 }