WARPXM v1.10.0
Loading...
Searching...
No Matches
dataloader.h
Go to the documentation of this file.
1#ifndef WXM_DATA_LOADER_H
2#define WXM_DATA_LOADER_H
3
4// WarpX lib includes
5
6// WarpX HostAction includes
8
9// std includes
10#include <string>
11#include <vector>
12
13namespace wxm
14{
15
16namespace variable
17{
19}
20
21namespace host_actions
22{
23
34{
35public:
42 data_loader(const WmConstOpaquePtr& parent_solver) : WmHostAction(parent_solver)
43 {
44 }
45
51 void setup(const WxCryptSet& wxc);
52
57 virtual void typeCheck();
58
65
66 bool needsDomain() const
67 {
68 return false;
69 }
70
71private:
72 std::string filename;
73 std::vector<std::pair<std::string, std::string>> input_comps;
74 std::vector<std::pair<wxm::variable::distributed_variable_t*, size_t>> out_comps;
75 std::vector<std::string> subdomains;
76};
77
79} // namespace host_actions
80} // namespace wxm
81
82#endif
Opaque Pointer object that carries the referenced data type, but does not expose this payload type as...
Definition: wmopaqueptr.h:81
The WmHostAction class is a base class for sub-solvers in the WARPXM system.
Definition: wmhostaction.h:35
WxCryptSet extends WxCrypt by providing, in addition to name-value pairs, an set of named WxCryptSets...
Definition: wxcryptset.h:35
Represents important parameters for the efficacy of a completing simulation step.
Definition: wxstepperstatus.h:19
Suplements WmVariableLoader by allowing you to load "arbitrary" data to variable subdomains.
Definition: dataloader.h:34
WxStepperStatus step()
Step the solver by assigned time step.
void setup(const WxCryptSet &wxc)
Setup HostAction object using supplied cryptset.
virtual void typeCheck()
check that variable types are appropriate for this HostAction.
data_loader(const WmConstOpaquePtr &parent_solver)
Create new WmVariableLoader host action.
Definition: dataloader.h:42
bool needsDomain() const
Return true if this updater needs a domain to work on.
Definition: dataloader.h:66
Defines an interface for variables that exits over distributed memory.
Definition: distributed_variable.h:28
Base namespace for everything not included in the global namespace.
Definition: field_source.h:8