37 #ifndef INCLUDED_OSCPACK_OSCPACKETLISTENER_H
38 #define INCLUDED_OSCPACK_OSCPACKETLISTENER_H
40 #include "OscReceivedElements.h"
41 #include "../ip/PacketListener.h"
46 class OscPacketListener :
public PacketListener{
48 virtual void ProcessBundle(
const osc::ReceivedBundle& b,
49 const IpEndpointName& remoteEndpoint )
53 for( ReceivedBundle::const_iterator i = b.ElementsBegin();
54 i != b.ElementsEnd(); ++i ){
56 ProcessBundle( ReceivedBundle(*i), remoteEndpoint );
58 ProcessMessage( ReceivedMessage(*i), remoteEndpoint );
62 virtual void ProcessMessage(
const osc::ReceivedMessage& m,
63 const IpEndpointName& remoteEndpoint ) = 0;
66 virtual void ProcessPacket(
const char *data,
int size,
67 const IpEndpointName& remoteEndpoint )
69 osc::ReceivedPacket p( data, size );
71 ProcessBundle( ReceivedBundle(p), remoteEndpoint );
73 ProcessMessage( ReceivedMessage(p), remoteEndpoint );