JUCE-7.0.12-0-g4f43011b96 JUCE-7.0.12-0-g4f43011b96
JUCE — C++ application framework with suport for VST, VST3, LV2 audio plug-ins

« « « Anklang Documentation
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Friends | List of all members
juce::OSCReceiver Class Reference

A class for receiving OSC data. More...

#include "juce_OSCReceiver.h"

Classes

class  Listener
 A class for receiving OSC data from an OSCReceiver. More...
 
class  ListenerWithOSCAddress
 A class for receiving only those OSC messages from an OSCReceiver that match a given OSC address. More...
 
struct  MessageLoopCallback
 Use this struct as the template parameter for Listener and ListenerWithOSCAddress to receive incoming OSC data on the message thread. More...
 
struct  Pimpl
 
struct  RealtimeCallback
 Use this struct as the template parameter for Listener and ListenerWithOSCAddress to receive incoming OSC data immediately after it arrives, called directly on the network thread that listens to incoming OSC traffic. More...
 

Public Types

using FormatErrorHandler = std::function< void(const char *data, int dataSize)>
 An error handler function for OSC format errors that can be called by the OSCReceiver.
 

Public Member Functions

 OSCReceiver ()
 Creates an OSCReceiver.
 
 OSCReceiver (const String &threadName)
 Creates an OSCReceiver with a specific name for its thread.
 
 ~OSCReceiver ()
 Destructor.
 
bool connect (int portNumber)
 Connects to the specified UDP port using a datagram socket, and starts listening to OSC packets arriving on this port.
 
bool connectToSocket (DatagramSocket &socketToUse)
 Connects to a UDP datagram socket that is already set up, and starts listening to OSC packets arriving on this port.
 
bool disconnect ()
 Disconnects from the currently used UDP port.
 
void addListener (Listener< MessageLoopCallback > *listenerToAdd)
 Adds a listener that listens to OSC messages and bundles.
 
void addListener (Listener< RealtimeCallback > *listenerToAdd)
 Adds a listener that listens to OSC messages and bundles.
 
void addListener (ListenerWithOSCAddress< MessageLoopCallback > *listenerToAdd, OSCAddress addressToMatch)
 Adds a filtered listener that listens to OSC messages matching the address used to register the listener here.
 
void addListener (ListenerWithOSCAddress< RealtimeCallback > *listenerToAdd, OSCAddress addressToMatch)
 Adds a filtered listener that listens to OSC messages matching the address used to register the listener here.
 
void removeListener (Listener< MessageLoopCallback > *listenerToRemove)
 Removes a previously-registered listener.
 
void removeListener (Listener< RealtimeCallback > *listenerToRemove)
 Removes a previously-registered listener.
 
void removeListener (ListenerWithOSCAddress< MessageLoopCallback > *listenerToRemove)
 Removes a previously-registered listener.
 
void removeListener (ListenerWithOSCAddress< RealtimeCallback > *listenerToRemove)
 Removes a previously-registered listener.
 
void registerFormatErrorHandler (FormatErrorHandler handler)
 Installs a custom error handler which is called in case the receiver encounters a stream it cannot parse as an OSC bundle or OSC message.
 

Friends

struct OSCReceiverCallbackMessage
 

Detailed Description

A class for receiving OSC data.

An OSCReceiver object allows you to receive OSC bundles and messages. It can connect to a network port, receive incoming OSC packets from the network via UDP, parse them, and forward the included OSCMessage and OSCBundle objects to its listeners.

@tags{OSC}

Definition at line 40 of file juce_OSCReceiver.h.


Class Documentation

◆ juce::OSCReceiver::MessageLoopCallback

struct juce::OSCReceiver::MessageLoopCallback

Use this struct as the template parameter for Listener and ListenerWithOSCAddress to receive incoming OSC data on the message thread.

This should be used by OSC callbacks that are not realtime-critical, but have significant work to do, for example updating Components in your app's user interface.

This is the default type of OSC listener.

Definition at line 85 of file juce_OSCReceiver.h.

◆ juce::OSCReceiver::RealtimeCallback

struct juce::OSCReceiver::RealtimeCallback

Use this struct as the template parameter for Listener and ListenerWithOSCAddress to receive incoming OSC data immediately after it arrives, called directly on the network thread that listens to incoming OSC traffic.

This type can be used by OSC callbacks that don't do much, but are realtime-critical, for example, setting real-time audio parameters.

Definition at line 94 of file juce_OSCReceiver.h.

Member Typedef Documentation

◆ FormatErrorHandler

An error handler function for OSC format errors that can be called by the OSCReceiver.

The arguments passed are the pointer to and the data of the buffer that the OSCReceiver has failed to parse.

