Files
FESADev/include/fesa/element/Element.hpp
T
2026-06-09 09:04:21 +09:00

27 lines
617 B
C++

#pragma once
#include "fesa/core/ElementDefinition.hpp"
#include <array>
#include <cstddef>
namespace fesa::element {
using fesa::core::ElementId;
using fesa::core::ElementType;
using fesa::core::NodeId;
using fesa::core::PropertyId;
class Element {
public:
virtual ~Element() = default;
virtual ElementId id() const noexcept = 0;
virtual ElementType type() const noexcept = 0;
virtual std::size_t nodeCount() const noexcept = 0;
virtual const std::array<NodeId, 4>& connectivity() const noexcept = 0;
virtual PropertyId propertyId() const noexcept = 0;
};
} // namespace fesa::element