Loading...
Searching...
No Matches
GenericJson Class Reference
Inheritance diagram for GenericJson:

## Public Member Functions

Operations | supportedOperations () const override
FileFormat * | newInstance () const override
std::string | identifier () const override
| A unique identifier, used to retrieve formats programmatically. CML, XYZ, PDB etc. A runtime warning will be generated if the identifier is not unique.
std::string | name () const override
| The name of the format, should be short such as Chemical Markup Language, XYZ format, Protein Databank etc.
std::string | description () const override
std::string | specificationUrl () const override
std::vector< std::string > | fileExtensions () const override
| Get the file name extension(s) that the format supports reading.
std::vector< std::string > | mimeTypes () const override
| Get the MIME type(s) that the format supports reading.
bool | read (std::istream &in, Core::Molecule &molecule) override
| Read the given `in` stream and load it into `molecule`.
bool | write (std::ostream &, const Core::Molecule &) override
| Write to the given `out` stream the contents of `molecule`.
Public Member Functions inherited from FileFormat
bool | open (const std::string &fileName, Operation mode)
| Open the specified file in Read or Write mode.
Operation | mode ()
| The mode the format is currently operating in.
bool | isMode (Operation isInMode)
| Check if the supplied mode(s) is being used.
void | close ()
| Close any opened file handles.
bool | readMolecule (Core::Molecule &molecule)
| Read in a molecule, if there are no molecules to read molecule will be empty. This can be used to read in one or more molecules from a given file using repeated calls for each molecule.
bool | writeMolecule (const Core::Molecule &molecule)
| Write out a molecule. This can be used to write one or more molecules to a given file using repeated calls for each molecule.
virtual bool | readFile (const std::string &fileName, Core::Molecule &molecule)
| Read the given `fileName` and load it into `molecule`.
virtual bool | writeFile (const std::string &fileName, const Core::Molecule &molecule)
| Write to the given `fileName` the contents of `molecule`.
bool | readString (const std::string &string, Core::Molecule &molecule)
| Read the given `string` and load it into `molecule`.
bool | writeString (std::string &string, const Core::Molecule &molecule)
| Write to the given `string` the contents of `molecule`.
std::string | error () const
| Get the error string, contains errors/warnings encountered.
std::string | fileName () const
| Get the file name (if known).
void | setOptions (const std::string &options)
| Set options for the file reader.
std::string | options () const
| Get the file format options, can be used to change file IO.
virtual void | clear ()

## Additional Inherited Members

Public Types inherited from FileFormat
enum | Operation { None = 0x0 , Read = 0x1 , Write = 0x2 , ReadWrite = Read | Write , MultiMolecule = 0x4 , Stream = 0x10 , String = 0x20 , File = 0x40 , All = ReadWrite | MultiMolecule | Stream | String | File }
| Flags defining supported operations.
using | Operations = int
Static Public Member Functions inherited from FileFormat
static bool | validateFileName (const std::string &fileName)
| Validates the given file name.
Protected Member Functions inherited from FileFormat
void | appendError (const std::string &errorString, bool newLine=true)
| Append an error to the error string for the format.

## Member Function Documentation

## supportedOperations()

Operations supportedOperations | ( |  | ) | const

override virtual

Returns
  Operation flags defining the capabilities of this format.

Implements FileFormat.

## newInstance()

FileFormat * newInstance | ( |  | ) | const

override virtual

Create a new instance of the file format class. Ownership passes to the caller.

Implements FileFormat.

## identifier()

std::string identifier | ( |  | ) | const

override virtual

Implements FileFormat.

## name()

std::string name | ( |  | ) | const

override virtual

Implements FileFormat.

## description()

std::string description | ( |  | ) | const

override virtual

A description of the format, along with any relevant help text for users.

Implements FileFormat.

## specificationUrl()

std::string specificationUrl | ( |  | ) | const

override virtual

The URL of the format specification if available (relevant web page/wiki otherwise).

Implements FileFormat.

## fileExtensions()

std::vector< std::string > fileExtensions | ( |  | ) | const

override virtual

Returns
  A vector containing a list of extensions (in lower case).

Implements FileFormat.

## mimeTypes()

std::vector< std::string > mimeTypes | ( |  | ) | const

override virtual

Returns
  A vector containing a list of MIME type(s) (in lower case).

Implements FileFormat.

## read()

bool read | ( | std::istream & | in,
|  | Core::Molecule & | molecule )

nodiscard override virtual

Parameters

  in | The input file stream.
  molecule | The molecule the data will be read into.

Returns
  True on success, false on failure.

Implements FileFormat.

## write()

bool write | ( | std::ostream & | out,
|  | const Core::Molecule & | molecule )

nodiscard override virtual

Parameters

  out | The output stream to write the data to.
  molecule | The contents of this molecule will be written to output.

Returns
  True on success, false on failure.

Implements FileFormat.

The documentation for this class was generated from the following file:

- genericjson.h