a string class embedding a string in a compact bit representation
especially useful to compactly represent genomic DNA
(or any other string of small alphabet size)
Definition at line 28 of file BitString.h.

Public Member Functions | |
| CBitString (void) | |
| CBitString (EAlphabet alpha, int32_t width=1) | |
| ~CBitString () | |
| void | cleanup () |
| void | obtain_from_char (char *str, uint64_t len) |
| void | load_fasta_file (const char *fname, bool ignore_invalid=false) |
| void | set_string (uint64_t *str, uint64_t len) |
| void | create (uint64_t len) |
| uint64_t | operator[] (uint64_t index) const |
| void | set_binary_word (uint16_t word, uint64_t index) |
| uint64_t | get_length () const |
| virtual const char * | get_name () const |
| CBitString | ( | void | ) |
default constructor
Definition at line 32 of file BitString.h.
| CBitString | ( | EAlphabet | alpha, | |
| int32_t | width = 1 | |||
| ) |
default constructor
creates an empty Bitstring
| alpha | Alphabet | |
| width | return this many bits upon str[idx] access operations |
Definition at line 50 of file BitString.h.
| ~CBitString | ( | ) |
destructor
Definition at line 67 of file BitString.h.
| void cleanup | ( | ) |
free up memory
Definition at line 74 of file BitString.h.
| void create | ( | uint64_t | len | ) |
creates string of all zeros of len bits
| len | length of string in bits |
Definition at line 221 of file BitString.h.
| uint64_t get_length | ( | ) | const |
Definition at line 329 of file BitString.h.
| virtual const char* get_name | ( | void | ) | const [virtual] |
| void load_fasta_file | ( | const char * | fname, | |
| bool | ignore_invalid = false | |||
| ) |
load fasta file as bit string
| fname | filename to load from | |
| ignore_invalid | if set to true, characters other than A,C,G,T are converted to A |
Definition at line 123 of file BitString.h.
| void obtain_from_char | ( | char * | str, | |
| uint64_t | len | |||
| ) |
convert string of length len into bit sequence
| str | string | |
| len | length of string in bits |
Definition at line 86 of file BitString.h.
| uint64_t operator[] | ( | uint64_t | index | ) | const |
access array by [] operator
| index | index into array |
Definition at line 263 of file BitString.h.
| void set_binary_word | ( | uint16_t | word, | |
| uint64_t | index | |||
| ) |
set a binary word
| word | 16 bit word to be set | |
| index | word based index |
Definition at line 289 of file BitString.h.
| void set_string | ( | uint64_t * | str, | |
| uint64_t | len | |||
| ) |
set string of length len embedded in a uint64_t sequence
| str | string | |
| len | length of string in bits |
Definition at line 210 of file BitString.h.