BALL  1.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
BALL::CIFFile Class Reference

#include <BALL/FORMAT/CIFFile.h>

Inheritance diagram for BALL::CIFFile:
BALL::File BALL::NMRStarFile

Classes

class  Datablock
 
class  Datacontent
 
class  Item
 
class  SaveFrame
 
struct  State
 

Public Member Functions

Constructors and Destructors
 CIFFile ()
 
 CIFFile (const String &filename, File::OpenMode open_mode=std::ios::in)
 
virtual ~CIFFile ()
 
Reading and Writing of Crytallographic Information
virtual bool write ()
 
virtual bool read ()
 
Accessors
void inSafeframe (const char *name)
 
void inItem (const char *name)
 
void inDatablock (const char *name)
 
void insertDatablock (const Datablock &datablock)
 
const DatablockgetDatablock (const String &name) const
 
DatablockgetDatablock (const String &name)
 
bool hasDatablock (const String &name) const
 
void setMolecule (Molecule *molecule)
 
void clearParameters ()
 
- Public Member Functions inherited from BALL::File
 File ()
 
 File (const String &name, OpenMode open_mode=std::ios::in)
 
virtual ~File ()
 
virtual void clear ()
 
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 StringgetName () const
 
void setName (const String &name)
 
const StringgetOriginalName () 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 ()
 
TransformationManagergetTransformationManager ()
 
const TransformationManagergetTransformationManager () 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
 

Static Public Attributes

static State state
 
- 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...
 

Protected Member Functions

virtual void initRead_ ()
 

Protected Attributes

Moleculemolecule_
 
String current_datablock_
 
String current_saveframe_
 
String current_item_
 
StringHashMap< Indexdatablocks_hash_
 
vector< Datablockdatablocks_
 
- Protected Attributes inherited from BALL::File
String name_
 
String original_name_
 
OpenMode open_mode_
 
bool is_open_
 
bool is_temporary_
 

Additional Inherited Members

- 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
}
 
- 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 Protected Attributes inherited from BALL::File
static HashSet< Stringcreated_temp_filenames_
 
static TransformationManager transformation_manager_
 
static Size transformation_methods_
 

Detailed Description

CIF file class. This class enables BALL to read and write input and output CIF files for the NMR shift application.

Definition at line 32 of file CIFFile.h.

Constructor & Destructor Documentation

BALL::CIFFile::CIFFile ( )

Default constructor

BALL::CIFFile::CIFFile ( const String filename,
File::OpenMode  open_mode = std::ios::in 
)

Detailed constructor

Exceptions
Exception::FileNotFoundif the file could not be opened
virtual BALL::CIFFile::~CIFFile ( )
virtual

Destructor

Member Function Documentation

void BALL::CIFFile::clearParameters ( )
const Datablock& BALL::CIFFile::getDatablock ( const String name) const
Datablock& BALL::CIFFile::getDatablock ( const String name)
bool BALL::CIFFile::hasDatablock ( const String name) const
void BALL::CIFFile::inDatablock ( const char *  name)
void BALL::CIFFile::inItem ( const char *  name)
virtual void BALL::CIFFile::initRead_ ( )
protectedvirtual
void BALL::CIFFile::inSafeframe ( const char *  name)
void BALL::CIFFile::insertDatablock ( const Datablock datablock)
virtual bool BALL::CIFFile::read ( )
virtual

Read a CIFFile.

Exceptions
Exception::ParseErrorif a syntax error was encountered

Reimplemented in BALL::NMRStarFile.

void BALL::CIFFile::setMolecule ( Molecule molecule)
virtual bool BALL::CIFFile::write ( )
virtual

Write a CIFFile.

Exceptions
File::CannotWriteif writing to the file failed

Member Data Documentation

String BALL::CIFFile::current_datablock_
protected

Definition at line 276 of file CIFFile.h.

String BALL::CIFFile::current_item_
protected

Definition at line 278 of file CIFFile.h.

String BALL::CIFFile::current_saveframe_
protected

Definition at line 277 of file CIFFile.h.

vector<Datablock> BALL::CIFFile::datablocks_
protected

Definition at line 281 of file CIFFile.h.

StringHashMap<Index> BALL::CIFFile::datablocks_hash_
protected

Definition at line 280 of file CIFFile.h.

Molecule* BALL::CIFFile::molecule_
protected

Definition at line 274 of file CIFFile.h.

State BALL::CIFFile::state
static

Definition at line 269 of file CIFFile.h.