IOSS 2.0
Loading...
Searching...
No Matches
Ioss_EntitySet.h
Go to the documentation of this file.
1// Copyright(C) 1999-2020, 2022, 2023, 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_GroupingEntity.h" // for GroupingEntity
10#include "Ioss_Property.h" // for Property
11#include <cstddef> // for size_t
12#include <string> // for string
13
14#include "ioss_export.h"
15
16namespace Ioss {
17 class DatabaseIO;
18} // namespace Ioss
19
20namespace Ioss {
21 class ElementSet;
22
23 /** \brief Base class for all 'set'-type grouping entities, which means that members
24 * of the set are not necessarily similar, or do not necessarily have the
25 * same topology.
26 *
27 * The following derived classes are typical:
28 *
29 * -- NodeSet -- grouping of nodes (0d topology)
30 *
31 * -- EdgeSet -- grouping of edges (1d topology)
32 *
33 * -- FaceSet -- grouping of faces (2d topology) [Surface]
34 *
35 *
36 */
37 class IOSS_EXPORT EntitySet : public GroupingEntity
38 {
39 public:
40 EntitySet &operator=(const EntitySet &) = delete;
41 IOSS_NODISCARD Property get_implicit_property(const std::string &my_name) const override = 0;
42
43 protected:
44 EntitySet(DatabaseIO *io_database, const std::string &my_name, size_t entity_cnt);
45 EntitySet(const EntitySet &) = default;
46 };
47} // namespace Ioss
#define IOSS_NODISCARD
Definition Ioss_CodeTypes.h:55
An input or output Database.
Definition Ioss_DatabaseIO.h:63
Base class for all 'set'-type grouping entities, which means that members of the set are not necessar...
Definition Ioss_EntitySet.h:38
EntitySet & operator=(const EntitySet &)=delete
EntitySet(const EntitySet &)=default
Base class for all 'grouping' entities. The following derived classes are typical:
Definition Ioss_GroupingEntity.h:67
A named value that has a known type.
Definition Ioss_Property.h:27
The main namespace for the Ioss library.
Definition Ioad_DatabaseIO.C:40