Cloned SEACAS for EXODUS library with extra build files for internal package management.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.4 KiB

2 years ago
// Copyright(C) 1999-2020, 2022 National Technology & Engineering Solutions
// of Sandia, LLC (NTESS). Under the terms of Contract DE-NA0003525 with
// NTESS, the U.S. Government retains certain rights in this software.
//
// See packages/seacas/LICENSE for details
#pragma once
#include "CJ_CodeTypes.h"
#include <string>
#include <vector>
namespace Excn {
class SystemInterface;
class ExodusFile
{
public:
explicit ExodusFile(size_t which);
~ExodusFile();
ExodusFile(const ExodusFile &) = delete;
ExodusFile operator=(const ExodusFile &) = delete;
static bool initialize(const SystemInterface &si);
static bool create_output(const SystemInterface &si);
static void close_all();
static int output();
static int io_word_size() { return ioWordSize_; }
operator int() const;
static int max_name_length() { return maximumNameLength_; }
private:
size_t myLocation_;
static std::vector<std::string> filenames_;
static std::vector<int> fileids_;
static int outputId_;
static int ioWordSize_;
static int cpuWordSize_;
static std::string outputFilename_;
static bool keepOpen_;
static int maximumNameLength_;
static int exodusMode_;
};
} // namespace Excn