#include <genericMolFile.h>
Public Member Functions |
|
Constructors and Destructors
|
|
GenericMolFile () | |
Default constructor. |
|
GenericMolFile (const String &filename, File::OpenMode open_mode=std::ios::in) throw (Exception::FileNotFound) | |
Detailed constructor. |
|
GenericMolFile (const GenericMolFile &file) throw (Exception::FileNotFound) | |
Copy constructor. |
|
virtual | ~GenericMolFile () |
Destructor. |
|
Assignment
|
|
const GenericMolFile & | operator= (const GenericMolFile &rhs) throw (Exception::FileNotFound) |
Assignment operator. |
|
Reading and Writing of Kernel Datastructures
|
|
virtual bool | write (const System &system) throw (File::CannotWrite) |
Write the molecules of a system.
|
|
virtual bool | write (const Molecule &molecule) throw (File::CannotWrite) |
Write a molecule. |
|
virtual bool | read (System &system) throw (Exception::ParseError) |
Read a system. |
|
virtual Molecule * | read () throw (Exception::ParseError) |
Read a molecule. |
|
Operators
|
|
virtual GenericMolFile & | operator>> (System &system) throw (Exception::ParseError) |
Stream operator for reading a
system. |
|
virtual GenericMolFile & | operator<< (const System &system) throw (File::CannotWrite) |
Stream operator for writing a system
of molecules. |
|
virtual GenericMolFile & | operator>> (Molecule &molecule) throw (Exception::ParseError) |
Stream operator for reading a
molecule. |
|
virtual GenericMolFile & | operator<< (const Molecule &molecule) throw (File::CannotWrite) |
Stream operator for writing a system
of molecules. |
|
Protected Member Functions |
|
virtual void | initRead_ () |
Initialize internals for read.
|
|
virtual void | initWrite_ () |
Initialize internals for write.
|
This class provides an interface for all molecular structure formats (except for PDB files, due to their complex and capricious structure and contents).
virtual void BALL::GenericMolFile::initRead_ | ( | ) | [protected, virtual] |
Initialize internals for read.
This method is called by the default implementation of read(System& system) . Its purpose is the initialization of internal members holding, for example, header information from the file. The default implementation provided is empty.
Reimplemented in BALL::GAMESSDatFile, BALL::GAMESSLogFile, and BALL::HINFile.
virtual void BALL::GenericMolFile::initWrite_ | ( | ) | [protected, virtual] |
Initialize internals for write.
Same functionality as initRead , but is called prior to writing a system.
virtual GenericMolFile& BALL::GenericMolFile::operator<< | ( | const Molecule & | molecule | ) | throw (File::CannotWrite)
[virtual] |
virtual GenericMolFile& BALL::GenericMolFile::operator<< | ( | const System & | system | ) | throw (File::CannotWrite)
[virtual] |
Stream operator for writing a system of molecules.
Calls write(const System& system) const .
Reimplemented in BALL::PDBFile.
const GenericMolFile& BALL::GenericMolFile::operator= | ( | const GenericMolFile & | rhs | ) | throw (Exception::FileNotFound) |
Assignment operator.
Create a new object pointing to the same filename.
virtual GenericMolFile& BALL::GenericMolFile::operator>> | ( | Molecule & | molecule | ) | throw (Exception::ParseError)
[virtual] |
virtual GenericMolFile& BALL::GenericMolFile::operator>> | ( | System & | system | ) | throw (Exception::ParseError)
[virtual] |
virtual Molecule* BALL::GenericMolFile::read | ( | ) | throw (Exception::ParseError)
[virtual] |
Read a molecule.
This method will load the first (or the next, on subsequent invocation) molecule from the file. If the file format does not support multiple molecules, only the first call to read will be successful. This method will create an instance of molecule and its the user's responsibility to destroy that molecule.
Exception::ParseError | if the contents of the file could not be parsed |
Reimplemented in BALL::GAMESSDatFile, BALL::GAMESSLogFile, BALL::HINFile, BALL::KCFFile, BALL::MOL2File, BALL::MOLFile, BALL::PDBFile, BALL::SDFile, and BALL::XYZFile.
virtual bool BALL::GenericMolFile::read | ( | System & | system | ) | throw (Exception::ParseError)
[virtual] |
Read a system.
This method will read all molecules contained in the file and add them to the system.
Exception::ParseError | if the file could not be parsed while reading a molecule |
Reimplemented in BALL::GAMESSDatFile, BALL::GAMESSLogFile, BALL::HINFile, BALL::KCFFile, BALL::MOL2File, BALL::MOLFile, BALL::PDBFile, BALL::SDFile, and BALL::XYZFile.
virtual bool BALL::GenericMolFile::write | ( | const Molecule & | molecule | ) | throw (File::CannotWrite)
[virtual] |
Write a molecule.
Repeated invocations of this method append molecules to the same file.
Reimplemented in BALL::GAMESSDatFile, BALL::GAMESSLogFile, BALL::HINFile, BALL::KCFFile, BALL::MOL2File, BALL::MOLFile, BALL::PDBFile, BALL::SDFile, and BALL::XYZFile.
virtual bool BALL::GenericMolFile::write | ( | const System & | system | ) | throw (File::CannotWrite)
[virtual] |
Write the molecules of a system.
If the file format does not support multiple molecules in a single file, a warning should be printed and only the first molecule should be stored.
Reimplemented in BALL::GAMESSDatFile, BALL::GAMESSLogFile, BALL::HINFile, BALL::KCFFile, BALL::MOL2File, BALL::MOLFile, BALL::PDBFile, BALL::SDFile, and BALL::XYZFile.