BNode* PersistorBTree::getRoot() {
        std::string buffer;
        Level level;
        BNode *root;

        buffer = this->load(0);
        buffer.copy((char*)&level,sizeof(Level));

        if(level == 0)
                root = NodeFactory::createLeafNode(this);
        else
                root = NodeFactory::createKeyNode(this);

        root->unserialize(buffer);
        root->setOffset(0);

        return root;
}