BALL
1.4.79
|
#include <BALL/FORMAT/JCAMPFile.h>
Classes | |
class | JCAMPValue |
Public Types | |
enum | ContentType { STRING, NUMERIC, ARRAY } |
typedef std::pair< String, JCAMPValue > | KeyValuePair |
a key-value pair More... | |
typedef StringHashMap< JCAMPValue > | EntryMap |
A hash map containing the JCAMP entries. More... | |
typedef StringHashMap< String > | HeaderMap |
A hash map containing the header entries. More... | |
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 Destructors | |
JCAMPFile () | |
JCAMPFile (const String &name, OpenMode open_mode=std::ios::in) | |
virtual | ~JCAMPFile () |
Accessors | |
void | read () |
bool | write () |
HeaderMap & | getHeader () |
const HeaderMap & | getHeader () const |
EntryMap & | getEntries () |
const EntryMap & | getEntries () const |
const JCAMPValue & | operator[] (const String &name) const |
double | getDoubleValue (const String &name) const |
Index | getIntValue (const String &name) const |
bool | hasEntry (const String &name) const |
bool | hasHeader (const String &name) const |
const JCAMPFile & | operator= (const JCAMPFile &file) |
Equality operators | |
bool | operator== (const JCAMPFile &f) const |
bool | operator!= (const JCAMPFile &f) const |
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 Attributes | |
HeaderMap | header_ |
Entries from the header section. More... | |
EntryMap | entries_ |
Entries from the key-value section. More... | |
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_ |
JCAMP file class. This class parses JCAMP files, which are often used to store parameter files in spectroscopy (NMR, IR, MS), e.g. in Bruker instruments.
Definition at line 28 of file JCAMPFile.h.
A hash map containing the JCAMP entries.
Definition at line 69 of file JCAMPFile.h.
A hash map containing the header entries.
Definition at line 72 of file JCAMPFile.h.
typedef std::pair<String, JCAMPValue> BALL::JCAMPFile::KeyValuePair |
a key-value pair
Definition at line 66 of file JCAMPFile.h.
|
inline |
Default constructor
Definition at line 81 of file JCAMPFile.h.
Detailed constructor
Exception::FileNotFound | if the file could not be opened |
|
inlinevirtual |
Destructor
Definition at line 90 of file JCAMPFile.h.
Return a double value for key name
Exception::InvalidFormat | if the value is not a floating point number |
|
inline |
Definition at line 114 of file JCAMPFile.h.
|
inline |
Definition at line 117 of file JCAMPFile.h.
|
inline |
Definition at line 108 of file JCAMPFile.h.
|
inline |
Definition at line 111 of file JCAMPFile.h.
Return an int value for key name
Exception::InvalidFormat | if the value is not convertible to an int |
Definition at line 133 of file JCAMPFile.h.
Definition at line 136 of file JCAMPFile.h.
|
inline |
Definition at line 120 of file JCAMPFile.h.
void BALL::JCAMPFile::read | ( | ) |
Read the file.
Exception::ParseError | if a syntax error was encountered |
bool BALL::JCAMPFile::write | ( | ) |
Write the file.
File::CannotWrite | if writing to the file failed |
|
protected |
Entries from the key-value section.
Definition at line 162 of file JCAMPFile.h.
|
protected |
Entries from the header section.
Definition at line 159 of file JCAMPFile.h.