ERIS CORE

◆ initialize_memory()

void AudioStream::initialize_memory ( audio_block_t data,
unsigned int  num 
)
staticinherited

Definition at line 66 of file AudioStream.cpp.

67 {
68  unsigned int i;
69  unsigned int maxnum = MAX_AUDIO_MEMORY / AUDIO_BLOCK_SAMPLES / 2;
70 
71  //Serial.println("AudioStream initialize_memory");
72  //delay(10);
73  if (num > maxnum) num = maxnum;
74  __disable_irq();
75  memory_pool = data;
77  for (i=0; i < NUM_MASKS; i++) {
79  }
80  for (i=0; i < num; i++) {
81  memory_pool_available_mask[i >> 5] |= (1 << (i & 0x1F));
82  }
83  for (i=0; i < num; i++) {
84  data[i].memory_pool_index = i;
85  }
86  __enable_irq();
87 
88 }
static uint16_t memory_pool_first_mask
Definition: AudioStream.h:213
static uint32_t memory_pool_available_mask[]
Definition: AudioStream.h:212
static audio_block_t * memory_pool
Definition: AudioStream.h:211
uint16_t memory_pool_index
Definition: AudioStream.h:77

References AudioStream::memory_pool, AudioStream::memory_pool_available_mask, AudioStream::memory_pool_first_mask, and audio_block_struct::memory_pool_index.