CASM
AClustersApproachtoStatisticalMechanics
|
#include <Enumerator.hh>
Abstract base class for enumerators.
Definition at line 99 of file Enumerator.hh.
Public Types | |
typedef long | step_type |
Public Member Functions | |
EnumeratorBase () | |
Default constructor. More... | |
~EnumeratorBase () | |
step_type | step () const |
Increments with each enumerated object. More... | |
bool | valid () const |
Returns false if enumeration is complete. More... | |
virtual jsonParser | source (step_type step) const |
virtual std::string | name () const =0 |
Derived enumerators must implement name, via ENUM_MEMBERS. More... | |
Protected Member Functions | |
void | _initialize () |
void | _set_step (step_type val) |
Set current step value. More... | |
void | _increment_step () |
Increment current step value. More... | |
void | _decrement_step () |
Decrement current step value. More... | |
void | _invalidate () |
Call if enumeration complete. More... | |
void | _validate () |
Used if random access enumerator step is moved into valid range. More... | |
Private Attributes | |
bool | m_valid |
step_type | m_step |
typedef long CASM::EnumeratorBase::step_type |
Definition at line 103 of file Enumerator.hh.
|
inline |
Default constructor.
Definition at line 106 of file Enumerator.hh.
|
inline |
Definition at line 110 of file Enumerator.hh.
|
inlineprotected |
Decrement current step value.
Definition at line 164 of file Enumerator.hh.
|
inlineprotected |
Increment current step value.
Definition at line 159 of file Enumerator.hh.
|
inlineprotected |
|
inlineprotected |
Call if enumeration complete.
Definition at line 169 of file Enumerator.hh.
|
inlineprotected |
Set current step value.
Definition at line 154 of file Enumerator.hh.
|
inlineprotected |
Used if random access enumerator step is moved into valid range.
Definition at line 174 of file Enumerator.hh.
|
pure virtual |
Derived enumerators must implement name, via ENUM_MEMBERS.
Implemented in CASM::ScelEnumT< IsConst >, CASM::ScelEnumByPropsT< IsConst >, CASM::ScelEnumByNameT< IsConst >, CASM::SuperConfigEnum, CASM::ConfigEnumRandomOccupations, CASM::ConfigEnumEquivalents, CASM::ConfigEnumAllOccupations, CASM::TestEnum, CASM::ConfigEnumStrain, CASM::ScelEnumEquivalents, CASM::ConfigEnumInterpolation, and CASM::LatticeEnumEquivalents.
|
inlinevirtual |
|
inline |
Increments with each enumerated object.
Definition at line 113 of file Enumerator.hh.
|
inline |
Returns false if enumeration is complete.
Definition at line 118 of file Enumerator.hh.
|
private |
Definition at line 182 of file Enumerator.hh.
|
private |
Definition at line 180 of file Enumerator.hh.