示例#1
0
std::vector<ProtocolTreeNode*>* BinTreeNodeReader::readList(int token)
{
	int size = readListSize(token);
	std::vector<ProtocolTreeNode*>* list = new std::vector<ProtocolTreeNode*>(size);
	for (int i = 0; i < size; i++)
		(*list)[i] = nextTreeInternal();

	return list;
}
示例#2
0
void BinTreeNodeReader::readList(qint32 token,ProtocolTreeNode& node,QDataStream& in)
{
    int size = readListSize(token,in);
    for (int i=0; i<size; i++)
    {
        ProtocolTreeNode child;
        nextTreeInternal(child,in);
        node.addChild(child);
    }
}
示例#3
0
bool BinTreeNodeReader::nextTree(ProtocolTreeNode& node)
{
    bool result;

    node.setSize(getOneToplevelStream());
    QDataStream in(readBuffer);

    result = nextTreeInternal(node, in);
    qDebug() << "read" << node.toString();
    return result;
}
示例#4
0
bool BinTreeNodeReader::nextTree(ProtocolTreeNode& node)
{
    bool result;

    node.setSize(getOneToplevelStream());
    QDataStream in(readBuffer);

    result = nextTreeInternal(node, in);
    Utilities::logData(QDateTime::currentDateTime().toString());
    Utilities::logData(node.toString());
    return result;
}
示例#5
0
bool BinTreeNodeReader::nextTree(ProtocolTreeNode& node)
{
    bool result;

    if (!getOneToplevelStream()) {
        return false;
    }

    node.setSize(getOneToplevelStreamSize());

    result = nextTreeInternal(node);
    Utilities::logData("INCOMING:\n" + node.toString());
    return result;
}
示例#6
0
bool BinTreeNodeReader::readList(qint32 token,ProtocolTreeNode& node)
{
    int size = 0;
    if (!readListSize(token, size)) {
        qDebug() << "failed to read listSize";
        return false;
    }
    for (int i=0; i<size; i++)
    {
        ProtocolTreeNode child;
        //TODO: check results
        nextTreeInternal(child);
        node.addChild(child);
    }
    return true;
}
示例#7
0
ProtocolTreeNode* BinTreeNodeReader::nextTree()
{
	this->getTopLevelStream();
	return nextTreeInternal();
}