File StatesHandler.h¶
- Copyright
This code is licensed under the 3-clause BSD license.
Copyright ETH Zurich, Laboratory for Physical Chemistry, Reiher Group.
See LICENSE.txt for details.
-
namespace
Scine
This header file contains functions that allow for common notation for common things that can be done at a different degree of derivatives.
This header contains alias definitions defining which classes to use for the different degrees of derivatives.
-
namespace
Utils
-
class
EmptyStatesHandlerContainer
: public exception - #include <StatesHandler.h>
This exception is thrown if an empty states handler is popped.
Private Functions
-
const char *
what
() const¶
-
const char *
-
class
StatesHandler
- #include <StatesHandler.h>
Base class for the implementation of a generic saving and loading capability.
Implementation note: If a class having an interface needs to save/load a state, then it has to populate the polymorphic pointers to the State class with a derived class, specific to the class.
Subclassed by Scine::Utils::ExternalQC::OrcaStatesHandler
Public Functions
-
StatesHandler
()¶
-
virtual
~StatesHandler
()¶
Store a state as the newest state.
- Parameters
state
: A pointer to the state to store internally.
-
virtual void
store
(StateSize) Internally store the current state as the newest state.
- Parameters
size
: The required size of the state to save.
Loads a state, i.e.
it applies it.
- Parameters
state
: The state to be loaded. Can also be one of the states currently stored in the StatesHandler.
-
std::shared_ptr<State>
getState
(int index) Gets the state with the index i.
- Return
A polymorphic smart pointer to the State at index i.
-
virtual std::shared_ptr<State>
getCurrentState
(StateSize) const = 0 Gets the current state without the need to load it.
- Return
A polymorphic shared pointer to the current State.
-
std::shared_ptr<State>
popOldestState
() Eliminates from the underlying container and returns the oldest state recorded.
-
std::shared_ptr<State>
popNewestState
() Eliminates from the underlying container and returns the newest state recorded.
-
void
clear
() Clear all the internally saved states.
-
int
size
() const Get the current size of the state storage.
- Return
The number of states currently saved.
Protected Attributes
-
StatesContainer
states_
¶
-
-
class
-
namespace