X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=alsa_input.h;h=060b9212690fce317f9dfac701af37d597af908a;hb=96cb6414f85e0ef4d660b7bd56267303e80fcd05;hp=6bce9134cdcd2a3fb3d381988cc482d4419ccbc1;hpb=cf7b9ee186d4ef8e5da0531b75854c97b821be44;p=nageru diff --git a/alsa_input.h b/alsa_input.h index 6bce913..060b921 100644 --- a/alsa_input.h +++ b/alsa_input.h @@ -13,18 +13,20 @@ #include #include #include +#include #include #include #include #include #include "bmusb/bmusb.h" +#include "quittable_sleeper.h" class ALSAPool; class ALSAInput { public: - typedef std::function audio_callback_t; + typedef std::function audio_callback_t; ALSAInput(const char *device, unsigned sample_rate, unsigned num_channels, audio_callback_t audio_callback, ALSAPool *parent_pool, unsigned internal_dev_index); ~ALSAInput(); @@ -67,7 +69,7 @@ private: snd_pcm_t *pcm_handle = nullptr; std::thread capture_thread; - std::atomic should_quit{false}; + QuittableSleeper should_quit; std::unique_ptr buffer; ALSAPool *parent_pool; unsigned internal_dev_index;