2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-05-13 15:51:22 +00:00
metaforce/Runtime/Collision/CCollisionEdge.hpp
Lioncash a952ff1110 CCollisionEdge: Make constructors constexpr
Makes the default and non-stream iterator constexpr, which allows for
elimination of a runtime initializer.
2020-04-05 06:46:03 -04:00

24 lines
630 B
C++

#pragma once
#include "Runtime/RetroTypes.hpp"
namespace urde {
class CCollisionEdge {
u16 x0_index1 = -1;
u16 x2_index2 = -1;
public:
constexpr CCollisionEdge() noexcept = default;
explicit CCollisionEdge(CInputStream&);
constexpr CCollisionEdge(u16 v0, u16 v1) noexcept : x0_index1(v0), x2_index2(v1) {}
[[nodiscard]] constexpr u16 GetVertIndex1() const noexcept { return x0_index1; }
[[nodiscard]] constexpr u16 GetVertIndex2() const noexcept { return x2_index2; }
constexpr void swapBig() noexcept {
x0_index1 = hecl::SBig(x0_index1);
x2_index2 = hecl::SBig(x2_index2);
}
};
} // namespace urde