BALL
1.4.2
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
BALL
KERNEL
nucleicAcid.h
Go to the documentation of this file.
1
// -*- Mode: C++; tab-width: 2; -*-
2
// vi: set ts=2:
3
//
4
5
#ifndef BALL_KERNEL_NUCLEICACID_H
6
#define BALL_KERNEL_NUCLEICACID_H
7
8
#ifndef BALL_KERNEL_MOLECULE_H
9
# include <
BALL/KERNEL/molecule.h
>
10
#endif
11
12
#ifndef BALL_KERNEL_NUCLEOTIDE_H
13
# include <
BALL/KERNEL/nucleotide.h
>
14
#endif
15
16
#define BALL_NUCLEICACID_DEFAULT_ID ""
17
18
namespace
BALL
19
{
27
class
BALL_EXPORT
NucleicAcid
28
:
public
Molecule
29
{
30
public
:
31
32
BALL_CREATE_DEEP
(
NucleicAcid
)
33
34
37
38
40
enum
Property
41
{
42
NUMBER_OF_PROPERTIES =
Molecule::NUMBER_OF_PROPERTIES
43
};
44
46
49
52
NucleicAcid
();
53
56
NucleicAcid
(
const
NucleicAcid
& nucleic_acid,
bool
deep =
true
);
57
60
NucleicAcid
(
const
String
& name,
61
const
String
&
id
=
BALL_NUCLEICACID_DEFAULT_ID
);
62
65
virtual
~
NucleicAcid
();
66
69
virtual
void
clear();
70
74
virtual
void
destroy();
75
77
80
84
void
persistentWrite(
PersistenceManager
& pm,
const
char
* name = 0)
const
;
85
89
void
persistentRead(
PersistenceManager
& pm);
90
92
95
101
void
set
(
const
NucleicAcid
& nucleic_acid,
bool
deep =
true
);
102
105
NucleicAcid
& operator = (
const
NucleicAcid
& nucleic_acid);
106
109
void
get
(
NucleicAcid
& nucleic_acid,
bool
deep =
true
)
const
;
110
113
void
swap(
NucleicAcid
& nucleic_acid);
114
116
121
bool
operator == (
const
NucleicAcid
& nucleic_acid)
const
;
122
126
bool
operator != (
const
NucleicAcid
& nucleic_acid)
const
;
127
130
138
Nucleotide
* getNucleotide(
Position
position);
139
147
const
Nucleotide
* getNucleotide(
Position
position)
const
;
148
153
Nucleotide
*
get3Prime
();
154
159
const
Nucleotide
*
get3Prime
()
const
;
160
165
Nucleotide
*
get5Prime
();
166
171
const
Nucleotide
*
get5Prime
()
const
;
172
176
void
setID(
const
String
&
id
);
177
181
const
String
& getID()
const
;
182
186
Size
countNucleotides()
const
;
187
189
190
using
Molecule::prepend
;
191
using
Molecule::append
;
192
using
Molecule::insert
;
193
using
Molecule::insertBefore
;
194
using
Molecule::insertAfter
;
195
using
Molecule::remove
;
196
using
Molecule::splice
;
197
using
Molecule::spliceBefore
;
198
using
Molecule::spliceAfter
;
199
203
209
virtual
bool
isValid()
const
;
210
218
virtual
void
dump(std::ostream& s = std::cout,
Size
depth = 0)
const
;
219
221
222
// --- EXTERNAL ITERATORS
223
224
BALL_KERNEL_DEFINE_ITERATOR_CREATORS
(
Nucleotide
)
225
226
227
private:
228
229
// --- ATTRIBUTES
230
231
String
id_;
232
};
233
}
// namespace BALL
234
235
#endif // BALL_KERNEL_NUCLEICACID_H
Generated by
1.8.3.1