6 #include "hwriterconsumer.h"
38 std::vector< HReader<T>* > _readers;
61 HMux( std::vector<
HReader<T>* > readers,
size_t blocksize,
bool duplex =
false);
73 HMux(
HWriter<T>* writer,
int writers,
size_t blocksize,
bool duplex =
false);
90 int Read(T* dest,
size_t blocksize);
93 int Write(T* src,
size_t blocksize);
97 if( _readers.size() != 0 ) {
98 for (
int i = 0; i < _readers.size(); i++) {
99 if (!_readers[i]->
Command(command)) {
105 else if( _writer !=
nullptr ) {
106 return _writer->
Command(command);
120 if( _writer !=
nullptr ) {
121 return _writer->
Start();
123 if( _readers.size() > 0 ) {
124 for (
int i = 0; i < _readers.size(); i++) {
125 if (!_readers[i]->
Start()) {
136 if( _writer !=
nullptr ) {
137 return _writer->
Stop();
139 if( _readers.size() > 0 ) {
140 for (
int i = 0; i < _readers.size(); i++) {
141 if (!_readers[i]->
Stop()) {