1#ifndef PSCF_ENVIRONMENT_BASE_H
2#define PSCF_ENVIRONMENT_BASE_H
11#include <util/param/ParamComposite.h>
12#include <pscf/sweep/ParameterModifier.h>
101 virtual void reset();
149 bool generatesExternalFields_;
160 : needsUpdate_(true),
161 generatesMask_(false),
162 generatesExternalFields_(false),
172 { needsUpdate_ =
true; }
176 {
return needsUpdate_; }
180 {
return generatesMask_; }
184 {
return generatesExternalFields_; }
190 UTIL_THROW(
"Must call setGenerateBools before generating fields.");
192 needsUpdate_ =
false;
201 generatesExternalFields_ = generatesExt;
bool generatesExternalFields() const
Does this Environment generate external fields?
bool needsUpdate() const
Does this Environment need to be updated?
bool generatesMask() const
Does this Environment generate a mask?
virtual void generate()=0
Checks if fields need to be (re)generated.
void setNeedsUpdateFalse()
Set needsUpdate to false.
void setClassName(const char *className)
Set class name string.
virtual void reset()
Sets needsUpdate() to true.
EnvironmentBase()
Constructor.
void setGenerateBools(bool generatesMask, bool generatesExt)
Set generatesMask and generatesExternalFields.
~EnvironmentBase()
Destructor.
ParameterModifier()
Constructor.
void setClassName(const char *className)
Set class name string.
ParamComposite()
Constructor.
#define UTIL_CHECK(condition)
Assertion macro suitable for serial or parallel production code.
#define UTIL_THROW(msg)
Macro for throwing an Exception, reporting function, file and line number.
PSCF package top-level namespace.