The ResourceManager facilitates accessing external data resources from within a protocol. In conjunction with a protocol's job distributor, the ResourceManager manages the lifecycle of data, from retrieval with a ResourceLocator, initialization with a ResourceLoader and usage through the ResourceManager interface and release when it is no longer needed. The ResourceManager also facilitates specializing the OptionSystem for specific jobs.
Further documentation can be found at ResourceManager Details.
A ResourceLocator is responsible for accessing a resource inside of a datastore such as a file, database, or serialization stream. Once initialized a ResourceLocator acts as a map from LocatorTag to ResourceStream, where the LocatorTag type represents an identifier for the resource inside of the datastore and is typedefed to a string. The ResourceStream is a container for an std::istream.
The FileResourceLocator LocatorTag represents the filename and the ResourceStream represents the contents of the file.
A 'ResourceLoader is responsible for constructing a Resource object from an instance of a ResourceStream and an instance of a ResourceOptions.
Create a Pose object from a PDB file.
Create a LoopsFileData from a LoopsFile.
(To be documented.)