From 4f6b15ea26b5fa09f300f67e4ce1057c2b39a3aa Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Thu, 25 Sep 2014 17:08:44 +0200 Subject: New API, new name, new version. --- src/device.h | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 src/device.h (limited to 'src/device.h') diff --git a/src/device.h b/src/device.h new file mode 100644 index 0000000..5129d36 --- /dev/null +++ b/src/device.h @@ -0,0 +1,61 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* vim: set et sw=2 ts=2: */ +/*************************************************************************** + * device.h + * + * Wed Sep 24 08:54:47 CEST 2014 + * Copyright 2014 Bent Bisballe Nyeng + * deva@aasimon.org + ****************************************************************************/ + +/* + * This file is part of LibAudioIO. + * + * LibAudioIO is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * LibAudioIO is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with LibAudioIO; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ +#ifndef __LIBAUDIOIO_DEVICE_H__ +#define __LIBAUDIOIO_DEVICE_H__ + +#include +#include + +// Make API behave like ALSA 1.x.x with ALSA 0.9.x +#define ALSA_PCM_NEW_HW_PARAMS_API + +#include + +#include "mixer.h" +#include "source.h" +#include "sink.h" + +class Device { +public: + Device(std::string device); + ~Device(); + + std::vector mixerNames(); + Mixer *getMixer(std::string name); + + Source *getSource(std::string name, unsigned int samplerate, + unsigned int channels); + + Sink *getSink(std::string name, unsigned int samplerate, + unsigned int channels); + +private: + std::string card; +}; + +#endif/*__LIBAUDIOIO_DEVICE_H__*/ -- cgit v1.2.3