cawlign 0.0.1
Codon-aware pairwise sequence alignment
Loading...
Searching...
No Matches
stringBuffer.h
1#ifndef __STRINGBUFFER__
2#define __STRINGBUFFER__
3
4#include "alignment.h"
5
6//__________________________________________________________________________________________
7
9
10 char *sData;
11 unsigned long sLength, saLength;
12
13public:
14 StringBuffer(void);
15 ~StringBuffer(void);
16
17 char *getString(void) const { return sData; }
18 void appendChar(const char);
19 void appendBuffer(const char *, const long = -1);
20 void resetString(void);
21 void swap(StringBuffer &);
22 unsigned long length(void) const { return sLength; }
23 void reset_length(unsigned long newL) {
24 if (newL < sLength) {
25 sLength = newL;
26 }
27 }
28 char getChar(const long i) const { return sData[i]; }
29 void flip (void);
30 void detach (void) { sData = nullptr;}
31
32 static long sbDefaultLength, sbDefaultBoost;
33};
34
35//__________________________________________________________________________________________
36
37class VectorFP {
38
39 cawlign_fp *vData;
40
41 unsigned long vLength, vaLength;
42
43public:
44 VectorFP(void);
45 ~VectorFP(void);
46
47 void appendValue(const cawlign_fp);
48 void appendValues(const cawlign_fp*, long);
49 void storeValue(const cawlign_fp, const unsigned long);
50 cawlign_fp value(const long idx) { return vData[idx]; }
51 unsigned long length(void) const { return vLength; }
52 const cawlign_fp * values (void) {return vData;}
53 cawlign_fp * rvalues (void) {return vData;}
54
55 static long vDefaultLength, vDefaultBoost;
56};
57
58//__________________________________________________________________________________________
59
60class Vector {
61
62 long *vData;
63
64 unsigned long vLength, vaLength;
65
66public:
67 Vector(void);
68 ~Vector(void);
69
70 void appendValue(const long);
71 void appendVector(const Vector &);
72 long extractMin(VectorFP &);
73 void resetVector(void);
74 void remove(const unsigned long);
75 void storeValue(const long, const unsigned long);
76 void storeVector(const Vector &, const unsigned long);
77 void sort(void);
78 void swap(Vector &);
79 long value(const long idx) const;
80 unsigned long length(void) const { return vLength; }
81
82 static long vDefaultLength, vDefaultBoost;
83};
84
85#endif
Definition stringBuffer.h:8
void swap(StringBuffer &)
Definition stringBuffer.cc:44
void appendChar(const char)
Definition stringBuffer.cc:84
StringBuffer(void)
Definition stringBuffer.cc:27
void resetString(void)
Definition stringBuffer.cc:136
void flip(void)
Definition stringBuffer.cc:58
void appendBuffer(const char *, const long=-1)
Definition stringBuffer.cc:106
~StringBuffer(void)
Definition stringBuffer.cc:74
Definition stringBuffer.h:37
~VectorFP(void)
Definition stringBuffer.cc:377
void storeValue(const cawlign_fp, const unsigned long)
Definition stringBuffer.cc:440
VectorFP(void)
Definition stringBuffer.cc:365
void appendValue(const cawlign_fp)
Definition stringBuffer.cc:389
void appendValues(const cawlign_fp *, long)
Definition stringBuffer.cc:410
Definition stringBuffer.h:60
void appendVector(const Vector &)
Definition stringBuffer.cc:211
void storeVector(const Vector &, const unsigned long)
Definition stringBuffer.cc:266
void storeValue(const long, const unsigned long)
Definition stringBuffer.cc:227
long extractMin(VectorFP &)
Definition stringBuffer.cc:299
void swap(Vector &)
Definition stringBuffer.cc:163
void appendValue(const long)
Definition stringBuffer.cc:191
void resetVector(void)
Definition stringBuffer.cc:357
Vector(void)
Definition stringBuffer.cc:147
~Vector(void)
Definition stringBuffer.cc:177
long value(const long idx) const
Definition stringBuffer.cc:249
void remove(const unsigned long)
Definition stringBuffer.cc:281
void sort(void)
Definition stringBuffer.cc:345