Rosetta  2017.13
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Functions
utility::xsd_util Namespace Reference

Functions

void get_mover_names_from_xsd (std::string const &xsd, utility::vector1< std::string > &mover_names_out)
 Given an xsd for RosettaScripts, get all of the names of mover elements. More...
 
void get_filter_names_from_xsd (std::string const &xsd, utility::vector1< std::string > &filter_names_out)
 Given an xsd for RosettaScripts, get all of the names of filter elements. More...
 
void get_task_operation_names_from_xsd (std::string const &xsd, utility::vector1< std::string > &taskop_names_out)
 Given an xsd for RosettaScripts, get all of the names of task operation elements. More...
 
void get_residue_level_task_operation_names_from_xsd (std::string const &xsd, utility::vector1< std::string > &rltaskop_names_out)
 Given an xsd for RosettaScripts, get all of the names of residue-level task operation elements. More...
 
void get_residue_selector_names_from_xsd (std::string const &xsd, utility::vector1< std::string > &residue_selector_names_out)
 Given an xsd for RosettaScripts, get all of the names of residue selector elements. More...
 
void get_module_names_from_xsd (std::string const &xsd, std::string const &module_name, utility::vector1< std::string > &names_out)
 Given an xsd for RosettaScripts, get all of the names of a particular type of Rosetta module. More...
 
std::string get_node_option (xmlNode *node, std::string const &optionname)
 Given a node in an XML tree, get the value of an option. More...
 
std::string generate_human_readable_summary (std::string const &xsd, std::string const &component_name, std::string const &component_type)
 Go through an XSD and generate a human-readable description of a particular Rosetta module. More...
 
void generate_human_readable_recursive (xmlNode *rootnode, std::stringstream &description, std::stringstream &tags, std::stringstream &options, platform::Size const level, std::string const &complextype, std::string const &tag_name_to_print)
 Go through an XSD XML and generate a human-readable version, recursively. More...
 
std::string get_tag_name (xmlNode *node)
 Given a node in an XML tree representing a tag, get the string that starts the tag. (e.g. "DeclareBond" in "<DeclareBond .... />"). More...
 
void output_all_tag_options (xmlNode *node, std::string const &tagname, platform::Size const level, std::stringstream &tags, std::stringstream &options)
 Given a node in an XML tree representing a tag, get all options in that tag, write their descriptions to "options", and write their names and types to "tags". More...
 
void generate_human_readable_documentation (xmlNode *parent_node, std::stringstream &outstream)
 Given a documentation node in an XML tree, parse out the documentation and print it. More...
 
std::string get_type_name (std::string const &xsd_type)
 Given an XSD simple type (e.g. "rosetta_bool"), return a more human-readable type (e.g. "bool"). More...
 

Function Documentation

void utility::xsd_util::generate_human_readable_documentation ( xmlNode *  doc_node,
std::stringstream &  outstream 
)

Given a documentation node in an XML tree, parse out the documentation and print it.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References utility::strip().

Referenced by generate_human_readable_recursive(), and output_all_tag_options().

void utility::xsd_util::generate_human_readable_recursive ( xmlNode *  rootnode,
std::stringstream &  description,
std::stringstream &  tags,
std::stringstream &  options,
platform::Size const  level,
std::string const &  complextype,
std::string const &  tag_name_to_print 
)
std::string utility::xsd_util::generate_human_readable_summary ( std::string const &  xsd,
std::string const &  component_name,
std::string const &  component_type 
)

Go through an XSD and generate a human-readable description of a particular Rosetta module.

Calls generate_human_readable_recursive.

Note
If component_name and component_type are provided, then summary information is only returned for that particular object type. For example, component_name="DeclareBond" and component_type="mover" would return information on the DeclareBond mover. Also note, this function uses raw pointers, unfortunately – the libxml2 functions that I'm calling require it. As such, no premature return statements should be added prior to the xmlFreeDoc and xmlCleanupParser statements at the end of the function.
Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References generate_human_readable_recursive(), options, and basic::options::OptionKeys::in::file::tags.

