1 #ifndef MCMD_PAIR_SELECTOR_H 2 #define MCMD_PAIR_SELECTOR_H 103 bool avoidDoubleCounting_;
110 template <
class Archive>
friend 118 {
return pairType_; }
124 {
return atom1TypeId_; }
130 {
return atom2TypeId_; }
166 template <
class Archive>
169 ar & selector.pairType_;
170 ar & selector.atom1TypeId_;
171 ar & selector.atom2TypeId_;
202 template <
class Archive>
209 #include <util/mpi/MpiTraits.h> static void commitMpiType()
Commit associated MPI DataType.
friend std::ostream & operator<<(std::ostream &out, const PairSelector &selector)
ostream inserter (<<) for a PairSelector object.
static MPI::Datatype type
MPI Datatype.
static bool hasType
Is the MPI type initialized?
static bool hasType
Is the MPI type initialized?
File containing preprocessor macros for error handling.
bool match(const Atom &atom1, const Atom &atom2) const
Return true if pair of atoms matches the selector policy.
friend void serialize(Archive &ar, PairSelector &selector, const unsigned int version)
Serialize a PairSelector.
int atom2TypeId() const
Return value of type Id for atom 2 (-1 means accept all types).
A point particle within a Molecule.
Utility classes for scientific computation.
PairSelector()
Constructor.
friend std::istream & operator>>(std::istream &in, PairSelector &selector)
istream extractor (>>) for a PairSelector object.
void serializeEnum(Archive &ar, T &data, const unsigned int version=0)
Serialize an enumeration value.
Selection rule for pairs of Atoms.
void setAvoidDoubleCounting(bool avoidDoubleCounting)
Set policy to avoid double counting (true) or to not avoid (false).
PairType
Type of atom pair, based on identity of parent molecules.
Single-processor Monte Carlo (MC) and molecular dynamics (MD).
int atom1TypeId() const
Return value of type Id for atom 1 (-1 means accept all types).
static MPI::Datatype type
MPI Datatype.
PairType pairType() const
Return value of pair type.