# ForceFieldSource

class `openff.evaluator.forcefield.``ForceFieldSource`

  A helper object to define the source of a force field and any associated meta data, such as version, file paths, or generation options.

  Notes

  It is likely that this class and classes based off of it will not be permanent fixtures of the framework, but rather will exist until the force fields can be stored in a uniform format / object model.

  `__init__`()

    Initialize self. See help(type(self)) for accurate signature.

  Methods

  `__init__` | Initialize self.
  `from_json`(file_path) | Create this object from a JSON file.
  `json`([file_path, format]) | Creates a JSON representation of this class.
  `parse_json`(string_contents[, encoding]) | Parses a typed json string into the corresponding class structure.

  classmethod `from_json`(file_path)

    Create this object from a JSON file.

    Parameters

      file_path (str) – The path to load the JSON from.

    Returns

      The parsed class.

    Return type

      cls

  `json`(file_path=None, format=False)

    Creates a JSON representation of this class.

    Parameters

      - file_path (str , optional) – The (optional) file path to save the JSON file to.

      - format (bool) – Whether to format the JSON or not.

    Returns

      The JSON representation of this class.

    Return type

      str

  classmethod `parse_json`(string_contents, encoding='utf8')

    Parses a typed json string into the corresponding class structure.

    Parameters

      - string_contents (str or bytes) – The typed json string.

      - encoding (str) – The encoding of the string_contents.

    Returns

      The parsed class.

    Return type

      Any