74 virtual void fill(
const std::vector<WxAny>& fillValues)
189 virtual const WxAny min(
const int componentIndex)
const
241 const std::vector<std::string>& orderedComponentNames);
369 const int patch_index) = 0;
378 const int patch_index)
const = 0;
Opaque Pointer object that carries the referenced data type, but does not expose this payload type as...
Definition: wmopaqueptr.h:81
Defines an interface for variables that exits over distributed memory.
Definition: wmvariable.h:290
virtual wxm::array::patch_array_t & patch_array(const int component_index, const int patch_index)=0
Aquire a patch array for a specified component.
virtual void updateGhosts_wait(const int key)
This is a registered sync wait call.
Definition: wmvariable.h:342
virtual void setup(const WxCryptSet &wxc)
Setup the distributed variable.
bool on_subdomain(const std::string &subdomain_name) const
Check if this distributed variable exists on a given subdomain.
virtual void updateGhosts_register(const int key)
This is a registered sync call register.
Definition: wmvariable.h:318
WmDistributedVariable(const WmConstOpaquePtr &parent_solver)
Forces the distributed variable to be a base class.
virtual const wxm::array::patch_array_t & patch_array(const int component_index, const int patch_index) const =0
Aquire a patch array for a specified component.
virtual void updateGhosts()
Update values in the extended regions from neighbor processes.
Definition: wmvariable.h:307
std::vector< std::string > _virtual_names
List of subdomains on which this distributed variable virtually exists.
Definition: wmvariable.h:385
const std::vector< std::string > & subdomain_names() const
Get a list of subdomains on which this distributed variable exists.
Definition: wmvariable.h:350
std::vector< std::string > _subdomain_names
List of subdomains on which this distributed variable exists.
Definition: wmvariable.h:382
virtual void updateGhosts_nb(const int key)
This is a registered sync call - non blocking.
Definition: wmvariable.h:329
Provides hierarchical container for T values according to unique string keys.
Definition: wmnametree.h:30
A base class for solvers in WARPM.
Definition: wmsolverbase.h:35
Base class for variables that store one or more components of data.
Definition: wmvariable.h:31
virtual void copy(const WmVariable &var)
Set the variable from supplied one.
virtual void swap(WmVariable &otherVar)
Swap the internal data storage of this variable with otherVar leaving the outer shell the same,...
const std::type_info & getRealTypeID() const
Get the type that real type aliases.
bool hasComponent(const std::string &componentName) const
Check if this variable has a component matching the name supplied.
virtual ~WmVariable()
Destroy object.
WmNameTree< variableComponent_t >::const_iterator component_const_iterator_t
Definition: wmvariable.h:259
WmVariable(const std::string &name, const std::vector< std::string > &orderedComponentNames)
Constructor sets up basic variable container, and all properties otherwise set through setup() method...
virtual void fill(const std::vector< WxAny > &fillValues)
For each component, apply a fill value throughout the domain.
Definition: wmvariable.h:74
std::string getRealTypeStr() const
Get the name for the type that real type aliases.
unsigned _numComponents
Definition: wmvariable.h:262
variableComponent_t getIndexForComponent(const std::string &componentName) const
Returns the component number associated with the componentName.
virtual const std::type_info & getElementTypeForComponent(unsigned int index) const
Returns a type_info reference for the most primative element type stored by the variable.
const WmSolverBase & getParent() const
Get the parent solver.
unsigned variableComponent_t
variableComponent serves as a sort of pointer to individual components of the variable and is the val...
Definition: wmvariable.h:155
virtual const WxAny absoluteMin(const int componentIndex) const
Returns the absolute minimum value for the component identified Absolute min is the closest value to ...
Definition: wmvariable.h:202
const std::string & getComponentName(const variableComponent_t index) const
Returns the component name for a given index.
WmVariable(const WmConstOpaquePtr &parent_solver)
Constructor sets up basic variable container, but no properties or specifics.
virtual void dump(WxIoBase &io, WxIoNodeType &grpNode) const
Dump object to file.
virtual void load(WxIoBase &io, const WxIoNodeType &grpNode)
Load object from file.
WmNameTree< variableComponent_t > _componentTree
Definition: wmvariable.h:261
virtual const std::type_info & getElementType() const
Returns a type_info reference for the most primative element type stored by the variable.
unsigned int getNumComponents() const
Returns number of components represented in the variable.
virtual void setup(const WxCryptSet &wxc)
Setup object using supplied crypset.
virtual const WxAny min(const int componentIndex) const
Returns the minimum value for the component identified.
Definition: wmvariable.h:189
virtual bool checkCompatible(const WmVariable &var) const
Compares this variable to another supplied WmVariable and report if they are swap compatible.
std::vector< std::string > getComponentNames() const
Get names of all components (alphabetical order)
std::vector< std::string > _orderedComponentNames
Definition: wmvariable.h:264
SwapImpl * p_impl
Definition: wmvariable.h:274
Class WxAny is based on the "any" class described in "Valued Conversion", Kevlin Henney,...
Definition: wxany.h:139
WxCryptSet extends WxCrypt by providing, in addition to name-value pairs, an set of named WxCryptSets...
Definition: wxcryptset.h:35
Provides an abstract interface for access to hierachical datasets.
Definition: wxiobase.h:25
WxObject is a base class for WarpX classes which need to go through a creation/destruction cycle with...
Definition: wxobject.h:54
virtual std::string name() const
Get name of object.
Definition: wmvariable.h:267
virtual void swap_impl(WmVariable &varA, WmVariable &varB) const
virtual ~SwapImpl()=default
virtual bool checkCompatible_impl(const WmVariable &varA, const WmVariable &varB) const
Provides a means for derived messengers to return implimentation specific message status flags and da...
Definition: wxiotmpl.h:23