opynsim
Unofficial C++ Documentation
Loading...
Searching...
No Matches
triangle.h
Go to the documentation of this file.
1#pragma once
2
4
5#include <cstddef>
6
7namespace osc
8{
9 struct Triangle final {
17 using const_pointer = const value_type*;
19 using const_iterator = const value_type*;
20 static constexpr size_t extent = 3;
21
22 constexpr size_type size() const { return extent; }
23 constexpr pointer data() { return &p0; }
24 constexpr const_pointer data() const { return &p0; }
25 constexpr iterator begin() { return data(); }
26 constexpr const_iterator begin() const { return data(); }
27 constexpr iterator end() { return data() + size(); }
28 constexpr const_iterator end() const { return data() + size(); }
29 constexpr reference operator[](size_type pos) { return begin()[pos]; }
30 constexpr const_reference operator[](size_type pos) const { return begin()[pos]; }
31
32 friend bool operator==(const Triangle&, const Triangle&) = default;
33
37 };
38}
Definition custom_decoration_generator.h:5
constexpr U to(T &&value)
Definition conversion.h:56
Definition triangle.h:9
constexpr const_reference operator[](size_type pos) const
Definition triangle.h:30
constexpr iterator begin()
Definition triangle.h:25
static constexpr size_t extent
Definition triangle.h:20
constexpr const_iterator end() const
Definition triangle.h:28
value_type p1
Definition triangle.h:35
size_t size_type
Definition triangle.h:12
friend bool operator==(const Triangle &, const Triangle &)=default
float element_type
Definition triangle.h:10
ptrdiff_t difference_type
Definition triangle.h:13
constexpr const_iterator begin() const
Definition triangle.h:26
constexpr iterator end()
Definition triangle.h:27
constexpr const_pointer data() const
Definition triangle.h:24
constexpr reference operator[](size_type pos)
Definition triangle.h:29
value_type p0
Definition triangle.h:34
constexpr size_type size() const
Definition triangle.h:22
constexpr pointer data()
Definition triangle.h:23
value_type p2
Definition triangle.h:36