STORMM Source Documentation
|
Simple but central struct to store the primitive form of the collection of systems that most STORMM applications will work with. There are topologies, coordinate sets, and a list of indices to indicate how they mix and match. This object exists on the CPU and in host memory only, but the topology and coordinate contents have CUDA-capable memory components. More...
#include <systemcache.h>
Public Member Functions | |
int | getSystemCount () const |
Get the number of systems. | |
int | getTopologyCount () const |
Get the number of topologies. | |
int | getLabelCount () const |
Get the number of unique labels across all systems. | |
int | getRestraintCount () const |
Get the number of different restraint apparatuses. Many restraint apparatuses may be unique in the sense that they have different stiffness and displacement settings, even though they apply their restraints to the same atoms of different systems guided by the same topology. | |
int | getSystemExampleIndex (int topology_index) const |
Get the index of a coordinate set which provides an example of the system that one of the topologies in the cache describes. | |
const AtomGraph & | getTopology (int topology_index) const |
Get a reference to one of the unique topologies from within the topology cache, based on an index into the cache itself. | |
const std::string & | getLabel (int label_index) const |
Get a label from the cache by the numerical index in which it appears in the list of all labels. | |
int | getLabelCacheIndex (const std::string &query) const |
Get the index of a particular string label within the cache. The index is found by a deep match to the string's contents. If no match is found, the function will return the total number of labels in the cache. | |
const AtomGraph & | getSystemTopology (int index) const |
Return a reference to the topology that describes a particular set of coordinates within the SystemCache. All overloads apply a bounds check. | |
AtomGraphSynthesis | exportTopologySynthesis (const GpuDetails &gpu=null_gpu, const ExceptionResponse policy=ExceptionResponse::DIE) const |
Return a synthesis of the topologies in the cache, laid out as appropriate for all systems including replicas. | |
PhaseSpaceSynthesis | exportCoordinateSynthesis (int globalpos_scale_bits=default_globalpos_scale_bits, int velocity_scale_bits=default_velocity_scale_bits, int force_scale_bits=default_force_scale_bits) const |
Create and return a coordinate synthesis based on entries in the cache. | |
const ChemicalFeatures & | getFeatures (int index) const |
Get a reference to the chemical features for a particular system in the cache. | |
const RestraintApparatus & | getRestraints (int index) const |
Get a reference to the restraint apparatus for a particular system. | |
const StaticExclusionMask & | getSystemStaticMask (int index) const |
Get a reference to the static exclusion mask for a particular system. These masks will only have been calculated for systems with isolated boundary conditions. | |
const ForwardExclusionMask & | getSystemForwardMask (int index) const |
Get a reference to the forward exclusion mask for a particular system. These masks will only have been calculated for systems with periodic boundary conditions. | |
int | getTopologyCaseCount (int topology_index) const |
Get the number of systems described by a topology of the given index in this cache. | |
std::vector< int > | getTopologicalCases (int topology_index) const |
Get a list of indices for all systems in the cache described by the topology of interest. | |
const std::string & | getInputCoordinatesName (int system_index) const |
Get the input coordinate file name for a particular system. This is not subject to manipulations to differentiate the name as the output formats are. | |
int | getSystemLabelIndex (int system_index) const |
Get the index of the cached label associated with a particular system in the cache. | |
const std::string & | getSystemLabel (int system_index) const |
Get the label associated with a particular system in the cache. | |
const SystemCache * | getSelfPointer () const |
Get a const pointer to the object itself. | |
void | setPrintingProtocol (const PrintSituation expectation_in) |
Set the printing protocol. | |
TrajectoryFusion | getTrajectoryFusionProtocol () const |
Get the trajectory fusion protocol. | |
void | setTrajectoryFusionProtocol (TrajectoryFusion file_merger_protocol_in) |
Set the trajectory fusion protocol. | |
SystemCache (ExceptionResponse policy_in=ExceptionResponse::DIE, MapRotatableGroups map_chemfe_rotators=MapRotatableGroups::NO, PrintSituation expectation_in=PrintSituation::OPEN_NEW) | |
The constructor takes the output of &files namelist reading, perhaps with some additional command-line edits. An empty object overload is available because it is trivial and works well for delegation. | |
SystemCache (const FilesControls &fcon, const std::vector< RestraintControls > &rstcon, const DynamicsControls &dyncon, ExceptionResponse policy_in=ExceptionResponse::DIE, MapRotatableGroups map_chemfe_rotators=MapRotatableGroups::NO, PrintSituation expectation_in=PrintSituation::OPEN_NEW, StopWatch *timer_in=nullptr) | |
SystemCache (const FilesControls &fcon, const DynamicsControls &dyncon, ExceptionResponse policy_in=ExceptionResponse::DIE, MapRotatableGroups map_chemfe_rotators=MapRotatableGroups::NO, PrintSituation expectation_in=PrintSituation::OPEN_NEW, StopWatch *timer_in=nullptr) | |
SystemCache (const FilesControls &fcon, ExceptionResponse policy_in=ExceptionResponse::DIE, MapRotatableGroups map_chemfe_rotators=MapRotatableGroups::NO, PrintSituation expectation_in=PrintSituation::OPEN_NEW, StopWatch *timer_in=nullptr) | |
SystemCache (const SystemCache &original)=default | |
The default copy and move constructors, copy and move assignment operators will be effective for this object based entirely on Standard Template Library components. | |
SystemCache (SystemCache &&original)=default | |
SystemCache & | operator= (const SystemCache &other)=default |
SystemCache & | operator= (SystemCache &&other)=default |
int | getSystemTopologyIndex (int coord_index) const |
Get the topology index of one of the coordinate sets contained in this cache. This will apply a bounds check to the coordinate index query. This function should be used to access topologies in the output of a getTopology() or getTopologyPointer() call when the full array is returned without function input arguments. Calling either getTopology() or getTopologyPointer() with an integer argument implicitly performs the operation of getting the appropriate topology list index, as would be found by this function, and thus returns a reference or pointer to the appropriate topology. | |
std::vector< int > | getSystemTopologyIndex () const |
const AtomGraph * | getTopologyPointer (int topology_index) const |
Get pointers to one or all of the unique topologies from within the compact topology cache. | |
AtomGraph * | getTopologyPointer (int topology_index) |
const std::vector< AtomGraph * > | getTopologyPointer () const |
std::vector< AtomGraph * > | getTopologyPointer () |
int | getTopologyCacheIndex (const AtomGraph *ag) const |
Match a topology to one in the cache. If no match is found, the function will return the number of topologies in the cache. | |
int | getTopologyCacheIndex (const AtomGraph &ag) const |
const std::vector< AtomGraph * > | getTopologiesMatchingLabel (const std::string &query_label) const |
Get a list of topologies associated with a particular label. This will return a vector of pointers to the topologies within the cache, and will return an empty vector if no matches are found. | |
std::vector< AtomGraph * > | getTopologiesMatchingLabel (const std::string &query_label) |
std::vector< std::string > | getLabelsMatchingTopology (const AtomGraph *query_ag) const |
Get a list of labels associated with a particular topology. This will return copies of each label string which can then be manipulated at the developer's discretion. A blank vector is returned if no associated labels are found. | |
std::vector< std::string > | getLabelsMatchingTopology (const AtomGraph &query_ag) const |
std::vector< int > | getMatchingSystemIndices (const AtomGraph *query_ag, const std::string &query_label) const |
Return the indices of all systems from within the cache, matching a particular topology and / or a label. | |
std::vector< int > | getMatchingSystemIndices (const AtomGraph &query_ag, const std::string &query_label) const |
std::vector< int > | getMatchingSystemIndices (const AtomGraph *query_ag) const |
std::vector< int > | getMatchingSystemIndices (const AtomGraph &query_ag) const |
std::vector< int > | getMatchingSystemIndices (const std::string &query_label) const |
int | getFirstMatchingSystemIndex (const AtomGraph *query_ag, ExceptionResponse xcpt=ExceptionResponse::DIE) const |
Get the index of the first system matching the topology and / or system label. | |
int | getFirstMatchingSystemIndex (const std::string &query_label, ExceptionResponse xcpt=ExceptionResponse::DIE) const |
int | getFirstMatchingSystemIndex (const AtomGraph *query_ag, const std::string &query_label, ExceptionResponse xcpt=ExceptionResponse::DIE) const |
const AtomGraph * | getSystemTopologyPointer (int index) const |
Get a pointer to a topology in the cache associated with a particular coordinate set. | |
AtomGraph * | getSystemTopologyPointer (int index) |
const std::vector< AtomGraph * > | getSystemTopologyPointer () const |
std::vector< AtomGraph * > | getSystemTopologyPointer () |
const PhaseSpace * | getCoordinatePointer (int index) const |
Get a pointer to a set of coordinates, velocities, and forces in the cache. | |
PhaseSpace * | getCoordinatePointer (int index) |
const std::vector< PhaseSpace * > | getCoordinatePointer () const |
std::vector< PhaseSpace * > | getCoordinatePointer () |
const PhaseSpace & | getCoordinates (int index) const |
Return a reference to a set of coordinates, velocities, and forces in the cache. | |
const std::vector< PhaseSpace > & | getCoordinates () const |
const MdlMol * | getStructureDataEntryPointer (int index) const |
Get a pointer to one of the MDL MOL objects in the cache. | |
MdlMol * | getStructureDataEntryPointer (int index) |
const std::vector< MdlMol * > | getStructureDataEntryPointer () const |
std::vector< MdlMol * > | getStructureDataEntryPointer () |
const MdlMol & | getStructureDataEntry (int index) const |
Return a reference to one of the MDL MOL entries in the cache. | |
const std::vector< MdlMol > & | getStructureDataEntry () const |
const ChemicalFeatures * | getFeaturesPointer (int index) const |
Get a pointer to the chemical features for a particular system in the cache. | |
ChemicalFeatures * | getFeaturesPointer (int index) |
const std::vector< ChemicalFeatures * > | getFeaturesPointer () const |
std::vector< ChemicalFeatures * > | getFeaturesPointer () |
const RestraintApparatus * | getRestraintPointer (int index) const |
Get a pointer to the restraint apparatus for a particular system. | |
RestraintApparatus * | getRestraintPointer (int index) |
const std::vector< RestraintApparatus * > | getRestraintPointer () const |
std::vector< RestraintApparatus * > | getRestraintPointer () |
const std::vector< StaticExclusionMask * > | getUniqueStaticMaskPointers () const |
Get a vector of all unique static exclusion masks in the system cache, ordered as they appear in the cache itself and therefore indexed by the output of getSystemTopologyIndex(). | |
std::vector< StaticExclusionMask * > | getUniqueStaticMaskPointers () |
const StaticExclusionMask * | getSystemStaticMaskPointer (int index) const |
Get a pointer to the static exclusion mask for a particular system. These masks will only have been calculated for systems with isolated boundary conditions. | |
StaticExclusionMask * | getSystemStaticMaskPointer (int index) |
const ForwardExclusionMask * | getSystemForwardMaskPointer (int index) const |
Get a pointer to the forward exclusion mask for a particular system. These masks will only have been calculated for systems with periodic boundary conditions. | |
ForwardExclusionMask * | getSystemForwardMaskPointer (int index) |
std::string | getTrajectoryName (int system_index) const |
Get the name of the trajectory file associated with one of the systems. The name will be manipulated (by adding _## before the final '.', or at the end of the file name if there is no '.'). | |
const std::string & | getTrajectoryName (const AtomGraph *query_ag) const |
const std::string & | getTrajectoryName (const AtomGraph &query_ag) const |
const std::string & | getTrajectoryName (const AtomGraph *query_ag, const std::string &query_label) const |
const std::string & | getTrajectoryName (const AtomGraph &query_ag, const std::string &query_label) const |
const std::string & | getTrajectoryName (const std::string &query_label) const |
std::string | getCheckpointName (int system_index) const |
Get the name of the checkpoint (restart) file associated with one of the systems. This name will also be manipulated to differentiate systems making use of the same label. | |
const std::string & | getCheckpointName (const AtomGraph *query_ag) const |
const std::string & | getCheckpointName (const AtomGraph &query_ag) const |
const std::string & | getCheckpointName (const AtomGraph *query_ag, const std::string &query_label) const |
const std::string & | getCheckpointName (const AtomGraph &query_ag, const std::string &query_label) const |
const std::string & | getCheckpointName (const std::string &query_label) const |
CoordinateFileKind | getInputCoordinatesKind (const int system_index) const |
Get the coordinate file type associated with a particular system's input. Raise an error if the system cannot be identified within the cache. | |
CoordinateFileKind | getInputCoordinatesKind (const AtomGraph *query_ag) const |
CoordinateFileKind | getInputCoordinatesKind (const AtomGraph &query_ag) const |
CoordinateFileKind | getInputCoordinatesKind (const AtomGraph *query_ag, const std::string &query_label) const |
CoordinateFileKind | getInputCoordinatesKind (const AtomGraph &query_ag, const std::string &query_label) const |
CoordinateFileKind | getInputCoordinatesKind (const std::string &query_label) const |
CoordinateFileKind | getTrajectoryKind (const int system_index) const |
Get the coordinate file type associated with a particular system's trajectory. | |
CoordinateFileKind | getTrajectoryKind (const AtomGraph *query_ag) const |
CoordinateFileKind | getTrajectoryKind (const AtomGraph &query_ag) const |
CoordinateFileKind | getTrajectoryKind (const AtomGraph *query_ag, const std::string &query_label) const |
CoordinateFileKind | getTrajectoryKind (const AtomGraph &query_ag, const std::string &query_label) const |
CoordinateFileKind | getTrajectoryKind (const std::string &query_label) const |
CoordinateFileKind | getCheckpointKind (const int system_index) const |
Get the coordinate file type associated with a particular system's checkpoint file. | |
CoordinateFileKind | getCheckpointKind (const AtomGraph *query_ag) const |
CoordinateFileKind | getCheckpointKind (const AtomGraph &query_ag) const |
CoordinateFileKind | getCheckpointKind (const AtomGraph *query_ag, const std::string &query_label) const |
CoordinateFileKind | getCheckpointKind (const AtomGraph &query_ag, const std::string &query_label) const |
CoordinateFileKind | getCheckpointKind (const std::string &query_label) const |
PrintSituation | getPrintingProtocol () const |
When multiple systems' coordinates are to be combined into a particular file, the file may be opened as a new file once, with whatever overwriting protocol, to write the first set of coordinates. Thereafter, the printing protocol must change: it should be appended with other systems from the same label group. This function will determine how to modulate the printing protcol. | |
PrintSituation | getPrintingProtocol (CoordinateFileRole purpose, int system_index) const |
Simple but central struct to store the primitive form of the collection of systems that most STORMM applications will work with. There are topologies, coordinate sets, and a list of indices to indicate how they mix and match. This object exists on the CPU and in host memory only, but the topology and coordinate contents have CUDA-capable memory components.
stormm::synthesis::SystemCache::SystemCache | ( | ExceptionResponse | policy_in = ExceptionResponse::DIE, |
MapRotatableGroups | map_chemfe_rotators = MapRotatableGroups::NO, | ||
PrintSituation | expectation_in = PrintSituation::OPEN_NEW ) |
The constructor takes the output of &files namelist reading, perhaps with some additional command-line edits. An empty object overload is available because it is trivial and works well for delegation.
fcon | Contents of the input deck's &files namelist and possible command-line edits |
rstcon | Contents of the input deck's &restraint namelists and possible command-line edits |
sdf_recovery | List of structures read in MDL MOL format, along with any data items found in the SD file containing them, tracking the order of all systems in the cache. Modified and returned. Systems whose coordinates do not enter by an SD file will have placeholder MdlMol entries in this list with zero atoms. If set to nullptr, no list of MdlMol objects will be generated. |
policy_in | Response to bad user input, i.e. files of the wrong type |
map_chemfe_rotators | Directive to have all topologies' chemical features mapped |
expectation_in | The expected presence of output files |
AtomGraphSynthesis stormm::synthesis::SystemCache::exportTopologySynthesis | ( | const GpuDetails & | gpu = null_gpu, |
const ExceptionResponse | policy = ExceptionResponse::DIE ) const |
Return a synthesis of the topologies in the cache, laid out as appropriate for all systems including replicas.
gpu | Specifications of the GPU that will manage calculations involving the synthesis |
policy | The course of action if errors are encountered while building the synthesis. Defaults to DIE as errors in the underlying topologies are assumed to have been reported when first building the SystemCache object itself. |
CoordinateFileKind stormm::synthesis::SystemCache::getCheckpointKind | ( | const int | system_index | ) | const |
Get the coordinate file type associated with a particular system's checkpoint file.
system_index | Index of the system from within the coordinates cache |
query_ag | Topology to seek out (this may or may not provide an unambiguous answer, and will produce the first available answer if there are multiple solutions) |
query_label | Label to seek out (this may or may not provide an unambiguous answer, and will produce the first available answer if there are multiple solutions) |
std::string stormm::synthesis::SystemCache::getCheckpointName | ( | int | system_index | ) | const |
Get the name of the checkpoint (restart) file associated with one of the systems. This name will also be manipulated to differentiate systems making use of the same label.
Overloaded:
system_index | Index of the system from within the coordinates cache |
query_ag | Topology to seek out (this may or may not provide an unambiguous answer, and will produce the first available answer if there are multiple solutions) |
system_index | Index of the system from within the coordinates cache |
const PhaseSpace * stormm::synthesis::SystemCache::getCoordinatePointer | ( | int | index | ) | const |
Get a pointer to a set of coordinates, velocities, and forces in the cache.
Overloaded:
index | Index of the requested PhaseSpace object |
const PhaseSpace & stormm::synthesis::SystemCache::getCoordinates | ( | int | index | ) | const |
Return a reference to a set of coordinates, velocities, and forces in the cache.
Overloaded:
index | Index of the system, the PhaseSpace object of interest |
const ChemicalFeatures & stormm::synthesis::SystemCache::getFeatures | ( | int | index | ) | const |
Get a reference to the chemical features for a particular system in the cache.
index | Index of the system of interest |
const ChemicalFeatures * stormm::synthesis::SystemCache::getFeaturesPointer | ( | int | index | ) | const |
Get a pointer to the chemical features for a particular system in the cache.
Overloaded:
index | Index of the system of interest |
int stormm::synthesis::SystemCache::getFirstMatchingSystemIndex | ( | const AtomGraph * | query_ag, |
ExceptionResponse | xcpt = ExceptionResponse::DIE ) const |
Get the index of the first system matching the topology and / or system label.
Overloaded:
query_ag | The topology to match |
query_label | The label to seek out |
xcpt | The course of action to take if no matching system can be found. If the protocol is not DIE, this function will behave much like the Standard Template Library's find() function and return the total number of systems, which may be useful under some circumstances. |
CoordinateFileKind stormm::synthesis::SystemCache::getInputCoordinatesKind | ( | const int | system_index | ) | const |
Get the coordinate file type associated with a particular system's input. Raise an error if the system cannot be identified within the cache.
Overloaded:
system_index | Index of the system from within the coordinates cache |
query_ag | Topology to seek out (this may or may not provide an unambiguous answer, and will produce the first available answer if there are multiple solutions) |
query_label | Label to seek out (this may or may not provide an unambiguous answer, and will produce the first available answer if there are multiple solutions) |
const std::string & stormm::synthesis::SystemCache::getInputCoordinatesName | ( | int | system_index | ) | const |
Get the input coordinate file name for a particular system. This is not subject to manipulations to differentiate the name as the output formats are.
system_index | Index of the system from within the coordinates cache |
const std::string & stormm::synthesis::SystemCache::getLabel | ( | int | label_index | ) | const |
Get a label from the cache by the numerical index in which it appears in the list of all labels.
label_index | Index of the label of interest |
int stormm::synthesis::SystemCache::getLabelCacheIndex | ( | const std::string & | query | ) | const |
Get the index of a particular string label within the cache. The index is found by a deep match to the string's contents. If no match is found, the function will return the total number of labels in the cache.
query | The string label to match |
std::vector< std::string > stormm::synthesis::SystemCache::getLabelsMatchingTopology | ( | const AtomGraph * | query_ag | ) | const |
Get a list of labels associated with a particular topology. This will return copies of each label string which can then be manipulated at the developer's discretion. A blank vector is returned if no associated labels are found.
Overloaded:
query_ag | The topology to search for in the cache |
std::vector< int > stormm::synthesis::SystemCache::getMatchingSystemIndices | ( | const AtomGraph * | query_ag, |
const std::string & | query_label ) const |
Return the indices of all systems from within the cache, matching a particular topology and / or a label.
Overloaded:
query_ag | The topology to match |
query_label | The label to seek out |
PrintSituation stormm::synthesis::SystemCache::getPrintingProtocol | ( | ) | const |
When multiple systems' coordinates are to be combined into a particular file, the file may be opened as a new file once, with whatever overwriting protocol, to write the first set of coordinates. Thereafter, the printing protocol must change: it should be appended with other systems from the same label group. This function will determine how to modulate the printing protcol.
Overloaded:
purpose | The role that the file will play |
systm_index | A particular system for which to obtain the printing protocol, which may be modified from the original if the system shares the same label as any others |
const RestraintApparatus * stormm::synthesis::SystemCache::getRestraintPointer | ( | int | index | ) | const |
Get a pointer to the restraint apparatus for a particular system.
Overloaded:
index | Index of the system of interest |
const RestraintApparatus & stormm::synthesis::SystemCache::getRestraints | ( | int | index | ) | const |
Get a reference to the restraint apparatus for a particular system.
index | Index of the system of interest |
const MdlMol & stormm::synthesis::SystemCache::getStructureDataEntry | ( | int | index | ) | const |
Return a reference to one of the MDL MOL entries in the cache.
Overloaded:
index | Index of the system, the MDL MOL object of interest |
const MdlMol * stormm::synthesis::SystemCache::getStructureDataEntryPointer | ( | int | index | ) | const |
Get a pointer to one of the MDL MOL objects in the cache.
Overloaded:
index | Index of the requested MDL MOL object |
int stormm::synthesis::SystemCache::getSystemExampleIndex | ( | int | topology_index | ) | const |
Get the index of a coordinate set which provides an example of the system that one of the topologies in the cache describes.
topology_index | Index of the topology of interest |
const ForwardExclusionMask & stormm::synthesis::SystemCache::getSystemForwardMask | ( | int | index | ) | const |
Get a reference to the forward exclusion mask for a particular system. These masks will only have been calculated for systems with periodic boundary conditions.
index | Index of the system of interest |
const ForwardExclusionMask * stormm::synthesis::SystemCache::getSystemForwardMaskPointer | ( | int | index | ) | const |
Get a pointer to the forward exclusion mask for a particular system. These masks will only have been calculated for systems with periodic boundary conditions.
Overloaded:
index | Index of the system of interest |
const std::string & stormm::synthesis::SystemCache::getSystemLabel | ( | int | system_index | ) | const |
Get the label associated with a particular system in the cache.
system_index | Index of the system from within the coordinates cache |
int stormm::synthesis::SystemCache::getSystemLabelIndex | ( | int | system_index | ) | const |
Get the index of the cached label associated with a particular system in the cache.
system_index | Index of the system from within the coordinates cache |
const StaticExclusionMask & stormm::synthesis::SystemCache::getSystemStaticMask | ( | int | index | ) | const |
Get a reference to the static exclusion mask for a particular system. These masks will only have been calculated for systems with isolated boundary conditions.
index | Index of the system of interest |
const StaticExclusionMask * stormm::synthesis::SystemCache::getSystemStaticMaskPointer | ( | int | index | ) | const |
Get a pointer to the static exclusion mask for a particular system. These masks will only have been calculated for systems with isolated boundary conditions.
Overloaded:
index | Index of the system of interest |
const AtomGraph & stormm::synthesis::SystemCache::getSystemTopology | ( | int | index | ) | const |
Return a reference to the topology that describes a particular set of coordinates within the SystemCache. All overloads apply a bounds check.
index | Index of the coordinate system of interest |
int stormm::synthesis::SystemCache::getSystemTopologyIndex | ( | int | coord_index | ) | const |
Get the topology index of one of the coordinate sets contained in this cache. This will apply a bounds check to the coordinate index query. This function should be used to access topologies in the output of a getTopology() or getTopologyPointer() call when the full array is returned without function input arguments. Calling either getTopology() or getTopologyPointer() with an integer argument implicitly performs the operation of getting the appropriate topology list index, as would be found by this function, and thus returns a reference or pointer to the appropriate topology.
Overloaded:
coord_index | Index of the PhaseSpace entry object of interest |
const AtomGraph * stormm::synthesis::SystemCache::getSystemTopologyPointer | ( | int | index | ) | const |
Get a pointer to a topology in the cache associated with a particular coordinate set.
Overloaded:
index | Index of the PhaseSpace entry of interest |
std::vector< int > stormm::synthesis::SystemCache::getTopologicalCases | ( | int | topology_index | ) | const |
Get a list of indices for all systems in the cache described by the topology of interest.
topology_index | The index of the topology of interest |
const std::vector< AtomGraph * > stormm::synthesis::SystemCache::getTopologiesMatchingLabel | ( | const std::string & | query_label | ) | const |
Get a list of topologies associated with a particular label. This will return a vector of pointers to the topologies within the cache, and will return an empty vector if no matches are found.
Overloaded:
query_label | The label to search for in the cache |
const AtomGraph & stormm::synthesis::SystemCache::getTopology | ( | int | topology_index | ) | const |
Get a reference to one of the unique topologies from within the topology cache, based on an index into the cache itself.
topology_index | Index of the topology of interes |
int stormm::synthesis::SystemCache::getTopologyCacheIndex | ( | const AtomGraph * | ag | ) | const |
Match a topology to one in the cache. If no match is found, the function will return the number of topologies in the cache.
Overloaded:
ag | The topology for comparison |
int stormm::synthesis::SystemCache::getTopologyCaseCount | ( | int | topology_index | ) | const |
Get the number of systems described by a topology of the given index in this cache.
topology_index | The index of the topology of interest |
const AtomGraph * stormm::synthesis::SystemCache::getTopologyPointer | ( | int | topology_index | ) | const |
Get pointers to one or all of the unique topologies from within the compact topology cache.
Overloaded:
topology_index | Index of the topology of interest |
CoordinateFileKind stormm::synthesis::SystemCache::getTrajectoryKind | ( | const int | system_index | ) | const |
Get the coordinate file type associated with a particular system's trajectory.
system_index | Index of the system from within the coordinates cache |
query_ag | Topology to seek out (this may or may not provide an unambiguous answer, and will produce the first available answer if there are multiple solutions) |
query_label | Label to seek out (this may or may not provide an unambiguous answer, and will produce the first available answer if there are multiple solutions) |
std::string stormm::synthesis::SystemCache::getTrajectoryName | ( | int | system_index | ) | const |
Get the name of the trajectory file associated with one of the systems. The name will be manipulated (by adding _## before the final '.', or at the end of the file name if there is no '.').
Overloaded:
system_index | Index of the system from within the coordinates cache |
query_ag | Topology to seek out (this may or may not provide an unambiguous answer, and will produce the first available answer if there are multiple solutions) |
system_index | Index of the system from within the coordinates cache |
const std::vector< StaticExclusionMask * > stormm::synthesis::SystemCache::getUniqueStaticMaskPointers | ( | ) | const |
Get a vector of all unique static exclusion masks in the system cache, ordered as they appear in the cache itself and therefore indexed by the output of getSystemTopologyIndex().
Overloaded:
void stormm::synthesis::SystemCache::setPrintingProtocol | ( | const PrintSituation | expectation_in | ) |
Set the printing protocol.
expectation_in | The protocol to use in printing any files |
void stormm::synthesis::SystemCache::setTrajectoryFusionProtocol | ( | TrajectoryFusion | file_merger_protocol_in | ) |
Set the trajectory fusion protocol.
file_merger_protocol_in | The new protocol to use. |