FEI Version of the Day
Loading...
Searching...
No Matches
snl_fei_Broker.hpp
1/*--------------------------------------------------------------------*/
2/* Copyright 2005 Sandia Corporation. */
3/* Under the terms of Contract DE-AC04-94AL85000, there is a */
4/* non-exclusive license for use of this work by or on behalf */
5/* of the U.S. Government. Export of this program may require */
6/* a license from the United States Government. */
7/*--------------------------------------------------------------------*/
8
9#ifndef _snl_fei_Broker_hpp_
10#define _snl_fei_Broker_hpp_
11
12#include <fei_macros.hpp>
13#include <fei_SharedPtr.hpp>
14
15namespace fei {
16 class VectorSpace;
17 class MatrixGraph;
18 class Vector;
19 class Matrix;
20 class LinearSystem;
21}//namespace fei
22
23namespace snl_fei {
24
30 class Broker {
31 public:
33 virtual ~Broker(){}
34
44 virtual fei::SharedPtr<fei::Vector> createVector(bool isSolutionVector=false) = 0;
45
49
53
55 virtual void setMatrixGraph(fei::SharedPtr<fei::MatrixGraph> matrixGraph) = 0;
56 };//class Broker
57}//namespace snl_fei
58
59#endif // _snl_fei_Broker_hpp_
virtual fei::SharedPtr< fei::LinearSystem > createLinearSystem()=0
virtual fei::SharedPtr< fei::Vector > createVector(bool isSolutionVector=false)=0
virtual void setMatrixGraph(fei::SharedPtr< fei::MatrixGraph > matrixGraph)=0
virtual fei::SharedPtr< fei::Matrix > createMatrix()=0