resource_manager

Bindings for basic::resource_manager namespace

class pyrosetta.rosetta.basic.resource_manager.ResourceLoader

Bases: pybind11_builtins.pybind11_object

The ResourceLoader is responsible for instantiating a Resource object and initializing it. In order to do so, the ResourceLoader is given an input stream and a XML “Tag” object. The ResourceLoader can also request other Resources from the ResourceManager in trying to construct a particular resource.

assign(self: pyrosetta.rosetta.basic.resource_manager.ResourceLoader, : pyrosetta.rosetta.basic.resource_manager.ResourceLoader) → pyrosetta.rosetta.basic.resource_manager.ResourceLoader

C++: basic::resource_manager::ResourceLoader::operator=(const class basic::resource_manager::ResourceLoader &) –> class basic::resource_manager::ResourceLoader &

class pyrosetta.rosetta.basic.resource_manager.ResourceLoaderCreator

Bases: pybind11_builtins.pybind11_object

Instantiates a ResourceLoader as part of the ResourceLoaderFactory scheme. Derived classes should be registered with the ResourceLoaderFactory in one of the library init.cc files with a ResourceLoaderRegistrator

assign(self: pyrosetta.rosetta.basic.resource_manager.ResourceLoaderCreator, : pyrosetta.rosetta.basic.resource_manager.ResourceLoaderCreator) → pyrosetta.rosetta.basic.resource_manager.ResourceLoaderCreator

C++: basic::resource_manager::ResourceLoaderCreator::operator=(const class basic::resource_manager::ResourceLoaderCreator &) –> class basic::resource_manager::ResourceLoaderCreator &

create_resource_loader(self: pyrosetta.rosetta.basic.resource_manager.ResourceLoaderCreator) → pyrosetta.rosetta.basic.resource_manager.ResourceLoader

Instantiate a ResourceLoader

C++: basic::resource_manager::ResourceLoaderCreator::create_resource_loader() const –> class std::shared_ptr<class basic::resource_manager::ResourceLoader>

loader_type(self: pyrosetta.rosetta.basic.resource_manager.ResourceLoaderCreator) → str

Give the name of the ResourceLoader that this Creator will instantiate.

C++: basic::resource_manager::ResourceLoaderCreator::loader_type() const –> std::string

provide_xml_schema(self: pyrosetta.rosetta.basic.resource_manager.ResourceLoaderCreator, xsd: utility::tag::XMLSchemaDefinition) → None

C++: basic::resource_manager::ResourceLoaderCreator::provide_xml_schema(class utility::tag::XMLSchemaDefinition &) const –> void

class pyrosetta.rosetta.basic.resource_manager.ResourceLoaderFactory

Bases: pyrosetta.rosetta.utility.SingletonBase_basic_resource_manager_ResourceLoaderFactory_t

Instantiates ResourceLoaders. Creators may be registered with the Factory at any point, though it is recommended they be registered at load time. If two Creators are registered and they both give the same name for the ResourceLoader they say they will instantiate, then the Factory will exit with an error message.

available_resource_loaders(self: pyrosetta.rosetta.basic.resource_manager.ResourceLoaderFactory) → pyrosetta.rosetta.std.list_std_string_std_allocator_std_string_t

Return a list of all the resource loaders available

C++: basic::resource_manager::ResourceLoaderFactory::available_resource_loaders() const –> class std::list<std::string, class std::allocator<std::string > >

complex_type_name_for_loader(loader_name: str) → str
The name mangling function used by ResourceLoaders when they define their complexTypes
in the XML Schema.

C++: basic::resource_manager::ResourceLoaderFactory::complex_type_name_for_loader(const class std::basic_string<char> &) –> std::string

create_resource_loader(self: pyrosetta.rosetta.basic.resource_manager.ResourceLoaderFactory, loader_type: str) → pyrosetta.rosetta.basic.resource_manager.ResourceLoader
Instantiates a resource loader ofa given type; throws
an exception if no loader with this type has been previously registered.

C++: basic::resource_manager::ResourceLoaderFactory::create_resource_loader(const class std::basic_string<char> &) const –> class std::shared_ptr<class basic::resource_manager::ResourceLoader>

factory_register(self: pyrosetta.rosetta.basic.resource_manager.ResourceLoaderFactory, creator: pyrosetta.rosetta.basic.resource_manager.ResourceLoaderCreator) → None
Register a ResourceLoaderCreator with the factory. The factory
asks the Creator for the name of the ResourceLoader that it will create; if another Creator has already registered with the factory that proports to instantiate another ResourceLoader with the same name, then it will exit with an error message, or, if set_throw_on_double_registration() has previously been called, throw an exception.

