|
CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <EnumEquivalents.hh>
Inheritance diagram for CASM::EnumEquivalents< ObjectType, SymOpIterator, SymOpType, SymOpCompare >:Enumerate over all equivalents.
Assumes the following exist:
Definition at line 43 of file EnumEquivalents.hh.
Public Types | |
| typedef InputEnumIterator< ObjectType, true > | iterator |
| typedef ValueType | value_type |
| typedef CASM_TMP::ConstSwitch< IsConst, ValueType > & | reference |
| typedef long | step_type |
Public Member Functions | |
| template<typename MakeInvariantSubgroup > | |
| EnumEquivalents (const ObjectType &generating_obj, SymOpIterator begin, SymOpIterator end, MakeInvariantSubgroup f=MakeInvariantSubgroup(), SymOpCompare compare=SymOpCompare()) | |
| Constructor. More... | |
| const ObjectType & | generator () const |
| const SymOpType & | sym_op () const |
| const std::vector< SymOpType > & | invariant_subgroup () const |
| iterator | begin () |
| iterator | end () |
| reference | current () const |
| Access the current ObjectType by reference. More... | |
| virtual std::string | name () const=0 |
| Derived enumerators must implement name, via ENUM_MEMBERS. More... | |
| virtual std::string | name () const =0 |
| Derived enumerators must implement name, via ENUM_MEMBERS. More... | |
| virtual jsonParser | source (step_type step) const |
| virtual jsonParser | source (step_type step) const |
| step_type | step () const |
| Increments with each enumerated object. More... | |
| step_type | step () const |
| Increments with each enumerated object. More... | |
| bool | valid () const |
| Returns false if enumeration is complete. More... | |
| bool | valid () const |
| Returns false if enumeration is complete. More... | |
Protected Member Functions | |
| void | _initialize (CASM_TMP::ConstSwitch< IsConst, value_type > *_initial) |
| void | _initialize () |
| void | _set_current_ptr (CASM_TMP::ConstSwitch< IsConst, value_type > *_new) |
| Change the pointer. More... | |
| void | _decrement_step () |
| Decrement current step value. More... | |
| void | _increment_step () |
| Increment current step value. More... | |
| void | _invalidate () |
| Call if enumeration complete. More... | |
| void | _set_step (step_type val) |
| Set current step value. More... | |
| void | _set_step (step_type val) |
| Set current step value. More... | |
| void | _validate () |
| Used if random access enumerator step is moved into valid range. More... | |
Private Member Functions | |
| void | increment () override |
| Implement increment. More... | |
| bool | _check (const SymOpType &X) const |
Private Attributes | |
| notstd::cloneable_ptr< ObjectType > | m_initial |
| notstd::cloneable_ptr< ObjectType > | m_current |
| SymOpIterator | m_symop_it |
| SymOpIterator | m_symop_end |
| std::vector< SymOpType > | m_invariant_subgroup |
| SymOpCompare | m_compare |
| friend | InputEnumIteratorBase< ValueType, IsConst > |
| CASM_TMP::ConstSwitch< IsConst, value_type > * | m_current_ptr |
| bool | m_valid |
| step_type | m_step |
|
inherited |
Definition at line 204 of file InputEnumerator.hh.
|
inherited |
Definition at line 174 of file Enumerator.hh.
|
inherited |
Definition at line 107 of file Enumerator.hh.
|
inherited |
Definition at line 173 of file Enumerator.hh.
|
inlineprotectedinherited |
Decrement current step value.
Definition at line 156 of file Enumerator.hh.
|
inlineprotectedinherited |
Increment current step value.
Definition at line 153 of file Enumerator.hh.
|
inlineprotectedinherited |
|
inlineprotectedinherited |
Initialize
Definition at line 197 of file Enumerator.hh.
|
inlineprotectedinherited |
Call if enumeration complete.
Definition at line 159 of file Enumerator.hh.
|
inlineprotectedinherited |
Change the pointer.
Definition at line 215 of file Enumerator.hh.
|
inlineprotectedinherited |
Set current step value.
Definition at line 150 of file Enumerator.hh.
|
inlineprotectedinherited |
Set current step value.
Definition at line 150 of file Enumerator.hh.
|
inlineprotectedinherited |
Used if random access enumerator step is moved into valid range.
Definition at line 162 of file Enumerator.hh.
|
inlineinherited |
Definition at line 216 of file InputEnumerator.hh.
|
inlineinherited |
Access the current ObjectType by reference.
Definition at line 211 of file Enumerator.hh.
|
inlineinherited |
Definition at line 220 of file InputEnumerator.hh.
|
pure virtualinherited |
Derived enumerators must implement name, via ENUM_MEMBERS.
Implemented in CASM::LatticeEnumEquivalents, CASM::SuperConfigEnum, CASM::ScelEnumEquivalents, CASM::ScelEnumByProps, CASM::ConfigEnumStrain, CASM::ConfigEnumSiteDoFs, CASM::ConfigEnumRandomOccupations, CASM::ConfigEnumRandomLocal, CASM::ConfigEnumByPermutation, and CASM::ConfigEnumAllOccupations.
|
inherited |
Derived enumerators must implement name, via ENUM_MEMBERS.
|
inlinevirtualinherited |
Default Object source just uses step#
Returns:
Definition at line 129 of file Enumerator.hh.
|
inlineinherited |
|
inlineinherited |
Increments with each enumerated object.
Definition at line 115 of file Enumerator.hh.
|
inlineinherited |
Increments with each enumerated object.
Definition at line 115 of file Enumerator.hh.
|
inlineinherited |
Returns false if enumeration is complete.
Definition at line 118 of file Enumerator.hh.
|
inlineinherited |
Returns false if enumeration is complete.
Definition at line 118 of file Enumerator.hh.
|
privateinherited |
Definition at line 198 of file InputEnumerator.hh.
|
privateinherited |
Definition at line 220 of file Enumerator.hh.
|
privateinherited |
Definition at line 167 of file Enumerator.hh.
|
privateinherited |
Definition at line 165 of file Enumerator.hh.