• Main Page
  • Related Pages
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

Albany_ObserverImpl.hpp

Go to the documentation of this file.
00001 //*****************************************************************//
00002 //    Albany 2.0:  Copyright 2012 Sandia Corporation               //
00003 //    This Software is released under the BSD license detailed     //
00004 //    in the file "license.txt" in the top-level Albany directory  //
00005 //*****************************************************************//
00006 #ifndef ALBANY_OBSERVERIMPL_HPP
00007 #define ALBANY_OBSERVERIMPL_HPP
00008 
00009 #include "Albany_Application.hpp"
00010 #include "Albany_DataTypes.hpp"
00011 
00012 #include "Epetra_Map.h"
00013 #include "Epetra_Vector.h"
00014 
00015 #include "Teuchos_RCP.hpp"
00016 #include "Teuchos_Ptr.hpp"
00017 
00018 #include "Teuchos_Time.hpp"
00019 
00020 namespace Albany {
00021 
00022 class ObserverImpl {
00023 public:
00024   explicit ObserverImpl(const Teuchos::RCP<Application> &app);
00025 
00026   RealType getTimeParamValueOrDefault(RealType defaultValue) const;
00027 
00028   Epetra_Map getNonOverlappedMap() const;
00029 
00030   void observeSolution(
00031       double stamp,
00032       const Epetra_Vector &nonOverlappedSolution,
00033       Teuchos::Ptr<const Epetra_Vector> nonOverlappedSolutionDot);
00034 
00035 private:
00036   Teuchos::RCP<Application> app_;
00037 
00038   Teuchos::RCP<Teuchos::Time> solOutTime_;
00039 
00040   // Disallow copy and assignment
00041   ObserverImpl(const ObserverImpl &);
00042   ObserverImpl &operator=(const ObserverImpl &);
00043 };
00044 
00045 } // namespace Albany
00046 
00047 #endif //ALBANY_OBSERVERIMPL_HPP

Generated on Wed Mar 26 2014 18:36:36 for Albany: a Trilinos-based PDE code by  doxygen 1.7.1