C++: basic::resource_manager::ResourceLoaderFactory::factory_register(class std::shared_ptr<class basic::resource_manager::ResourceLoaderCreator>) –> void

get_instance() → basic::resource_manager::ResourceLoaderFactory

C++: utility::SingletonBase<basic::resource_manager::ResourceLoaderFactory>::get_instance() –> class basic::resource_manager::ResourceLoaderFactory *

has_resource_loader(self: pyrosetta.rosetta.basic.resource_manager.ResourceLoaderFactory, loader_type: str) → bool
Returns true if a resource loader of the given type has been
registered with the factory

C++: basic::resource_manager::ResourceLoaderFactory::has_resource_loader(const class std::basic_string<char> &) const –> bool

loader_map(self: pyrosetta.rosetta.basic.resource_manager.ResourceLoaderFactory) → pyrosetta.rosetta.std.map_std_string_std_shared_ptr_basic_resource_manager_ResourceLoaderCreator_t
Read access to the set of creators that the factry holds; used to create the
schema definition for the ResourceManager.

C++: basic::resource_manager::ResourceLoaderFactory::loader_map() const –> const class std::map<std::string, class std::shared_ptr<class basic::resource_manager::ResourceLoaderCreator>, struct std::less<std::string >, class std::allocator<struct std::pair<const std::string, class std::shared_ptr<class basic::resource_manager::ResourceLoaderCreator> > > > &

set_throw_on_double_registration(self: pyrosetta.rosetta.basic.resource_manager.ResourceLoaderFactory) → None
Only useful for unit testing. Since factory registration happens (sometimes) at
load time, there may be no one to catch a thrown exception in the event of a name collision

C++: basic::resource_manager::ResourceLoaderFactory::set_throw_on_double_registration() –> void

class pyrosetta.rosetta.basic.resource_manager.ResourceLocator

Bases: pybind11_builtins.pybind11_object

%ResourceLocator classes are responsible for retrieving data from a data store that will be used to construct a Resource. This data store could be a file system or a database or any other place where data is stored.

The ResourceManager asks the ResourceLocator to produce a ResourceStream object when given a “locator_id.” A “locator_id” is what’s needed to identify a data source from a data store: for example, for the FileSystemResourceLocator, the locator id is a file name; for the DatabaseResourceLocator, it would be a database query.

assign(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocator, : pyrosetta.rosetta.basic.resource_manager.ResourceLocator) → pyrosetta.rosetta.basic.resource_manager.ResourceLocator

C++: basic::resource_manager::ResourceLocator::operator=(const class basic::resource_manager::ResourceLocator &) –> class basic::resource_manager::ResourceLocator &

locate_resource_stream(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocator, locator_id: str) → pyrosetta.rosetta.basic.resource_manager.ResourceStream
Create and return a ResourceStream object from the given locator_id
so that its stream can be passed to the ResourceLoader

C++: basic::resource_manager::ResourceLocator::locate_resource_stream(const class std::basic_string<char> &) const –> class std::shared_ptr<class basic::resource_manager::ResourceStream>

locator_tag(*args, **kwargs)

Overloaded function.

  1. locator_tag(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocator, locator_tag: str) -> None

Set the name for this %ResourceLocator

C++: basic::resource_manager::ResourceLocator::locator_tag(const class std::basic_string<char> &) –> void

  1. locator_tag(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocator) -> str

Return the name for this %ResourceLocator

C++: basic::resource_manager::ResourceLocator::locator_tag() const –> std::string

parse_my_tag(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocator, tag: pyrosetta.rosetta.utility.tag.Tag) → None
Initialize the parameters for this %ResourceLocator from the contents of
an XML file.

C++: basic::resource_manager::ResourceLocator::parse_my_tag(class std::shared_ptr<const class utility::tag::Tag>) –> void

show(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocator, out: pyrosetta.rosetta.std.ostream) → None

Write a description of this %ResourceLocator to an out stream

C++: basic::resource_manager::ResourceLocator::show(class std::basic_ostream<char> &) const –> void

type(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocator) → str
Return the class name for this %ResourceLocator instance.
This function allows for better error message delivery.

C++: basic::resource_manager::ResourceLocator::type() const –> std::string

class pyrosetta.rosetta.basic.resource_manager.ResourceLocatorCreator

Bases: pybind11_builtins.pybind11_object

