source: tags/svn.1.5.4/RNACMA/AlignedSequenceLoader.h

Last change on this file was 7898, checked in by westram, 14 years ago
  • removed RNACMA debug code
File size: 1.2 KB
Line 
1/*
2 * AlignedSequenceLoader.h
3 *
4 * Interface to Arb's DB.
5 * This class loads aligned sequences from Arb's DB and allows the other
6 * code in this package to access it in a standard way.
7 *
8 *  Created on: Feb 15, 2010
9 *      Author: Breno Faria
10 */
11
12#ifndef ALIGNEDSEQUENCELOADER_H_
13#define ALIGNEDSEQUENCELOADER_H_
14
15#include "Cma.h"
16
17class AlignedSequenceLoader {
18
19private:
20    /**
21     * The aligned sequences (see Cma.h for the definition of VecVecType).
22     */
23    VecVecType *seqs;
24    /**
25     * The positions map between cleaned-up alignment and original one.
26     */
27    vector<size_t> *position_map;
28    /**
29     * The length of the multiple sequence alignment.
30     */
31    size_t MSA_len;
32    /**
33     * Cleans-up the MSA, removing positions with no base occurrence.
34     */
35    void cleanSeqs(size_t* occurrences, long len);
36
37public:
38
39    /**
40     * Returns the MSA length.
41     */
42    size_t getMsaLen();
43
44    /**
45     * Returns the position map.
46     */
47    vector<size_t> * getPositionMap();
48
49    /**
50     * Returns the aligned sequences.
51     */
52    VecVecType* getSequences();
53
54    /**
55     * Constructor.
56     */
57    AlignedSequenceLoader();
58
59    /**
60     * Destructor.
61     */
62    virtual ~AlignedSequenceLoader();
63};
64
65#endif /* ALIGNEDSEQUENCELOADER_H_ */
Note: See TracBrowser for help on using the repository browser.