/**
 * \ingroup dev_examples
 *
 * \defgroup portaudio_basic Example for portaudio (portaudio_basic)

Instantiates \ref cmd_device_portaudio "portaudio" device implemented by PortAudioDeviceDriver.
\verbatim
# start up a device for listening from a microphone
device portaudio
read
allow-deprecated-devices
\endverbatim
If this text is saved in a file called portaudio_basic.ini then the device can be created by doing:
\verbatim
yarpdev --file portaudio_basic.ini
\endverbatim
Of course, the configuration could be passed just as command line options, or as a yarp::os::Property object in a program:
\code
Property p;
p.fromConfigFile("portaudio_basic.ini");
// of course you could construct the Property object on-the-fly
PolyDriver dev;
dev.open(p);
if (dev.isValid()) { /* use the device via view method */ }
\endcode
Here is a list of properties checked when starting up a device based on this configuration file.
Note that which properties are checked can depend on whether other properties are present.
In some cases properties can also vary between operating systems.
So this is just an example

<table>
<tr><td>PROPERTY</td><td>DESCRIPTION</td><td>DEFAULT</td></tr>
<tr><td>device</td><td></td><td></td></tr>
<tr><td>rate</td><td>audio sample rate (0=automatic)</td><td>0</td></tr>
<tr><td>samples</td><td>number of samples per network packet (0=automatic). For chunks of 1 second of recording set samples=rate. Channels number is handled internally.</td><td>0</td></tr>
<tr><td>channels</td><td>number of audio channels (0=automatic, max is 2)</td><td>0</td></tr>
<tr><td>read</td><td>if present, just deal with reading audio (microphone)</td><td></td></tr>
<tr><td>write</td><td>if present, just deal with writing audio (speaker)</td><td></td></tr>
<tr><td>id</td><td>which portaudio index to use (-1=automatic)</td><td>-1</td></tr>
<tr><td>loopback</td><td>if present, send audio read from microphone immediately back to speaker</td><td></td></tr>
<tr><td>render_mode_append</td><td></td><td></td></tr>
<tr><td>render_mode_immediate</td><td></td><td></td></tr>
<tr><td>allow-deprecated-devices</td><td></td><td></td></tr>
</table>

\sa PortAudioDeviceDriver

 */
