//Called by the 'system' when dll data has arrived. bool TKSyncherInterface::InterfaceReceivedData(AppID from_app_id, void* input_data, void* output_data){ if(from_app_id.m_app_id!=syncherspace::m_syncher_app.m_app_id || !mb_registered) //only care if it is from the syncher return false; IPInterface message; message.ReadFromBuffer((byte*)input_data); if(message.v_strings.size()<1) return false; //make sure the source name matches this one. if(stricmp(message.v_strings[0].c_str(),m_source.c_str())!=0) return false; if(message.m_type==message.CURRENTMAP ){ UINT tmp; m_current_map.ReadFromBuffer(message.GetData(tmp)); return true; } if(message.m_type==message.ISCHANGING){ mb_changing=true; } if(message.m_type==message.MAPDONECHANGING && message.v_strings.size()==2){ MapFinishedChanging((char*)message.v_strings[1].c_str()); mb_changing=false; return true; } if(message.m_type==message.MAPHASCHANGED && message.v_strings.size()==2){ MapHasChanged((char*)message.v_strings[1].c_str()); return true; } return false; }