Definition at line 205 of file juce_OSCReceiver.h.

Constructor & Destructor Documentation

◆ OSCReceiver() [1/2]

juce::OSCReceiver::OSCReceiver ( )

Creates an OSCReceiver.

Definition at line 592 of file juce_OSCReceiver.cpp.

◆ OSCReceiver() [2/2]

juce::OSCReceiver::OSCReceiver ( const String threadName)

Creates an OSCReceiver with a specific name for its thread.

Definition at line 588 of file juce_OSCReceiver.cpp.

◆ ~OSCReceiver()

juce::OSCReceiver::~OSCReceiver ( )

Destructor.

Definition at line 596 of file juce_OSCReceiver.cpp.

Member Function Documentation

◆ addListener() [1/4]

void juce::OSCReceiver::addListener ( OSCReceiver::Listener< MessageLoopCallback > *  listenerToAdd)

Adds a listener that listens to OSC messages and bundles.

This listener will be called on the application's message loop.

Definition at line 616 of file juce_OSCReceiver.cpp.

◆ addListener() [2/4]

void juce::OSCReceiver::addListener ( Listener< RealtimeCallback > *  listenerToAdd)

Adds a listener that listens to OSC messages and bundles.

This listener will be called in real-time directly on the network thread that receives OSC data.

Definition at line 621 of file juce_OSCReceiver.cpp.

◆ addListener() [3/4]

void juce::OSCReceiver::addListener ( ListenerWithOSCAddress< MessageLoopCallback > *  listenerToAdd,
OSCAddress  addressToMatch 
)

Adds a filtered listener that listens to OSC messages matching the address used to register the listener here.

The listener will be called on the application's message loop.

Definition at line 626 of file juce_OSCReceiver.cpp.

◆ addListener() [4/4]

void juce::OSCReceiver::addListener ( ListenerWithOSCAddress< RealtimeCallback > *  listenerToAdd,
OSCAddress  addressToMatch 
)

Adds a filtered listener that listens to OSC messages matching the address used to register the listener here.

The listener will be called on the application's message loop.

Definition at line 631 of file juce_OSCReceiver.cpp.

◆ connect()

bool juce::OSCReceiver::connect ( int  portNumber)

Connects to the specified UDP port using a datagram socket, and starts listening to OSC packets arriving on this port.

Returns
true if the connection was successful; false otherwise.

Definition at line 601 of file juce_OSCReceiver.cpp.

◆ connectToSocket()

bool juce::OSCReceiver::connectToSocket ( DatagramSocket socketToUse)

Connects to a UDP datagram socket that is already set up, and starts listening to OSC packets arriving on this port.

Make sure that the object you give it doesn't get deleted while this object is still using it!

Returns
true if the connection was successful; false otherwise.

Definition at line 606 of file juce_OSCReceiver.cpp.

◆ disconnect()

bool juce::OSCReceiver::disconnect ( )

Disconnects from the currently used UDP port.

Returns
true if the disconnection was successful; false otherwise.

Definition at line 611 of file juce_OSCReceiver.cpp.

◆ registerFormatErrorHandler()

void juce::OSCReceiver::registerFormatErrorHandler ( FormatErrorHandler  handler)

Installs a custom error handler which is called in case the receiver encounters a stream it cannot parse as an OSC bundle or OSC message.

By default (i.e. if you never use this method), in case of a parsing error nothing happens and the invalid packet is simply discarded.

Definition at line 656 of file juce_OSCReceiver.cpp.

◆ removeListener() [1/4]

void juce::OSCReceiver::removeListener ( Listener< MessageLoopCallback > *  listenerToRemove)

Removes a previously-registered listener.

Definition at line 636 of file juce_OSCReceiver.cpp.

◆ removeListener() [2/4]

void juce::OSCReceiver::removeListener ( Listener< RealtimeCallback > *  listenerToRemove)

Removes a previously-registered listener.

Definition at line 641 of file juce_OSCReceiver.cpp.

◆ removeListener() [3/4]

void juce::OSCReceiver::removeListener ( ListenerWithOSCAddress< MessageLoopCallback > *  listenerToRemove)

Removes a previously-registered listener.

Definition at line 646 of file juce_OSCReceiver.cpp.

◆ removeListener() [4/4]

void juce::OSCReceiver::removeListener ( ListenerWithOSCAddress< RealtimeCallback > *  listenerToRemove)

Removes a previously-registered listener.

Definition at line 651 of file juce_OSCReceiver.cpp.

Friends And Related Symbol Documentation

◆ OSCReceiverCallbackMessage

friend struct OSCReceiverCallbackMessage
friend

Definition at line 219 of file juce_OSCReceiver.h.


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