An exclusion mask object for a compilation of systems. All systems are represented in full detail, and a series of systems using the same topology will each get their own entries in the supertile map indices array, filtering on down to tile indices and the unique mask data.
More...
#include <static_mask_synthesis.h>
|
int | getSystemCount () const |
| Get the number of systems covered by this object.
|
|
int | getAtomCount (int index=0) const |
| Get the number of atoms in one of the systems described by the mask.
|
|
int | getAtomOffset (int index=0) const |
| Get the starting position of atoms in one of the systems described by the mask.
|
|
bool | testExclusion (int system_index, int atom_i, int atom_j) const |
| Obtain from the mask whether a combination of two atoms in a particular system constitutes an exclusion.
|
|
SeMaskSynthesisReader | data (HybridTargetLevel tier=HybridTargetLevel::HOST) const |
| Get the abstract for this static exclusion mask synthesis.
|
|
|
| StaticExclusionMaskSynthesis () |
| The constructor requires a list of pre-computed StaticExclusionMask objects, each of which will contain pointers to the original topologies, and a list of indices stating which masks to apply in a given order for the synthesis of systems.
|
|
| StaticExclusionMaskSynthesis (const std::vector< StaticExclusionMask * > &base_masks, const std::vector< int > &topology_indices) |
|
| StaticExclusionMaskSynthesis (const std::vector< StaticExclusionMask > &base_masks, const std::vector< int > &topology_indices) |
|
| StaticExclusionMaskSynthesis (const std::vector< AtomGraph * > &base_toplogies, const std::vector< int > &topology_indices) |
|
|
| StaticExclusionMaskSynthesis (const StaticExclusionMaskSynthesis &original)=default |
| With no const members or pointers to repair (including POINTER-kind Hybrid) objects, this object is compatible with the default copy and move constructors as well as copy and move assignment operators.
|
|
| StaticExclusionMaskSynthesis (StaticExclusionMaskSynthesis &&original)=default |
|
StaticExclusionMaskSynthesis & | operator= (const StaticExclusionMaskSynthesis &original)=default |
|
StaticExclusionMaskSynthesis & | operator= (StaticExclusionMaskSynthesis &&original)=default |
|
An exclusion mask object for a compilation of systems. All systems are represented in full detail, and a series of systems using the same topology will each get their own entries in the supertile map indices array, filtering on down to tile indices and the unique mask data.
◆ StaticExclusionMaskSynthesis() [1/2]
stormm::synthesis::StaticExclusionMaskSynthesis::StaticExclusionMaskSynthesis |
( |
| ) |
|
The constructor requires a list of pre-computed StaticExclusionMask objects, each of which will contain pointers to the original topologies, and a list of indices stating which masks to apply in a given order for the synthesis of systems.
Overloaded:
- Create an empty object
- Accept a list of static exclusion mask object pointers
- Accept a list of static exclusion mask objects
- Accept a list of topology pointers, from which exclusion masks will be constructed
- Accept an existing synthesis of topologies
- Parameters
-
base_masks | List of exclusion masks for all unique topologies in the synthesis |
base_topologies | List of topologies from which to construct the exclusion masks (providing this removes the need to generate the list of exclusion masks outside this function) |
topology_indices | List of indices into base_masks indicating how to compile the synthesis of systems |
◆ StaticExclusionMaskSynthesis() [2/2]
With no const members or pointers to repair (including POINTER-kind Hybrid) objects, this object is compatible with the default copy and move constructors as well as copy and move assignment operators.
- Parameters
-
original | The original object to copy or move |
other | Another object placed on the right hand side of the assignment statement |
◆ getAtomCount()
int stormm::synthesis::StaticExclusionMaskSynthesis::getAtomCount |
( |
int | index = 0 | ) |
const |
Get the number of atoms in one of the systems described by the mask.
- Parameters
-
index | The system index for which to query the atom count |
◆ getAtomOffset()
int stormm::synthesis::StaticExclusionMaskSynthesis::getAtomOffset |
( |
int | index = 0 | ) |
const |
Get the starting position of atoms in one of the systems described by the mask.
- Parameters
-
index | The system index for which to query the atom offset |
◆ testExclusion()
bool stormm::synthesis::StaticExclusionMaskSynthesis::testExclusion |
( |
int | system_index, |
|
|
int | atom_i, |
|
|
int | atom_j ) const |
Obtain from the mask whether a combination of two atoms in a particular system constitutes an exclusion.
- Parameters
-
system_index | Index the system of interest |
atom_i | Index of the first atom within the system of interest |
atom_j | Index of the second atom within the system of interest |
The documentation for this class was generated from the following files: