1#ifndef included_AMP_AsyncMapColumnOperator
2#define included_AMP_AsyncMapColumnOperator
4#include "AMP/mesh/Mesh.h"
5#include "AMP/operators/AsynchronousColumnOperator.h"
6#include "AMP/operators/AsynchronousColumnOperatorParameters.h"
35 std::string
type()
const override {
return "AsyncMapColumnOperator"; }
45 void append( std::shared_ptr<Operator>
op )
override;
61 template<
typename MAP_TYPE>
62 static std::shared_ptr<AsyncMapColumnOperator>
build( std::shared_ptr<AMP::Mesh::Mesh>
manager,
63 std::shared_ptr<AMP::Database>
database );
70 static std::vector<std::shared_ptr<AMP::Database>>
80#include "AMP/operators/map/AsyncMapColumnOperator.tmpl.h"
std::shared_ptr< Vector > shared_ptr
Shorthand for shared pointer to Vector.
std::shared_ptr< const Vector > const_shared_ptr
A column of map operators used for Mesh to Mesh interactions through a mapping.
std::string type() const override
Return the name of the operator.
void append(std::shared_ptr< Operator > op) override
void setVector(AMP::LinearAlgebra::Vector::shared_ptr p)
Call setVector on all vectors in the column.
virtual AMP::LinearAlgebra::Vector::shared_ptr getFrozenVector()
Returns the frozen vector.
AsyncMapColumnOperator(std::shared_ptr< const OperatorParameters > params)
Empty constructor.
AsyncMapColumnOperator()
Default constructor.
void apply(AMP::LinearAlgebra::Vector::const_shared_ptr u, AMP::LinearAlgebra::Vector::shared_ptr f) override
static std::shared_ptr< AsyncMapColumnOperator > build(std::shared_ptr< AMP::Mesh::Mesh > manager, std::shared_ptr< AMP::Database > database)
A factory method.
AMP::LinearAlgebra::Vector::shared_ptr d_OutputVector
static std::vector< std::shared_ptr< AMP::Database > > createDatabases(std::shared_ptr< AMP::Database > database)
virtual bool requiresMakeConsistentSet()
A column operator of asynchronous operators. The apply method will start the list of operators then f...
std::shared_ptr< AMP::Operator::Operator > shared_ptr
AsynchronousColumnOperatorParameters AsyncMapColumnOperatorParameters
AsyncMapColumnOperator does not require parameters beyond those of AsynchronousColumnOperator.