1#ifndef PSCF_MIX_AND_MATCH_ENV_TMPL_H
2#define PSCF_MIX_AND_MATCH_ENV_TMPL_H
11#include <util/param/ParamComposite.h>
12#include <pscf/sweep/ParameterModifier.h>
58 template <
class Env,
class FG>
128 using Env::needsUpdate;
136 using Env::setNeedsUpdateFalse;
137 using Env::setGenerateBools;
178#include "MixAndMatchEnvTmpl.tpp"
void setParameter(std::string name, DArray< int > ids, double value, bool &success)
Set the value of a specialized sweep parameter.
FG const & fieldGenerator2() const
Get the second FieldGenerator (if any) by const reference.
FG * fieldGenPtr1_
Pointer to the first FieldGenerator object (required).
GArray< ParameterType > getParameterTypes()
Get specialized sweep parameter types to add to a Sweep object.
double getParameter(std::string name, DArray< int > ids, bool &success) const
Get the value of a specialized sweep parameter.
FG * fieldGenPtr2_
Pointer to the second FieldGenerator object (optional).
void generate()
Checks if fields need to be (re)generated.
void readParameters(std::istream &in)
Read parameters from input stream.
MixAndMatchEnvTmpl()
Constructor.
~MixAndMatchEnvTmpl()
Destructor.
FG const & fieldGenerator1() const
Get the first FieldGenerator by const reference.
virtual void createGenerators()=0
Create FieldGenerator objects for mask and/or external field.
bool hasFieldGenerator2() const
Does a second FieldGenerator exist?
virtual void setParameter(std::string name, DArray< int > ids, double value, bool &success)
Set the value of a specialized sweep parameter.
virtual double getParameter(std::string name, DArray< int > ids, bool &success) const
Get the value of a specialized sweep parameter.
Dynamically allocatable contiguous array template.
An automatically growable array, analogous to a std::vector.
void addParamComposite(ParamComposite &child, bool next=true)
Add a child ParamComposite object to the format array.
void setClassName(const char *className)
Set class name string.
PSCF package top-level namespace.