Here are the data structures with brief descriptions:
| OSCAddressSpace | OSCAddressSpace is a representation of the OSC address space described in the OSC spec. It is a subclass of OSCNode. This class is optional- it's not needed for basic OSC message sending/receiving |
| OSCBundle | An OSCBundle is a "container" for multiple OSC messages or bundles (bundles may also be nested) |
| <OSCDelegateProtocol> | Most common means of passing OSC data to your application. Delegates of OSCManager and OSCInPort should support this protocol |
| OSCInPort | OSCInPort handles everything needed to receive OSC data on a given port |
| OSCManager | Main VVOSC class- manages in & out port creation, zero configuration networking (bonjour/zeroconf) |
| OSCMessage | Corresponds to an OSC message: contains zero or more values, and the address path the values have to get sent to |
| OSCNode | OSCNode describes a single destination for OSC addresses. The OSC address space is made up of many different nodes. This class is optional- it is not used for basic OSC message sending/receiving, and only gets used if you start working with OSCAddressSpace |
| OSCOutPort | OSCOutPort handles everything needed to send OSC data to a given address |
| OSCPacket | Used to parse raw OSC data or to assemble raw OSC data from OSCMessages/OSCBundles |
| OSCValue | OSCValue encapsulates any value you can send or receive via OSC. It is NOT mutable at this time |