Referenced by utility::tag::XMLSchemaDefinition::human_readable_summary().

void utility::xsd_util::get_filter_names_from_xsd ( std::string const &  xsd,
utility::vector1< std::string > &  filter_names_out 
)

Given an xsd for RosettaScripts, get all of the names of filter elements.

The filter_names_out vector is cleared and repopulated by this operation.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References get_module_names_from_xsd().

void utility::xsd_util::get_module_names_from_xsd ( std::string const &  xsd,
std::string const &  module_name,
utility::vector1< std::string > &  names_out 
)

Given an xsd for RosettaScripts, get all of the names of a particular type of Rosetta module.

The names_out vector is cleared and repopulated by this operation.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References get_node_option().

Referenced by get_filter_names_from_xsd(), get_mover_names_from_xsd(), get_residue_level_task_operation_names_from_xsd(), get_residue_selector_names_from_xsd(), and get_task_operation_names_from_xsd().

void utility::xsd_util::get_mover_names_from_xsd ( std::string const &  xsd,
utility::vector1< std::string > &  mover_names_out 
)

Given an xsd for RosettaScripts, get all of the names of mover elements.

The mover_names_out vector is cleared and repopulated by this operation.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References get_module_names_from_xsd().

std::string utility::xsd_util::get_node_option ( xmlNode *  node,
std::string const &  optionname 
)

Given a node in an XML tree, get the value of an option.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References debug_assert.

Referenced by generate_human_readable_recursive(), get_module_names_from_xsd(), get_tag_name(), and output_all_tag_options().

void utility::xsd_util::get_residue_level_task_operation_names_from_xsd ( std::string const &  xsd,
utility::vector1< std::string > &  rltaskop_names_out 
)

Given an xsd for RosettaScripts, get all of the names of residue-level task operation elements.

The rltaskop_names_out vector is cleared and repopulated by this operation.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References get_module_names_from_xsd().

void utility::xsd_util::get_residue_selector_names_from_xsd ( std::string const &  xsd,
utility::vector1< std::string > &  residue_selector_names_out 
)

Given an xsd for RosettaScripts, get all of the names of residue selector elements.

The residue_selector_names_out vector is cleared and repopulated by this operation.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References get_module_names_from_xsd().

std::string utility::xsd_util::get_tag_name ( xmlNode *  node)

Given a node in an XML tree representing a tag, get the string that starts the tag. (e.g. "DeclareBond" in "<DeclareBond .... />").

From a string of format "*_name_type" or "*_name", extracts out "name".

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References debug_assert, get_node_option(), and utility::string_split().

Referenced by generate_human_readable_recursive().

void utility::xsd_util::get_task_operation_names_from_xsd ( std::string const &  xsd,
utility::vector1< std::string > &  taskop_names_out 
)

Given an xsd for RosettaScripts, get all of the names of task operation elements.

The taskop_names_out vector is cleared and repopulated by this operation.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References get_module_names_from_xsd().

std::string utility::xsd_util::get_type_name ( std::string const &  xsd_type)

Given an XSD simple type (e.g. "rosetta_bool"), return a more human-readable type (e.g. "bool").

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

Referenced by output_all_tag_options().

void utility::xsd_util::output_all_tag_options ( xmlNode *  node,
std::string const &  tagname,
platform::Size const  level,
std::stringstream &  tags,
std::stringstream &  options 
)

Given a node in an XML tree representing a tag, get all options in that tag, write their descriptions to "options", and write their names and types to "tags".

Heads the section in "options" with the tag name.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References generate_human_readable_documentation(), get_node_option(), get_type_name(), basic::options::OptionKeys::out::level, name, and basic::options::OptionKeys::frags::contacts::type.

Referenced by generate_human_readable_recursive().