IOSS 2.0
Loading...
Searching...
No Matches
Ioss_CompositeVariableType.h
Go to the documentation of this file.
1// Copyright(C) 1999-2020, 2022, 2024 National Technology & Engineering Solutions
2// of Sandia, LLC (NTESS). Under the terms of Contract DE-NA0003525 with
3// NTESS, the U.S. Government retains certain rights in this software.
4//
5// See packages/seacas/LICENSE for details
6
7#pragma once
8
9#include "ioss_export.h"
10
11#include "Ioss_CodeTypes.h"
12#include "Ioss_VariableType.h" // for VariableType
13#include <string> // for string
14
15namespace Ioss {
16 class IOSS_EXPORT CompositeVariableType : public VariableType
17 {
18 public:
19 IOSS_NODISCARD static std::string composite_name(const std::string &base, int copies);
20 IOSS_NODISCARD static VariableType *composite_variable_type(const VariableType *inst,
21 int copies);
22
23 IOSS_NODISCARD std::string label(int which, char suffix_sep = '_') const override;
24 CompositeVariableType(const std::string &my_name, int number_components, bool delete_me);
25 CompositeVariableType(const VariableType *base_type, int copies, bool delete_me);
27
28 IOSS_NODISCARD const VariableType *GetBaseType() const;
29 IOSS_NODISCARD int GetNumCopies() const;
30
31 private:
34 };
35} // namespace Ioss
#define IOSS_NODISCARD
Definition Ioss_CodeTypes.h:54
Definition Ioss_CompositeVariableType.h:17
CompositeVariableType(const CompositeVariableType &)=delete
const VariableType * baseType
Definition Ioss_CompositeVariableType.h:32
int copies_
Definition Ioss_CompositeVariableType.h:33
A generic variable type.
Definition Ioss_VariableType.h:66
The main namespace for the Ioss library.
Definition Ioad_DatabaseIO.C:40