MOAB: Mesh Oriented datABase  (version 5.2.1)
WriteSmf.hpp
Go to the documentation of this file.
00001 /**
00002  * MOAB, a Mesh-Oriented datABase, is a software component for creating,
00003  * storing and accessing finite element mesh data.
00004  *
00005  * Copyright 2004 Sandia Corporation.  Under the terms of Contract
00006  * DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government
00007  * retains certain rights in this software.
00008  *
00009  * This library is free software; you can redistribute it and/or
00010  * modify it under the terms of the GNU Lesser General Public
00011  * License as published by the Free Software Foundation; either
00012  * version 2.1 of the License, or (at your option) any later version.
00013  *
00014  */
00015 
00016 #ifndef WRITE_SMF_HPP
00017 #define WRITE_SMF_HPP
00018 
00019 #include <iosfwd>
00020 
00021 #include "moab/Forward.hpp"
00022 #include "moab/WriterIface.hpp"
00023 
00024 namespace moab
00025 {
00026 
00027 class WriteUtilIface;
00028 
00029 class WriteSmf : public WriterIface
00030 {
00031 
00032   public:
00033     //! Constructor
00034     WriteSmf( Interface* impl );
00035 
00036     //! Destructor
00037     virtual ~WriteSmf();
00038 
00039     static WriterIface* factory( Interface* );
00040 
00041     //! writes out a file
00042     ErrorCode write_file( const char* file_name, const bool overwrite, const FileOptions& opts,
00043                           const EntityHandle* output_list, const int num_sets,
00044                           const std::vector< std::string >& qa_list, const Tag* tag_list = NULL, int num_tags = 0,
00045                           int export_dimension = 3 );
00046 
00047   private:
00048     Interface* mbImpl;
00049     WriteUtilIface* writeTool;
00050 };
00051 
00052 }  // namespace moab
00053 
00054 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines