BALL
1.4.79
|
#include <BALL/FORMAT/HMOFile.h>
Classes | |
class | HMOCharge |
Public Types | |
Nested classes and enums | |
enum | ElementType { L2 = 60, L3 = 63, T3 = 103, T6 = 106, Q4 = 104, Q8 = 108, TH4 = 204, TH10 = 210, P6 = 206, P15 = 215, H8 = 208, H20 = 220 } |
Public Types inherited from BALL::File | |
typedef std::ios::openmode | OpenMode |
enum | Transformation { TRANSFORMATION__EXEC = 1, TRANSFORMATION__FILTER = 2, TRANSFORMATION__URL = 3 } |
enum | Type { TYPE__UNKNOWN = 0, TYPE__DIRECTORY = 1, TYPE__CHAR_SPECIAL_FILE = 2, TYPE__BLOCK_SPECIAL_FILE = 3, TYPE__REGULAR_FILE = 4, TYPE__SYMBOLIC_LINK = 5, TYPE__SOCKET = 6, TYPE__FIFO_SPECIAL_FILE = 7 } |
Public Member Functions | |
Constructors and Destructor | |
HMOFile () | |
Default constructor. More... | |
HMOFile (const String &filename, File::OpenMode open_mode=std::ios::in) | |
virtual | ~HMOFile () |
Destructor. More... | |
Assignment | |
virtual void | clear () |
Clear method. More... | |
Predicates | |
bool | operator== (const HMOFile &file) |
Equality operator. More... | |
Accessors | |
bool | hasCharges () const |
Test for the presence of charges. More... | |
std::vector< HMOCharge > & | getCharges () |
Accessor for the vector of charges. More... | |
std::vector< HMOCharge > const & | getCharges () const |
Accessor for the vector of charges, const version. More... | |
bool | hasComments () const |
Test for the presence of comments. More... | |
std::vector< String > & | getComments () |
Accessor for the vector of comments. More... | |
std::vector< String > const & | getComments () const |
Accessor for the vector of comments, const version. More... | |
Public methods for file handling | |
virtual bool | open (const String &name, File::OpenMode open_mode=std::ios::in) |
virtual bool | read (Surface &surface) |
virtual bool | write (Surface const &surface) |
virtual bool | write (Surface const &surface, AtomContainer const &ac) |
Public Member Functions inherited from BALL::LineBasedFile | |
LineBasedFile () | |
Default constructor. More... | |
LineBasedFile (const String &filename, File::OpenMode open_mode=std::ios::in, bool trim_whitespaces=false) | |
void | clear () |
bool | operator== (const LineBasedFile &f) |
bool | operator!= (const LineBasedFile &f) |
const LineBasedFile & | operator= (const LineBasedFile &file) |
Position | getLineNumber () const |
Get the last line number in the file. More... | |
const String & | getLine () const |
Return the current line. More... | |
String & | getLine () |
Return the current line. More... | |
bool | readLine () |
bool | skipLines (Size number=1) |
bool | search (const String &text, bool return_to_start=false) |
bool | search (const String &text, const String &stop, bool return_to_start=false) |
bool | gotoLine (Position line_number) |
void | rewind () |
void | test (const char *file, int line, bool condition, const String &msg) const |
String | getField (Index pos=0, const String "es="", const String &delimiters=String::CHARACTER_CLASS__WHITESPACE) const |
bool | startsWith (const String &text) const |
Test if the current line starts with text. More... | |
bool | has (const String &text) const |
Return true if the current line contains text. More... | |
Index | switchString (const std::vector< String > &data) const |
bool | parseColumnFormat (const char *format, Position index, Size length, void *arg) |
void | enableTrimWhitespaces (bool state) |
Set wheter leading and trailing whitespaces in lines shall be removed. More... | |
bool | trimWhiteSpacesEnabled () const |
Public Member Functions inherited from BALL::File | |
File () | |
File (const String &name, OpenMode open_mode=std::ios::in) | |
virtual | ~File () |
bool | isValid () const |
bool | open (const String &name, File::OpenMode open_mode=std::ios::in) |
bool | reopen () |
bool | reopen (File::OpenMode open_mode) |
void | close () |
const String & | getName () const |
void | setName (const String &name) |
const String & | getOriginalName () const |
Size | getSize () |
File::OpenMode | getOpenMode () const |
Type | getType (bool trace_link) const |
bool | copyTo (const String &destination_name, Size buffer_size=4096) |
bool | moveTo (const String &destination_name) |
bool | remove () |
bool | renameTo (const String &new_path) |
bool | truncate (Size size=0) |
std::fstream & | getFileStream () |
TransformationManager & | getTransformationManager () |
const TransformationManager & | getTransformationManager () const |
bool | operator== (const File &file) const |
bool | operator!= (const File &file) const |
bool | isOpen () const |
bool | isClosed () const |
bool | isAccessible () const |
bool | isCanonized () const |
bool | isReadable () const |
bool | isWritable () const |
bool | isExecutable () const |
Protected Member Functions | |
void | readNodeData_ (Surface &surface) |
void | readElementData_ (Surface &surface) |
void | readChargeData_ () |
bool | readUntil_ (String const &pattern) |
void | writeNodes_ (Surface const &surface) |
void | writeElements_ (Surface const &surface) |
void | writeCharges_ (AtomContainer const &ac) |
Protected Attributes | |
std::vector< HMOCharge > | charges_ |
std::vector< String > | comments_ |
Protected Attributes inherited from BALL::LineBasedFile | |
String | line_ |
buffer for the line in use More... | |
Position | line_number_ |
line number in the file More... | |
bool | trim_whitespaces_ |
vector< char > | col_buffer_ |
buffer for column parsing More... | |
Protected Attributes inherited from BALL::File | |
String | name_ |
String | original_name_ |
OpenMode | open_mode_ |
bool | is_open_ |
bool | is_temporary_ |
Additional Inherited Members | |
Static Public Member Functions inherited from BALL::File | |
static Size | getSize (String name) |
static Type | getType (String name, bool trace_link) |
static bool | copy (String source_name, String destination_name, Size buffer_size=4096) |
static bool | move (const String &source_name, const String &destination_name) |
static bool | remove (String name) |
static bool | rename (String old_path, String new_path) |
static bool | truncate (String path, Size size=0) |
static bool | createTemporaryFilename (String &temporary, const String &suffix=".TMP") |
static void | enableTransformation (Transformation transformation) |
static void | disableTransformation (Transformation transformation) |
static bool | isTransformationEnabled (Transformation transformation) |
static void | registerTransformation (const String &pattern, const String &exec) |
static void | unregisterTransformation (const String &pattern) |
static bool | isAccessible (String name) |
static bool | isReadable (String name) |
static bool | isWritable (String name) |
static bool | isExecutable (String name) |
Static Public Attributes inherited from BALL::File | |
static const OpenMode | MODE_IN |
Open for input (default) More... | |
static const OpenMode | MODE_OUT |
Open for output. More... | |
static const OpenMode | MODE_APP |
Append. Seek to end before each write operation. More... | |
static const OpenMode | MODE_BINARY |
Binary mode. More... | |
static const OpenMode | MODE_ATE |
Seek to end directly after opening. More... | |
static const OpenMode | MODE_TRUNC |
Truncate an existing file. More... | |
static const String | TRANSFORMATION_EXEC_PREFIX |
Prefix for filenames that are created through the execution of commands "exec:". More... | |
static const String | TRANSFORMATION_FILE_PREFIX |
Prefix for files (to mimick URL-like behavior) "file:". More... | |
static const String | TRANSFORMATION_FTP_PREFIX |
Prefix for FTP-transfers "ftp://". More... | |
static const String | TRANSFORMATION_HTTP_PREFIX |
Prefix for HTTP-transfer "http://". More... | |
Static Protected Attributes inherited from BALL::File | |
static HashSet< String > | created_temp_filenames_ |
static TransformationManager | transformation_manager_ |
static Size | transformation_methods_ |
HMO mesh file format.
This class enables BALL to read and write the HMO format for polygonal meshes of surfaces. For the moment, we do not implement all variants allowed by HMO, but rather focus on triangular surface meshes. In addition, we read and write an extension to HMO (CHARGE_DATA), which contains information about positions and magnitudes of partially charged atoms in the system.
BALL::HMOFile::HMOFile | ( | ) |
Default constructor.
BALL::HMOFile::HMOFile | ( | const String & | filename, |
File::OpenMode | open_mode = std::ios::in |
||
) |
Detailed constructor
Exception::FileNotFound | if the file could not be opened |
|
virtual |
Destructor.
|
virtual |
Clear method.
Reimplemented from BALL::File.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
virtual |
Open an HMOFile
Exception::FileNotFound | if the file could not be opened |
Read the file into a Surface
Exception::ParseError | if the file was invalid |
|
protected |
|
protected |
|
protected |
Write a given surface to an HMO file
If the vector of comments is not empty, it is prepended to the written file. Otherwise, a generic comment is used.
Return true if the file could be written succesfully, false otherwise
|
virtual |
Write a given surface and the charges contained in a given AtomContainer to an HMO file
If the vector of comments is not empty, it is prepended to the written file. Otherwise, a generic comment is used.
Return true if the file could be written successfully, false otherwise
|
protected |
|
protected |
|
protected |