The %ResourceLocatorCreator class serves to link the name of a locator type and the (derived) ResourceLocator class that’s responsible for retrieving data from a data store.

assign(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocatorCreator, : pyrosetta.rosetta.basic.resource_manager.ResourceLocatorCreator) → pyrosetta.rosetta.basic.resource_manager.ResourceLocatorCreator

C++: basic::resource_manager::ResourceLocatorCreator::operator=(const class basic::resource_manager::ResourceLocatorCreator &) –> class basic::resource_manager::ResourceLocatorCreator &

create_resource_locator(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocatorCreator) → pyrosetta.rosetta.basic.resource_manager.ResourceLocator

C++: basic::resource_manager::ResourceLocatorCreator::create_resource_locator() const –> class std::shared_ptr<class basic::resource_manager::ResourceLocator>

locator_type(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocatorCreator) → str

C++: basic::resource_manager::ResourceLocatorCreator::locator_type() const –> std::string

provide_xml_schema(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocatorCreator, xsd: utility::tag::XMLSchemaDefinition) → None

C++: basic::resource_manager::ResourceLocatorCreator::provide_xml_schema(class utility::tag::XMLSchemaDefinition &) const –> void

class pyrosetta.rosetta.basic.resource_manager.ResourceLocatorFactory

Bases: pyrosetta.rosetta.utility.SingletonBase_basic_resource_manager_ResourceLocatorFactory_t

The %ResourceLocatorFactory instantiates ResourceLocator objects given their corresponding locator-type strings. It uses the load-time factory registration scheme, meaning that it is a singleton and takes an instance of a Creator object (a ResourceLocatorCreator) in its “factory_register” method. Templated instances of the ResourceLocatorRegistrator classes should be placed in the library init.cc files (e.g. core/init/init.cc or protocols/init/init.ResourceLocatorRegistrators.ihh)

complex_type_name_for_locator(locator_name: str) → str

C++: basic::resource_manager::ResourceLocatorFactory::complex_type_name_for_locator(const class std::basic_string<char> &) –> std::string

create_resource_locator(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocatorFactory, locator_type: str, locator_tag: str, tags: pyrosetta.rosetta.utility.tag.Tag) → pyrosetta.rosetta.basic.resource_manager.ResourceLocator

Create a ResourceLocator given its locator_type, giving the newly created instance the name locator_tag

C++: basic::resource_manager::ResourceLocatorFactory::create_resource_locator(const class std::basic_string<char> &, const class std::basic_string<char> &, class std::shared_ptr<const class utility::tag::Tag>) const –> class std::shared_ptr<class basic::resource_manager::ResourceLocator>

factory_register(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocatorFactory, creator: pyrosetta.rosetta.basic.resource_manager.ResourceLocatorCreator) → None
This function is called on the singleton instance to give a ResourceLocatorCreator to the
factory, usually through the constructor of a ResourceLocatorRegistrator class.

C++: basic::resource_manager::ResourceLocatorFactory::factory_register(class std::shared_ptr<class basic::resource_manager::ResourceLocatorCreator>) –> void

get_instance() → basic::resource_manager::ResourceLocatorFactory

C++: utility::SingletonBase<basic::resource_manager::ResourceLocatorFactory>::get_instance() –> class basic::resource_manager::ResourceLocatorFactory *

locator_map(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocatorFactory) → pyrosetta.rosetta.std.map_std_string_std_shared_ptr_basic_resource_manager_ResourceLocatorCreator_t

C++: basic::resource_manager::ResourceLocatorFactory::locator_map() const –> const class std::map<std::string, class std::shared_ptr<class basic::resource_manager::ResourceLocatorCreator>, struct std::less<std::string >, class std::allocator<struct std::pair<const std::string, class std::shared_ptr<class basic::resource_manager::ResourceLocatorCreator> > > > &

set_throw_on_double_registration(self: pyrosetta.rosetta.basic.resource_manager.ResourceLocatorFactory) → None
Only useful for unit testing. Since factory registration happens (sometimes) at
load time, there may be no one to catch a thrown exception in the event of a name collision between two ResourceLocatorCreators that register for the same name.

C++: basic::resource_manager::ResourceLocatorFactory::set_throw_on_double_registration() –> void

class pyrosetta.rosetta.basic.resource_manager.ResourceManagerCreator

Bases: pybind11_builtins.pybind11_object

Derived classes will be used by the ResourceManagerFactory to decide which of the various ResourceManagers should be instantiated. The ResourceManager is a singleton, but, different ResourceManagers can be instantiated in different contexts.

