[Sc-devel] Fwd: SF.net SVN: supercollider: [6659]
trunk/Source/lang/LangPrimSource/ PyrSerialPrim.cpp
Stefan Kersten
sk at k-hornz.de
Wed Nov 21 12:59:05 PST 2007
Begin forwarded message:
> From: kersten at users.sourceforge.net
> Date: 21. November 2007 12:49:58 GMT+01:00
> To: sc-dev at create.ucsb.edu
> Subject: SF.net SVN: supercollider: [6659] trunk/Source/lang/
> LangPrimSource/ PyrSerialPrim.cpp
>
>
> Revision: 6659
> http://svn.sourceforge.net/supercollider/?rev=6659&view=rev
> Author: kersten
> Date: 2007-11-21 03:49:58 -0800 (Wed, 21 Nov 2007)
>
> Log Message:
> -----------
> add more serial baudrates
> signal error for unsupported baudrates
>
> Modified Paths:
> --------------
> trunk/Source/lang/LangPrimSource/PyrSerialPrim.cpp
>
> Modified: trunk/Source/lang/LangPrimSource/PyrSerialPrim.cpp
> ===================================================================
> --- trunk/Source/lang/LangPrimSource/PyrSerialPrim.cpp 2007-11-20
> 22:46:35 UTC (rev 6658)
> +++ trunk/Source/lang/LangPrimSource/PyrSerialPrim.cpp 2007-11-21
> 11:49:58 UTC (rev 6659)
> @@ -35,6 +35,7 @@
> #include <unistd.h>
>
> #include <stdexcept>
> +#include <sstream>
>
> #include "GC.h"
> #include "PyrKernel.h"
> @@ -176,6 +177,15 @@
> // baudrate
> speed_t brate;
> switch (m_options.baudrate) {
> + case 1200:
> + brate = B1200;
> + break;
> + case 1800:
> + brate = B1800;
> + break;
> + case 2400:
> + brate = B2400;
> + break;
> case 4800:
> brate = B4800;
> break;
> @@ -188,19 +198,31 @@
> case 38400:
> brate = B38400;
> break;
> +#ifndef _POSIX_C_SOURCE
> + case 7200:
> + brate = B7200;
> + break;
> + case 14400:
> + brate = B14400;
> + break;
> + case 28800:
> + brate = B28800;
> + break;
> case 57600:
> brate = B57600;
> break;
> + case 76800:
> + brate = B76800;
> + break;
> case 115200:
> brate = B115200;
> break;
> case 230400:
> brate = B230400;
> break;
> +#endif // !_POSIX_C_SOURCE
> default:
> - brate = B9600;
> - m_options.baudrate=9600;
> - break;
> + throw Error("unsupported baudrate");
> }
>
> cfsetispeed(&toptions, brate);
> @@ -459,6 +481,9 @@
> try {
> port = new SerialPort(self->uo, portName, options);
> } catch (SerialPort::Error& e) {
> + std::ostringstream os;
> + os << "SerialPort Error: " << e.what();
> + post(os.str().c_str());
> return errFailed;
> }
>
>
>
> This was sent by the SourceForge.net collaborative development
> platform, the world's largest Open Source development site.
>
>
More information about the Sc-devel
mailing list