Go to the documentation of this file.00001
00002
00003
00004
00005
00006 #ifdef ALBANY_SEACAS
00007
00008 #ifndef ALBANY_IOSS_STKMESHSTRUCT_HPP
00009 #define ALBANY_IOSS_STKMESHSTRUCT_HPP
00010
00011 #include "Albany_GenericSTKMeshStruct.hpp"
00012 #include <stk_io/MeshReadWriteUtils.hpp>
00013 #include <stk_io/IossBridge.hpp>
00014
00015 #include <Ionit_Initializer.h>
00016
00017 namespace Albany {
00018
00019 class IossSTKMeshStruct : public GenericSTKMeshStruct {
00020
00021 public:
00022
00023 IossSTKMeshStruct(
00024 const Teuchos::RCP<Teuchos::ParameterList>& params,
00025 const Teuchos::RCP<Teuchos::ParameterList>& adaptParams,
00026 const Teuchos::RCP<const Epetra_Comm>& epetra_comm);
00027
00028 ~IossSTKMeshStruct();
00029
00030 void setFieldAndBulkData(
00031 const Teuchos::RCP<const Epetra_Comm>& comm,
00032 const Teuchos::RCP<Teuchos::ParameterList>& params,
00033 const unsigned int neq_,
00034 const AbstractFieldContainer::FieldContainerRequirements& req,
00035 const Teuchos::RCP<Albany::StateInfoStruct>& sis,
00036 const unsigned int worksetSize);
00037
00038 int getSolutionFieldHistoryDepth() const {return m_solutionFieldHistoryDepth;}
00039 double getSolutionFieldHistoryStamp(int step) const;
00040 void loadSolutionFieldHistory(int step);
00041
00043 bool hasRestartSolution() const {return m_hasRestartSolution;}
00044
00046 double restartDataTime() const {return m_restartDataTime;}
00047
00048 private:
00049 Ioss::Init::Initializer ioInit;
00050
00051 Teuchos::RCP<const Teuchos::ParameterList>
00052 getValidDiscretizationParameters() const;
00053
00054 void readSerialMesh(const Teuchos::RCP<const Epetra_Comm>& comm,
00055 std::vector<std::string>& entity_rank_names);
00056
00057 Teuchos::RCP<Teuchos::FancyOStream> out;
00058 bool usePamgen;
00059 bool useSerialMesh;
00060 bool periodic;
00061 stk::io::MeshData* mesh_data;
00062
00063 bool m_hasRestartSolution;
00064 double m_restartDataTime;
00065 int m_solutionFieldHistoryDepth;
00066
00067 };
00068
00069 }
00070 #endif
00071 #endif