22template <
typename T = u
int8_t>
31 virtual bool read(
T &result) = 0;
35 if (data ==
nullptr) {
61 for (
int j = 0;
j < len;
j++) {
68 LOGD(
"writeArray %d -> %d", len, result);
82 virtual bool peek(
T &result) = 0;
116 if (
size() == 0)
return 0.0f;
117 return 100.0f *
static_cast<float>(
available()) /
118 static_cast<float>(
size());
123 LOGE(
"resize not implemented for this buffer");
138template <
typename T = u
int8_t>
147 for (
int j = 0;
j < result;
j++) {
157 template <
int rows,
int channels>
163 for (
int i = 0; i < channels; i++) {
183template <
typename T = u
int8_t>
247 return max(result, 0);
352template <
typename T = u
int8_t>
387 for (
int j = 0;
j < n;
j++) {
392 if (count == 0)
break;
432 LOGI(
"resize: %d", len);
463template <
class File,
typename T>
480 LOGE(
"file is not valid");
490 if (
p_file ==
nullptr)
return 0;
496 if (offset.
len1 > 0) {
504 for (
int i = 0; i < count; i++) {
505 LOGI(
"read #%d value %d", offset.
pos, (
int)data[i]);
525 if (
p_file ==
nullptr)
return 0;
531 if (offset.
len1 > 0) {
544 if (
p_file ==
nullptr)
return 0;
545 for (
int i = 0; i < len; i++) {
554 if (offset.
len1 > 0) {
631 LOGD(
"file_seek: %d", pos);
642 LOGD(
"file_write: %d", count);
643 if (
p_file ==
nullptr)
return 0;
656 LOGD(
"file_read: %d", count);
674template <
typename T = u
int8_t>
692 while (count < len) {
824 for (
int j = 0;
j < count;
j++) {
826 LOGD(
"new buffer %p", buffer);
861 while (ptr !=
nullptr) {
862 LOGD(
"deleting %p", ptr);
868 while (ptr !=
nullptr) {
869 LOGD(
"deleting %p", ptr);
913template <
typename T = u
int8_t>
967template <
class File,
typename T>
988 if (!file)
return false;
1019 bool result =
read(data);
1037 return result /
sizeof(
T);
1105 char file_name[len + 1];
1121template <
typename T = u
int8_t>
1125 LOGI(
"BufferedArray(%d)", len);
1131 LOGD(
"getValues(%d,%d) - max %d", offset, length,
array.size());
1149 return &
array[offset];
#define TRACED()
Definition AudioLoggerIDF.h:31
#define LOGI(...)
Definition AudioLoggerIDF.h:28
#define LOGD(...)
Definition AudioLoggerIDF.h:27
#define LOGE(...)
Definition AudioLoggerIDF.h:30
#define assert(T)
Definition avr.h:10
virtual size_t readBytes(uint8_t *data, size_t len)
Definition Arduino.h:140