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
FORMAT
KCFFile.h
Go to the documentation of this file.
1
// -*- Mode: C++; tab-width: 2; -*-
2
// vi: set ts=2:
3
//
4
5
#ifndef BALL_FORMAT_KCFFILE_H
6
#define BALL_FORMAT_KCFFILE_H
7
8
#ifndef BALL_FORMAT_GENERICMOLFILE_H
9
# include <
BALL/FORMAT/genericMolFile.h
>
10
#endif
11
12
#ifndef BALL_MATHS_VECTOR3_H
13
# include <
BALL/MATHS/vector3.h
>
14
#endif
15
16
namespace
BALL
17
{
18
class
System;
19
class
Atom
;
20
class
Molecule;
21
27
class
BALL_EXPORT
KCFFile
28
:
public
GenericMolFile
29
{
30
public
:
31
34
static
const
char
*
ENTRY_TAG
;
35
static
const
char
*
NODE_TAG
;
36
static
const
char
*
EDGE_TAG
;
37
static
const
char
*
DELIMITER_TAG
;
38
static
const
char
*
CONTINUED_LINE
;
40
43
typedef
HashMap<const Atom*, Position>
AtomIndexMap
;
44
typedef
HashMap<Position, Atom*>
IndexAtomMap
;
46
50
53
KCFFile
();
54
58
KCFFile
(
const
String
& filename,
File::OpenMode
open_mode = std::ios::in);
59
62
virtual
~
KCFFile
();
64
68
72
virtual
bool
write(
const
Molecule
& molecule);
73
78
virtual
bool
write(
const
System
& system);
79
85
virtual
bool
read(
System
& system);
86
91
virtual
Molecule
* read();
92
94
const
KCFFile
& operator = (
const
KCFFile
& file);
95
97
98
protected
:
99
100
bool
readENTRY_(
Molecule
& mol);
101
bool
readNODE_(
Molecule
& mol,
IndexAtomMap
& index_to_atom);
102
bool
readEDGE_(
IndexAtomMap
& index_to_atom);
103
bool
readDELIMITER_();
104
};
105
106
}
// namespace BALL
107
108
#endif // BALL_FORMAT_KCFFILE_H
Generated by
1.8.3.1