X-Git-Url: https://scm.cri.ensmp.fr/git/Faustine.git/blobdiff_plain/c7f552fd8888da2f0d8cfb228fe0f28d3df3a12c..b4b6f2ea75b9f0f3ca918f5b84016610bf7a4d4f:/interpretor/faust-0.9.47mr3/architecture/osclib/faust/src/osc/OSCStream.cpp diff --git a/interpretor/faust-0.9.47mr3/architecture/osclib/faust/src/osc/OSCStream.cpp b/interpretor/faust-0.9.47mr3/architecture/osclib/faust/src/osc/OSCStream.cpp deleted file mode 100644 index afe09c5..0000000 --- a/interpretor/faust-0.9.47mr3/architecture/osclib/faust/src/osc/OSCStream.cpp +++ /dev/null @@ -1,105 +0,0 @@ -/* - Copyright (c) Grame 2009 - - This library is free software; you can redistribute it and modify it under - the terms of the GNU Library General Public License as published by the - Free Software Foundation version 2 of the License, or any later version. - - This library 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 Library General Public License - for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - Grame Research Laboratory, 9, rue du Garet 69001 Lyon - France - research@grame.fr - -*/ - -#include -#include "OSCStream.h" - -using namespace std; - -namespace oscfaust -{ - -OSCStream* _oscout = 0; // OSC standard output stream -OSCStream* _oscerr = 0; // OSC standard input stream - -static UdpSocket* _socket = 0; // a shared transmit socket - - -//-------------------------------------------------------------------------- -OSCStream::OSCStream () - : fState(kIdle), fPort(1024), fAddress(kLocalhost), fOutStream(fBuffer, kOutBufferSize), fSocket(_socket) -{ - if (!fSocket) cerr << "warning: incorrect OSCStream, _socket not initialized" << endl; -} - -//-------------------------------------------------------------------------- -bool OSCStream::start () -{ - _socket = new UdpSocket; - _oscout = new OSCStream(_socket); - _oscerr = new OSCStream(_socket); - return (_socket && _oscout && _oscerr); -} - -//-------------------------------------------------------------------------- -void OSCStream::stop () -{ - delete _socket; - delete _oscout; - delete _oscerr; - _oscout = _oscerr = 0; - _socket = 0; -} - -//-------------------------------------------------------------------------- -void OSCStream::setAddress (const string& address) -{ - IpEndpointName dst (address.c_str()); - setAddress (dst.address); -} - -//-------------------------------------------------------------------------- -OSCStream& OSCStream::start(const char * address) -{ - stream().Clear(); - if (!stream().IsReady()) cerr << "OSCStream OutboundPacketStream not ready" << endl; - stream() << osc::BeginMessage( address ) ; - fState = kInProgress; - return *this; -} - -//-------------------------------------------------------------------------- -OSCStream& OSCStream::end() -{ - if (state() == kInProgress) { - stream() << osc::EndMessage; - if (fSocket) - fSocket->SendTo (IpEndpointName (fAddress, fPort), stream().Data(), stream().Size() ); - fState = kIdle; - } - return *this; -} - -//-------------------------------------------------------------------------- -OSCStream& operator <<(OSCStream& s, const string& val) -{ - s.stream() << val.c_str(); - return s; -} - -//-------------------------------------------------------------------------- -OSCStream& operator <<(OSCStream& s, const OSCErr& val) { return s.start(val.fAddress); } -OSCStream& operator <<(OSCStream& s, const OSCWarn& val) { return s.start(val.fAddress); } -OSCStream& operator <<(OSCStream& s, const OSCStart& val) { return s.start(val.fAddress); } -OSCStream& operator <<(OSCStream& s, const OSCEnd val) { return s.end(); } - -} // end namespace -