JUCE  v5.4.1-191-g0ab5e696f
JUCE API
Looking for a senior C++ dev?
I'm looking for work. Hire me!
juce::OSCSender Class Reference

An OSC message sender. More...

#include <juce_OSCSender.h>

Collaboration diagram for juce::OSCSender:

Public Member Functions

 OSCSender ()
 Constructs a new OSCSender. More...
 
 ~OSCSender ()
 Destructor. More...
 
bool connect (const String &targetHostName, int targetPortNumber)
 Connects to a datagram socket and prepares the socket for sending OSC packets to the specified target. More...
 
bool connectToSocket (DatagramSocket &socket, const String &targetHostName, int targetPortNumber)
 Uses an existing datagram socket for sending OSC packets to the specified target. More...
 
bool disconnect ()
 Disconnects from the currently used UDP port. More...
 
bool send (const OSCMessage &message)
 Sends an OSC message to the target. More...
 
bool send (const OSCBundle &bundle)
 Send an OSC bundle to the target. More...
 
template<typename... Args>
bool send (const OSCAddressPattern &address, Args &&... args)
 Creates a new OSC message with the specified address pattern and list of arguments, and sends it to the target. More...
 
bool sendToIPAddress (const String &targetIPAddress, int targetPortNumber, const OSCMessage &message)
 Sends an OSC message to a specific IP address and port. More...
 
bool sendToIPAddress (const String &targetIPAddress, int targetPortNumber, const OSCBundle &bundle)
 Sends an OSC bundle to a specific IP address and port. More...
 
template<typename... Args>
bool sendToIPAddress (const String &targetIPAddress, int targetPortNumber, const OSCAddressPattern &address, Args &&... args)
 Creates a new OSC message with the specified address pattern and list of arguments, and sends it to the target. More...
 

Private Attributes

std::unique_ptr< Pimpl > pimpl
 

Detailed Description

An OSC message sender.

An OSCSender object can connect to a network port. It then can send OSC messages and bundles to a specified host over an UDP socket.

{OSC}

Constructor & Destructor Documentation

◆ OSCSender()

juce::OSCSender::OSCSender ( )

Constructs a new OSCSender.

◆ ~OSCSender()

juce::OSCSender::~OSCSender ( )

Destructor.

Member Function Documentation

◆ connect()

bool juce::OSCSender::connect ( const String targetHostName,
int  targetPortNumber 
)

Connects to a datagram socket and prepares the socket for sending OSC packets to the specified target.

Note: The operating system will choose which specific network adapter(s) to bind your socket to, and which local port to use for the sender.

Parameters
targetHostNameThe remote host to which messages will be send.
targetPortNumberThe remote UDP port number on which the host will receive the messages.
Returns
true if the connection was successful; false otherwise.
See also
send, disconnect.

◆ connectToSocket()

bool juce::OSCSender::connectToSocket ( DatagramSocket socket,
const String targetHostName,
int  targetPortNumber 
)

Uses an existing datagram socket for sending OSC packets to the specified target.

Parameters
socketAn existing datagram socket. Make sure this doesn't get deleted while this class is still using it!
targetHostNameThe remote host to which messages will be send.
targetPortNumberThe remote UDP port number on which the host will receive the messages.
Returns
true if the connection was successful; false otherwise.
See also
connect, send, disconnect.

◆ disconnect()

bool juce::OSCSender::disconnect ( )

Disconnects from the currently used UDP port.

Returns
true if the disconnection was successful; false otherwise.
See also
connect.

◆ send() [1/3]

bool juce::OSCSender::send ( const OSCMessage message)

Sends an OSC message to the target.

Parameters
messageThe OSC message to send.
Returns
true if the operation was successful.

◆ send() [2/3]

bool juce::OSCSender::send ( const OSCBundle bundle)

Send an OSC bundle to the target.

Parameters
bundleThe OSC bundle to send.
Returns
true if the operation was successful.

◆ send() [3/3]

template<typename... Args>
bool juce::OSCSender::send ( const OSCAddressPattern address,
Args &&...  args 
)

Creates a new OSC message with the specified address pattern and list of arguments, and sends it to the target.

Parameters
addressThe OSC address pattern of the message (you can use a string literal here).
argsThe list of arguments for the message.

◆ sendToIPAddress() [1/3]

bool juce::OSCSender::sendToIPAddress ( const String targetIPAddress,
int  targetPortNumber,
const OSCMessage message 
)

Sends an OSC message to a specific IP address and port.

This overrides the address and port that was originally set for this sender.

Parameters
targetIPAddressThe IP address to send to
targetPortNumberThe target port number
messageThe OSC message to send.
Returns
true if the operation was successful.

◆ sendToIPAddress() [2/3]

bool juce::OSCSender::sendToIPAddress ( const String targetIPAddress,
int  targetPortNumber,
const OSCBundle bundle 
)

Sends an OSC bundle to a specific IP address and port.

This overrides the address and port that was originally set for this sender.

Parameters
targetIPAddressThe IP address to send to
targetPortNumberThe target port number
bundleThe OSC bundle to send.
Returns
true if the operation was successful.

◆ sendToIPAddress() [3/3]

template<typename... Args>
bool juce::OSCSender::sendToIPAddress ( const String targetIPAddress,
int  targetPortNumber,
const OSCAddressPattern address,
Args &&...  args 
)

Creates a new OSC message with the specified address pattern and list of arguments, and sends it to the target.

Parameters
targetIPAddressThe IP address to send to
targetPortNumberThe target port number
addressThe OSC address pattern of the message (you can use a string literal here).
argsThe list of arguments for the message.

Member Data Documentation

◆ pimpl

std::unique_ptr<Pimpl> juce::OSCSender::pimpl
private

The documentation for this class was generated from the following file: