Chemical Data Processing Library C++ API - Version 1.1.1
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
a
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
i
j
l
m
p
q
r
s
t
u
v
x
Enumerations
Enumerator
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
~
Variables
a
b
c
d
e
f
g
l
m
n
o
r
s
t
v
w
y
Typedefs
a
b
c
d
e
f
g
h
i
k
m
o
p
q
r
s
t
v
w
Enumerations
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
Related Functions
b
c
d
e
f
g
h
l
m
p
r
s
u
Files
File List
File Members
All
_
c
h
i
Typedefs
Macros
c
h
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
CDPL
Chem
XYZMoleculeReader.hpp
Go to the documentation of this file.
1
/*
2
* XYZMoleculeReader.hpp
3
*
4
* This file is part of the Chemical Data Processing Toolkit
5
*
6
* Copyright (C) 2003 Thomas Seidel <thomas.seidel@univie.ac.at>
7
*
8
* This library is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU Lesser General Public
10
* License as published by the Free Software Foundation; either
11
* version 2 of the License, or (at your option) any later version.
12
*
13
* This library is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
* Lesser General Public License for more details.
17
*
18
* You should have received a copy of the GNU Lesser General Public License
19
* along with this library; see the file COPYING. If not, write to
20
* the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21
* Boston, MA 02111-1307, USA.
22
*/
23
29
#ifndef CDPL_CHEM_XYZMOLECULEREADER_HPP
30
#define CDPL_CHEM_XYZMOLECULEREADER_HPP
31
32
#include <memory>
33
34
#include "
CDPL/Chem/APIPrefix.hpp
"
35
#include "
CDPL/Util/StreamDataReader.hpp
"
36
37
38
namespace
CDPL
39
{
40
41
namespace
Chem
42
{
43
44
class
XYZDataReader;
45
class
Molecule;
46
47
class
CDPL_CHEM_API
XYZMoleculeReader
:
public
Util::StreamDataReader
<Molecule, XYZMoleculeReader>
48
{
49
50
public
:
56
XYZMoleculeReader
(std::istream& is);
57
61
~XYZMoleculeReader
();
62
63
private
:
64
friend
class
Util::StreamDataReader
<
Molecule
,
XYZMoleculeReader
>;
65
66
XYZMoleculeReader
(
const
XYZMoleculeReader
&);
67
68
XYZMoleculeReader
& operator=(
const
XYZMoleculeReader
&);
69
70
bool
readData(std::istream&,
Molecule
&,
bool
overwrite);
71
bool
skipData(std::istream&);
72
bool
moreData(std::istream&);
73
74
typedef
std::unique_ptr<XYZDataReader> XYZDataReaderPtr;
75
76
XYZDataReaderPtr reader;
77
};
78
}
// namespace Chem
79
}
// namespace CDPL
80
81
#endif // CDPL_CHEM_XYZMOLECULEREADER_HPP
APIPrefix.hpp
Definition of the preprocessor macro CDPL_CHEM_API.
CDPL::Chem::XYZMoleculeReader
Definition:
XYZMoleculeReader.hpp:48
CDPL_CHEM_API
#define CDPL_CHEM_API
Tells the compiler/linker which classes, functions and variables are part of the library API.
CDPL::Chem::Molecule
Molecule.
Definition:
Molecule.hpp:49
CDPL
The namespace of the Chemical Data Processing Library.
CDPL::Chem::XYZMoleculeReader::~XYZMoleculeReader
~XYZMoleculeReader()
Destructor.
CDPL::Chem::XYZMoleculeReader::XYZMoleculeReader
XYZMoleculeReader(std::istream &is)
Constructs a XYZMoleculeReader instance that will read the molecule data from the input stream is.
StreamDataReader.hpp
Definition of the class CDPL::Util::StreamDataReader.
CDPL::Util::StreamDataReader
A helper class that implements Base::DataReader for std::istream based data readers.
Definition:
StreamDataReader.hpp:73
Generated by
1.8.20