/usr/include/libphylo/mulAlphabet.h is in rate4site 3.0.0-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | // $Id: mulAlphabet.h 6420 2009-06-25 11:17:08Z adist $
// version 1.01
// last modified 1 Jan 2004
#ifndef ___MUL_ALPHABET_H
#define ___MUL_ALPHABET_H
#include "definitions.h"
#include "alphabet.h"
#include "someUtil.h"
class mulAlphabet : public alphabet {
public:
mulAlphabet(const alphabet* baseAlphabet, int mulFactor);
mulAlphabet(const mulAlphabet& other);
virtual ~mulAlphabet();
virtual alphabet* clone() const { return new mulAlphabet(*this); }
mulAlphabet& operator=(const mulAlphabet &other);
int unknown() const ;
int gap() const;
int size() const {return _size;}
int stringSize() const ;
bool isSpecific(const int id) const ;
int fromChar(const string& str, const int pos) const;
vector<int> fromString(const string& str) const;
string fromInt(const int id) const;
int relations(const int charInSeq, const int charToCheck) const;
int compareCategories(int charA, int charB) const;
enum rateShiftType {noRateShift=0, acceleration, deceleration};
static rateShiftType compareCategories(int charA, int charB, int baseAlphabetSize, int multiplicationFactor) ;
const alphabet* getBaseAlphabet() const {return _baseAlphabet;}
public:
int convertFromBasedAlphaInt(int id) const;
int convertToBasedAlphaInt(int id) const;
private:
alphabet* _baseAlphabet; // This alphabet must use single characters, i.e. - not codon. (or we will have to add to every alphabet a member which holds its character's size)
int _mulFactor ; // number of times that the alphabet is multiplied by = Number of categories (g in Galtier paper)
int _size ; // this is simply the _baseAlphabet->size() * _mulFactor
};
#endif
|