12 #ifndef CD_KMCSingleState_H
13 #define CD_KMCSingleState_H
19 #include <CD_NamespaceHeader.H>
26 template <
typename T =
long long>
30 using State = std::vector<T>;
113 #include <CD_NamespaceFooter.H>
Implementation of CD_KMCSingleState.H.
Declaration of a straightforward state for advancing with the Kinetic Monte Carlo module.
Definition: CD_KMCSingleState.H:28
KMCSingleState(const KMCSingleState &a_state)=default
Copy constructor.
KMCSingleState & operator=(const KMCSingleState &)=default
Copy assignment constructor.
T & operator[](const size_t a_idx) noexcept
Get the population of the input index.
Definition: CD_KMCSingleStateImplem.H:48
virtual ~KMCSingleState()
Destructor.
Definition: CD_KMCSingleStateImplem.H:26
KMCSingleState & operator=(const KMCSingleState &&)=delete
Disallowed move assignement.
KMCSingleState()=delete
Disallowed weak construction.
State m_state
State vector.
Definition: CD_KMCSingleState.H:110
KMCSingleState(KMCSingleState &&)=delete
Disallowed move constructor.
State & getState() noexcept
Get modifiable state.
Definition: CD_KMCSingleStateImplem.H:66
bool isValidState() const noexcept
Check if state is a valid state.
Definition: CD_KMCSingleStateImplem.H:31