void process_bundle( MarSystem * root_system, const osc::ReceivedBundle& bundle ) { // ignore bundle time tag for now for( osc::ReceivedBundle::const_iterator i = bundle.ElementsBegin(); i != bundle.ElementsEnd(); ++i ) { if( i->IsBundle() ) process_bundle( root_system, osc::ReceivedBundle(*i) ); else process_message( root_system, osc::ReceivedMessage(*i) ); } }
static void SendBundle(TCircularQueue<std::pair<FName, TArray<FOscDataElemStruct>>> & _pendingMessages, const osc::ReceivedBundle & bundle) { const auto begin = bundle.ElementsBegin(); const auto end = bundle.ElementsEnd(); for(auto it = begin; it != end; ++it) { if(it->IsBundle()) { SendBundle(_pendingMessages, osc::ReceivedBundle(*it)); } else { SendMessage(_pendingMessages, osc::ReceivedMessage(*it)); } } }