@@ -45,13 +45,13 @@ class TransformationReader {
45
45
void resizeReadBuffer (int size) {
46
46
buffer.resize (size);
47
47
}
48
-
49
48
// / Defines the queue size for result
50
49
void resizeResultQueue (int size) {
51
50
result_queue_buffer.resize (size);
52
51
result_queue.begin ();
53
52
}
54
53
54
+
55
55
size_t readBytes (uint8_t *data, size_t len) {
56
56
LOGD (" TransformationReader::readBytes: %d" , (int )len);
57
57
if (!active) {
@@ -74,7 +74,7 @@ class TransformationReader {
74
74
75
75
if (result_queue_buffer.size () == 0 ) {
76
76
// make sure that the ring buffer is big enough
77
- int rb_size = len * byte_count_factor ;
77
+ int rb_size = len * result_queue_factor ;
78
78
LOGI (" buffer size: %d" , rb_size);
79
79
result_queue_buffer.resize (rb_size);
80
80
result_queue.begin ();
@@ -117,7 +117,8 @@ class TransformationReader {
117
117
buffer.resize (0 );
118
118
}
119
119
120
- void setByteCountFactor (int f) { byte_count_factor = f; }
120
+ // / Defines the queue size dependent on the read size
121
+ void setResultQueueFactor (int factor) { result_queue_factor = factor; }
121
122
122
123
protected:
123
124
RingBuffer<uint8_t > result_queue_buffer{0 };
@@ -126,7 +127,8 @@ class TransformationReader {
126
127
Vector<uint8_t > buffer{0 }; // we allocate memory only when needed
127
128
T *p_transform = nullptr ;
128
129
bool active = false ;
129
- int byte_count_factor = 3 ;
130
+ int result_queue_factor = 10 ;
131
+ int result_queue_size = 0 ;
130
132
131
133
// / Makes sure that the data is written to the array
132
134
// / @param data
@@ -203,7 +205,7 @@ class ReformatBaseStream : public ModifyingStream {
203
205
}
204
206
205
207
// / Provides access to the TransformationReader
206
- TransformationReader<ReformatBaseStream> &getReader () {return reader;}
208
+ virtual TransformationReader<ReformatBaseStream> &transformationReader () {return reader;}
207
209
208
210
protected:
209
211
TransformationReader<ReformatBaseStream> reader;
0 commit comments