assign(self: pyrosetta.rosetta.basic.resource_manager.ResourceManagerCreator, : pyrosetta.rosetta.basic.resource_manager.ResourceManagerCreator) → pyrosetta.rosetta.basic.resource_manager.ResourceManagerCreator

C++: basic::resource_manager::ResourceManagerCreator::operator=(const class basic::resource_manager::ResourceManagerCreator &) –> class basic::resource_manager::ResourceManagerCreator &

class pyrosetta.rosetta.basic.resource_manager.ResourceManagerFactory

Bases: pyrosetta.rosetta.utility.SingletonBase_basic_resource_manager_ResourceManagerFactory_t

A factory class for managing the instantiation of the singleton ResourceManager: only one of the various derived classes will be instantiated. Currently, it asks for the JD2ResourceManager; in the future, this should be fixed so that it reads from the options system to figure out which ResourceManager to instantiate.

create_resource_manager_from_options_system(self: pyrosetta.rosetta.basic.resource_manager.ResourceManagerFactory) → pyrosetta.rosetta.basic.resource_manager.ResourceManager

Should only be called by the ResourceManager in its singleton construction!

C++: basic::resource_manager::ResourceManagerFactory::create_resource_manager_from_options_system() const –> class basic::resource_manager::ResourceManager *

factory_register(self: pyrosetta.rosetta.basic.resource_manager.ResourceManagerFactory, creator: pyrosetta.rosetta.basic.resource_manager.ResourceManagerCreator) → None

C++: basic::resource_manager::ResourceManagerFactory::factory_register(class std::shared_ptr<class basic::resource_manager::ResourceManagerCreator>) –> void

get_instance() → basic::resource_manager::ResourceManagerFactory

C++: utility::SingletonBase<basic::resource_manager::ResourceManagerFactory>::get_instance() –> class basic::resource_manager::ResourceManagerFactory *

class pyrosetta.rosetta.basic.resource_manager.ResourceStream

Bases: pybind11_builtins.pybind11_object

The %ResourceStream represents an abstract class for packaging up a standard istream so that data that the ResourceLocator needs to deliver to a ResourceLoader can come from arbitrary sources (e.g. from either a file or from a database).

assign(self: pyrosetta.rosetta.basic.resource_manager.ResourceStream, : pyrosetta.rosetta.basic.resource_manager.ResourceStream) → pyrosetta.rosetta.basic.resource_manager.ResourceStream

C++: basic::resource_manager::ResourceStream::operator=(const class basic::resource_manager::ResourceStream &) –> class basic::resource_manager::ResourceStream &

stream(self: pyrosetta.rosetta.basic.resource_manager.ResourceStream) → pyrosetta.rosetta.std.istream
Return an istream reference so that the ResourceLoader can access arbitrary data
returned by the %ResourceLocator

C++: basic::resource_manager::ResourceStream::stream() –> class std::basic_istream<char> &

pyrosetta.rosetta.basic.resource_manager.resource_loader_xsd_type_definition_w_attributes(xsd: utility::tag::XMLSchemaDefinition, loader_type: str, description: str, attributes: pyrosetta.rosetta.std.list_utility_tag_XMLSchemaAttribute_t) → None
Define the XML schema definition for a ResourceLoader that
contains no subtags but may contain any number of attributes (aka options).

C++: basic::resource_manager::resource_loader_xsd_type_definition_w_attributes(class utility::tag::XMLSchemaDefinition &, const class std::basic_string<char> &, const class std::basic_string<char> &, const class std::list<class utility::tag::XMLSchemaAttribute, class std::allocator<class utility::tag::XMLSchemaAttribute> > &) –> void

pyrosetta.rosetta.basic.resource_manager.resource_loader_xsd_type_definition_w_attributes_and_repeatable_subelements(xsd: utility::tag::XMLSchemaDefinition, loader_type: str, description: str, attributes: pyrosetta.rosetta.std.list_utility_tag_XMLSchemaAttribute_t, subelements: utility::tag::XMLSchemaSimpleSubelementList) → None
Define the XML schema definition for a ResourceLoader that
contains subtags and attributes (aka options).

C++: basic::resource_manager::resource_loader_xsd_type_definition_w_attributes_and_repeatable_subelements(class utility::tag::XMLSchemaDefinition &, const class std::basic_string<char> &, const class std::basic_string<char> &, const class std::list<class utility::tag::XMLSchemaAttribute, class std::allocator<class utility::tag::XMLSchemaAttribute> > &, const class utility::tag::XMLSchemaSimpleSubelementList &) –> void