1 #ifndef CASM_OccCandidate_HH
2 #define CASM_OccCandidate_HH
15 struct jsonConstructor;
67 std::pair<const OccCandidate &, const Conversions &> value);
116 std::pair<const OccSwap &, const Conversions &> value);
183 std::pair<const OccCandidateList &, const Conversions &> value);
void _make_possible_swaps(const Conversions &convert)
Construct m_canonical_swaps, m_grand_canonical_swaps.
std::vector< OccCandidate >::const_iterator const_iterator
const OccCandidate & operator[](Index candidate_index) const
std::vector< std::vector< Index > > m_species_to_cand_index
m_converter[asym][species_index] -> candidate_index
Index index(const OccCandidate &cand) const
const std::vector< OccSwap > & canonical_swap() const
const_iterator begin() const
std::vector< OccSwap > m_canonical_swap
vector of allowed canonical swaps
const std::vector< OccSwap > & grand_canonical_swap() const
Index index(Index asym, Index species_index) const
std::vector< OccSwap > m_grand_canonical_swap
vector of allowed grand canonical swaps
const_iterator end() const
std::vector< OccCandidate > m_candidate
Store swap type, mutating sites, and info for keeping OccLocation up-to-date.
bool _lt(const OccSwap &B) const
std::tuple< OccCandidate, OccCandidate > tuple_type
OccSwap(const OccCandidate &_cand_a, const OccCandidate &_cand_b)
bool operator<(const OccSwap &B) const
jsonParser & to_json(const CanonicalConditions &conditions, jsonParser &json)
Store CanonicalConditions in JSON format.
std::ostream & operator<<(std::ostream &sout, const CanonicalConditions &cond)
void swap(ConfigDoF &A, ConfigDoF &B)
INDEX_TYPE Index
For long integer indexing:
OccCandidate(Index _asym, Index _species_index)
bool operator<(OccCandidate B) const
Helper struct for constructing objects that need additional data.
static ReturnType from_json(const jsonParser &json)
Default from_json is equivalent to.
Implements other comparisons in terms of '<'.