File: TestDBReaderIndexSerialization.cpp

package info (click to toggle)
mmseqs2 18-8cc5c%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 34,388 kB
  • sloc: cpp: 87,288; ansic: 10,655; sh: 2,919; makefile: 142; perl: 13
file content (25 lines) | stat: -rw-r--r-- 1,049 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include "Debug.h"
#include "DBReader.h"

const char* binary_name = "test_dbreaderindexserialization";

int main (int, const char**) {
    DBReader<unsigned int> reader("", "../example-data/DB.index", 1, DBReader<unsigned int>::USE_INDEX);
    reader.open(DBReader<unsigned int>::NOSORT);

    Debug(Debug::INFO) << reader.getSize() << " " << reader.getAminoAcidDBSize() << "\n";
    Debug(Debug::INFO) << reader.getIndex()[0].id  << " " << reader.getIndex()[0].offset  << " " << reader.getIndex()[0].length  << "\n";

    char* data = DBReader<unsigned int>::serialize(reader);
    DBReader<unsigned int>* newdbr = DBReader<unsigned int>::unserialize(data, 1);
    newdbr->open(DBReader<unsigned int>::NOSORT);

    Debug(Debug::INFO) << newdbr->getSize() << " " << newdbr->getAminoAcidDBSize() << "\n";
    Debug(Debug::INFO) << newdbr->getIndex()[0].id  << " " << newdbr->getIndex()[0].offset  << " " << newdbr->getIndex()[0].length << "\n";
    free(data);

    newdbr->close();
    delete newdbr;
    reader.close();
    return EXIT_SUCCESS;
}