added data structures
added audio support added rfid support added spi support
This commit is contained in:
41
ext/audio/AudioData.h
Normal file
41
ext/audio/AudioData.h
Normal file
@@ -0,0 +1,41 @@
|
||||
#ifndef AUDIODATA_H
|
||||
#define AUDIODATA_H
|
||||
|
||||
#define min(a,b) ( (a<b) ? (a) : (b) )
|
||||
|
||||
struct Data {
|
||||
const uint8_t* data;
|
||||
const uint32_t len;
|
||||
Data(const uint8_t* data, const uint32_t len) : data(data), len(len) {;}
|
||||
};
|
||||
|
||||
struct AudioData {
|
||||
|
||||
const uint8_t* data;
|
||||
uint32_t available;
|
||||
|
||||
AudioData() : data(nullptr), available(0) {;}
|
||||
|
||||
AudioData(const uint8_t* data, const uint32_t len) : data(data), available(len) {
|
||||
|
||||
}
|
||||
|
||||
Data read(const uint32_t bytes) {
|
||||
const uint32_t outBytes = min(bytes, this->available);
|
||||
const uint8_t* ptr = this->data;
|
||||
this->data += outBytes;
|
||||
this->available -= outBytes;
|
||||
return Data(ptr, outBytes);
|
||||
}
|
||||
|
||||
uint32_t getNumBytesAvailable() const {
|
||||
return available;
|
||||
}
|
||||
|
||||
bool isEOF() const {
|
||||
return available <= 0;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
#endif // AUDIODATA_H
|
||||
Reference in New Issue
Block a user