Lines Matching defs:state

22 static int timer_mmap_pre_process(struct libasound_state *state)
24 struct map_layout *layout = state->private_data;
37 err = snd_pcm_sw_params_set_period_event(state->handle,
38 state->sw_params, 1);
46 err = snd_pcm_hw_params_get_access(state->hw_params, &access);
50 err = snd_pcm_hw_params_get_channels(state->hw_params,
55 err = snd_pcm_hw_params_get_rate(state->hw_params,
60 err = snd_pcm_hw_params_get_buffer_size(state->hw_params,
73 if (state->verbose) {
75 err = snd_pcm_mmap_begin(state->handle, &areas, &frame_offset,
80 logging(state, "attributes for mapped page frame:\n");
84 logging(state, " sample number: %d\n", i);
85 logging(state, " address: %p\n", area->addr);
86 logging(state, " bits for offset: %u\n", area->first);
87 logging(state, " bits/frame: %u\n", area->step);
94 static void *get_buffer(struct libasound_state *state,
98 struct map_layout *layout = state->private_data;
104 buf += snd_pcm_frames_to_bytes(state->handle, frame_offset);
111 state->handle, frame_offset);
119 static int timer_mmap_process_frames(struct libasound_state *state,
124 struct map_layout *layout = state->private_data;
137 avail = snd_pcm_avail_update(state->handle);
143 err = snd_pcm_mmap_begin(state->handle, &areas, &frame_offset,
172 err = xfer_libasound_wait_event(state, timeout_msec,
188 avail = snd_pcm_avail(state->handle);
192 logging(state,
201 frame_buf = get_buffer(state, areas, frame_offset);
207 consumed_count = snd_pcm_mmap_commit(state->handle, frame_offset,
210 logging(state,
219 static int forward_appl_ptr(struct libasound_state *state)
221 struct map_layout *layout = state->private_data;
225 forward_count = snd_pcm_forwardable(state->handle);
231 forward_count = snd_pcm_forward(state->handle, forwardable_count);
235 if (state->verbose) {
236 logging(state,
244 static int timer_mmap_r_process_frames(struct libasound_state *state,
249 struct map_layout *layout = state->private_data;
259 err = snd_pcm_status(state->handle, layout->status);
270 err = forward_appl_ptr(state);
276 err = timer_mmap_process_frames(state, frame_count, mapper,
284 err = snd_pcm_start(state->handle);
302 static int rewind_appl_ptr(struct libasound_state *state)
304 struct map_layout *layout = state->private_data;
308 rewind_count = snd_pcm_rewindable(state->handle);
323 rewind_count = snd_pcm_rewind(state->handle, rewindable_count);
327 if (state->verbose) {
328 logging(state,
336 static int fill_buffer_with_zero_samples(struct libasound_state *state)
338 struct map_layout *layout = state->private_data;
346 err = snd_pcm_hw_params_get_buffer_size(state->hw_params,
351 err = snd_pcm_mmap_begin(state->handle, &areas, &frame_offset,
356 err = snd_pcm_hw_params_get_format(state->hw_params, &sample_format);
366 consumed_count = snd_pcm_mmap_commit(state->handle, frame_offset,
369 logging(state, "A bug of access plugin for this PCM node.\n");
374 static int timer_mmap_w_process_frames(struct libasound_state *state,
379 struct map_layout *layout = state->private_data;
384 err = snd_pcm_status(state->handle, layout->status);
395 err = rewind_appl_ptr(state);
401 err = timer_mmap_process_frames(state, frame_count, mapper,
408 err = fill_buffer_with_zero_samples(state);
412 err = snd_pcm_start(state->handle);
431 static void timer_mmap_post_process(struct libasound_state *state)
433 struct map_layout *layout = state->private_data;