Beispiel #1
0
void Node::exportNode( Node* startPointer , std::string* nodeDataHolder , std::string* connectionDataHolder )
{
	std::string maxConnections( reinterpret_cast< const char* >( &currentMaxConnections ) , sizeof( currentMaxConnections ) );

	std::string thePosition( reinterpret_cast< const char* >( &position ) , sizeof( position ) );
	nodeDataHolder->operator+=(maxConnections + thePosition);

	for ( unsigned int i = 0; i < currentMaxConnections; i++ )
	{
		std::string test( reinterpret_cast< const char* >( &connections[i].weight ) , sizeof( connections[i].weight ) );
		float test2 = *reinterpret_cast< const float* >( test.c_str() );
		test2;
		connectionDataHolder->operator+=(std::string( reinterpret_cast< const char* >( &connections[i].weight ) , sizeof( connections[i].weight ) ));
		
		unsigned int pointer = ( unsigned int ) ( connections[i].connectedNode - startPointer );
		connectionDataHolder->operator+=( std::string( reinterpret_cast< const char* >( &pointer ) , sizeof( pointer ) ));
	}
}
Beispiel #2
0
void KDSoapServer::incomingConnection(int socketDescriptor)
#endif
{
    const int max = maxConnections();
    const int numSockets = numConnectedSockets();
    if (max > -1 && numSockets >= max) {
        emit connectionRejected();
        log(QByteArray("ERROR Too many connections (") + QByteArray::number(numSockets) + "), incoming connection rejected\n");
    } else if (d->m_threadPool) {
        //qDebug() << "incomingConnection: using thread pool";
        d->m_threadPool->handleIncomingConnection(socketDescriptor, this);
    } else {
        //qDebug() << "incomingConnection: using main-thread socketlist";
        if (!d->m_mainThreadSocketList)
            d->m_mainThreadSocketList = new KDSoapSocketList(this /*server*/);
        d->m_mainThreadSocketList->handleIncomingConnection(socketDescriptor);
    }
}