int main() { //http://stackoverflow.com/questions/15333259/c-stdwstring-to-stdstring-quick-and-dirty-conversion-for-use-as-key-in std::wstring ws(L"ABCD€FG"); std::string s((const char*)&ws[0], sizeof(wchar_t)/sizeof(char)*ws.size()); std::wstring nws((const wchar_t*)&s[0], sizeof(char)/sizeof(wchar_t)*s.size()); std::cout << (nws==ws); }
bool Topology::isUpstream(const Identity &id) const { if (isRoot(id)) return true; std::vector< SharedPtr<Network> > nws(RR->node->allNetworks()); for(std::vector< SharedPtr<Network> >::const_iterator nw(nws.begin());nw!=nws.end();++nw) { SharedPtr<NetworkConfig> nc((*nw)->config2()); if (nc) { for(std::vector< std::pair<Address,InetAddress> >::const_iterator r(nc->relays().begin());r!=nc->relays().end();++r) { if (r->first == id.address()) return true; } } } return false; }
// ---------------------------------------------------------------------------- // getHostAddress (static) // ---------------------------------------------------------------------------- QHostAddress NetworkTools::getHostAddress(const QNetworkConfiguration &in_network_config) { if (in_network_config.isValid() == false) return QHostAddress(); qDebug() << "NetworkTools::getHostAddress - configuration bearer type:" << in_network_config.bearerTypeName(); QNetworkSession nws(in_network_config); if (nws.state() == QNetworkSession::Invalid || nws.state() == QNetworkSession::NotAvailable) return QHostAddress(); qDebug() << "NetworkTools::getHostAddress - session state:" << nws.state(); QNetworkInterface nwi = nws.interface(); if (nwi.isValid() == false) return QHostAddress(); if (nwi.addressEntries().isEmpty()) return QHostAddress(); foreach(QNetworkAddressEntry temp, nwi.addressEntries()) qDebug() << "NetworkTools::getHostAddress - session addr entry:" << temp.ip().toString(); QNetworkAddressEntry nwae = nwi.addressEntries().first(); QHostAddress host_address = nwae.ip(); return host_address; }