text: #include "foobar2000.h"
  
  int playable_location::g_compare(const playable_location & p_item1,const playable_location & p_item2) {
  	int ret = metadb::path_compare(p_item1.get_path(),p_item2.get_path());
  	if (ret != 0) return ret;
  	return pfc::compare_t(p_item1.get_subsong(),p_item2.get_subsong());
  }
  
  pfc::string_base & operator<<(pfc::string_base & p_fmt,const playable_location & p_location)
  {
  	p_fmt << "\"" << file_path_display(p_location.get_path()) << "\"";
  	t_uint32 index = p_location.get_subsong_index();
  	if (index != 0) p_fmt << " / index: " << p_location.get_subsong_index();
  	return p_fmt;
  }
  
  
  bool playable_location::operator==(const playable_location & p_other) const {
  	return metadb::path_compare(get_path(),p_other.get_path()) == 0 && get_subsong() == p_other.get_subsong();
  }
  bool playable_location::operator!=(const playable_location & p_other) const {
  	return !(*this == p_other);
  }
  