/usr/include/trilinos/Pike_Solver_DefaultBase.hpp is in libtrilinos-pike-dev 12.10.1-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 | #ifndef PIKE_SOLVER_DEFAULT_BASE_HPP
#define PIKE_SOLVER_DEFAULT_BASE_HPP
#include "Pike_Solver.hpp"
#include "Teuchos_RCP.hpp"
#include "Teuchos_ParameterListAcceptorDefaultBase.hpp"
namespace Teuchos {
class ParameterList;
}
namespace pike {
class SolverDefaultBase : public pike::Solver,
public Teuchos::ParameterListAcceptorDefaultBase {
public:
SolverDefaultBase();
virtual ~SolverDefaultBase();
virtual void registerComm(const Teuchos::RCP<const Teuchos::Comm<int> >& comm);
virtual void registerModelEvaluator(const Teuchos::RCP<pike::BlackBoxModelEvaluator>& me);
virtual void registerDataTransfer(const Teuchos::RCP<pike::DataTransfer>& dt);
virtual void completeRegistration();
virtual Teuchos::RCP<const pike::BlackBoxModelEvaluator>
getModelEvaluator(const std::string& name) const;
virtual const std::vector<Teuchos::RCP<const pike::BlackBoxModelEvaluator> > getModelEvaluators() const;
virtual Teuchos::RCP<const pike::DataTransfer>
getDataTransfer(const std::string& name) const;
virtual const std::vector<Teuchos::RCP<const pike::DataTransfer> > getDataTransfers() const;
virtual void stepImplementation() = 0;
virtual pike::SolveStatus step();
/** \brief If not called manually by the user, this will be called
internally on the first call to solve() */
virtual void initialize();
virtual pike::SolveStatus solve();
/** \brief In not called manually by the user, this will be called
in the destructor of this solver. */
virtual void finalize();
virtual void reset();
virtual pike::SolveStatus getStatus() const;
virtual int getNumberOfIterations() const;
void setParameterList(const Teuchos::RCP<Teuchos::ParameterList>& paramList);
Teuchos::RCP<const Teuchos::ParameterList> getValidParameters() const;
Teuchos::RCP<Teuchos::ParameterList> getNonconstValidParameters();
virtual void addObserver(const Teuchos::RCP<pike::SolverObserver>& observer);
virtual std::vector<Teuchos::RCP<pike::SolverObserver> > getObservers() const;
virtual void setStatusTests(const Teuchos::RCP<pike::StatusTest>& statusTests);
virtual Teuchos::RCP<const pike::StatusTest> getStatusTests() const;
virtual std::string name() const;
protected:
typedef std::vector<Teuchos::RCP<SolverObserver> >::iterator ObserverIterator;
typedef std::vector<Teuchos::RCP<pike::BlackBoxModelEvaluator> >::iterator ModelIterator;
typedef std::vector<Teuchos::RCP<pike::BlackBoxModelEvaluator> >::const_iterator ModelConstIterator;
typedef std::vector<Teuchos::RCP<pike::DataTransfer> >::iterator TransferIterator;
typedef std::vector<Teuchos::RCP<pike::DataTransfer> >::const_iterator TransferConstIterator;
int numberOfIterations_;
Teuchos::RCP<Teuchos::ParameterList> validParameters_;
Teuchos::RCP<pike::StatusTest> statusTests_;
std::vector<Teuchos::RCP<SolverObserver> > observers_;
pike::SolveStatus status_;
std::vector<Teuchos::RCP<pike::BlackBoxModelEvaluator> > models_;
std::vector<Teuchos::RCP<pike::DataTransfer> > transfers_;
bool registrationComplete_;
std::string name_;
bool isInitialized_;
bool isFinalized_;
// Output
bool printBeginSolveStatus_;
bool printStepStatus_;
bool printEndSolveStatus_;
};
}
#endif
|