IOSS 2.0
Loading...
Searching...
No Matches
Ioss_CoordinateFrame.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_CodeTypes.h"
10#include <cstdint> // for int64_t
11#include <vector> // for vector
12
13#include "ioss_export.h"
14
15namespace Ioss {
16 class DatabaseIO;
17
18 class IOSS_EXPORT CoordinateFrame
19 {
20 public:
21 CoordinateFrame(int64_t my_id, char my_tag, const double *point_list);
22
23 IOSS_NODISCARD int64_t id() const;
24 IOSS_NODISCARD char tag() const;
25 IOSS_NODISCARD const double *coordinates() const;
26 IOSS_NODISCARD const double *origin() const;
27 IOSS_NODISCARD const double *axis_3_point() const;
28 IOSS_NODISCARD const double *plane_1_3_point() const;
29
30 IOSS_NODISCARD bool operator!=(const Ioss::CoordinateFrame &rhs) const;
31 IOSS_NODISCARD bool operator==(const Ioss::CoordinateFrame &rhs) const;
32 IOSS_NODISCARD bool equal(const Ioss::CoordinateFrame &rhs) const;
33
34 private:
35 bool equal_(const Ioss::CoordinateFrame &rhs, bool quiet) const;
36 std::vector<double> pointList_{};
37 int64_t id_{};
38 char tag_;
39 };
40} // namespace Ioss
#define IOSS_NODISCARD
Definition Ioss_CodeTypes.h:54
Definition Ioss_CoordinateFrame.h:19
char tag_
Definition Ioss_CoordinateFrame.h:38
The main namespace for the Ioss library.
Definition Ioad_DatabaseIO.C:40