diff options
| author | mick grierson <mickgrierson@gmail.com> | 2015-06-29 15:57:31 +0100 |
|---|---|---|
| committer | mick grierson <mickgrierson@gmail.com> | 2015-06-29 15:57:31 +0100 |
| commit | b86dfa8f6f99713ee4605c30ebb1a58309aaeb8a (patch) | |
| tree | 519c6acfe487d3d2f844b21c4d1d062670c57ee3 /ofxMaxim/ofxMaximExample_0.8.4_OSX_Granular/ofxOsc/src/ofxOscSender.h | |
| parent | 440498446db27a6883de668ebf407f489c979016 (diff) | |
Updating post-hackday
Diffstat (limited to 'ofxMaxim/ofxMaximExample_0.8.4_OSX_Granular/ofxOsc/src/ofxOscSender.h')
| -rwxr-xr-x | ofxMaxim/ofxMaximExample_0.8.4_OSX_Granular/ofxOsc/src/ofxOscSender.h | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/ofxMaxim/ofxMaximExample_0.8.4_OSX_Granular/ofxOsc/src/ofxOscSender.h b/ofxMaxim/ofxMaximExample_0.8.4_OSX_Granular/ofxOsc/src/ofxOscSender.h new file mode 100755 index 0000000..5b07e6e --- /dev/null +++ b/ofxMaxim/ofxMaximExample_0.8.4_OSX_Granular/ofxOsc/src/ofxOscSender.h @@ -0,0 +1,77 @@ +/* + + Copyright (c) 2007-2009, Damian Stewart + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the developer nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY DAMIAN STEWART ''AS IS'' AND ANY + EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL DAMIAN STEWART BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#pragma once + +/** + +ofxOscSender + +an ofxOscSender sends messages to a single host/port + +*/ + +class UdpTransmitSocket; +#include <string> +#include "OscTypes.h" +#include "OscOutboundPacketStream.h" + +#include "ofxOscBundle.h" +#include "ofxOscMessage.h" +#include "ofParameter.h" +#include "ofParameterGroup.h" + + +class ofxOscSender +{ +public: + ofxOscSender(); + ~ofxOscSender(); + + /// send messages to hostname and port + void setup( std::string hostname, int port ); + + /// send the given message + void sendMessage( ofxOscMessage& message ); + /// send the given bundle + void sendBundle( ofxOscBundle& bundle ); + /// creates a message using an ofParameter + void sendParameter( const ofAbstractParameter & parameter); + + +private: + void shutdown(); + + // helper methods for constructing messages + void appendBundle( ofxOscBundle& bundle, osc::OutboundPacketStream& p ); + void appendMessage( ofxOscMessage& message, osc::OutboundPacketStream& p ); + void appendParameter( ofxOscBundle & bundle, const ofAbstractParameter & parameter, string address); + void appendParameter( ofxOscMessage & msg, const ofAbstractParameter & parameter, string address); + + UdpTransmitSocket* socket; +}; |
