Owning raw constraint-buffer facade.
More...
#include <robot.hpp>
|
| | Constraints (std::size_t dim, std::size_t capacity=0) |
| | Constraints (Constraints &&) noexcept |
| Constraints & | operator= (Constraints &&) noexcept |
| | ~Constraints () |
| | Constraints (const Constraints &)=delete |
| Constraints & | operator= (const Constraints &)=delete |
| ConstraintsRef | ref () noexcept |
| | Borrow this owning object as a solver/constraint reference.
|
| std::size_t | dim () const |
| std::size_t | len () const |
| std::size_t | size () const |
| std::size_t | capacity () const |
| bool | is_empty () const |
| std::pair< std::size_t, std::size_t > | idx_s_range () const |
| Constraints & | append_s (Span< const double > s) |
| std::vector< double > | s_values (std::size_t idx_s_from, std::size_t idx_s_to) const |
| std::vector< double > | amax_values (std::size_t idx_s_from, std::size_t idx_s_to) const |
| double | s_value (std::size_t idx_s) const |
| double | amax_value (std::size_t idx_s) const |
| Constraints & | amax_substitute (Span< const double > amax, std::size_t idx_s) |
| Constraints & | clear (bool keep_idx_s=false) |
| Constraints & | pop_front_n (std::size_t n_cols) |
| Constraints & | pop_back_n (std::size_t n_cols) |
| Constraints & | pop_front_until (std::size_t idx_s_cut) |
| Constraints & | pop_back_until (std::size_t idx_s_cut) |
| Constraints & | add_constraint_1st (Span< const double > amax, std::size_t idx_s) |
| Constraints & | add_constraint_1st (MatrixView amax, std::size_t idx_s) |
| Constraints & | add_constraint_2nd (MatrixView acc_a, MatrixView acc_b, MatrixView acc_max, std::size_t idx_s, bool is_negative=false) |
| Constraints & | add_constraint_3rd (MatrixView jerk_a, MatrixView jerk_b, MatrixView jerk_c, MatrixView jerk_d, MatrixView jerk_max, std::size_t idx_s, bool is_negative=false) |
Owning raw constraint-buffer facade.
This class mirrors Python's independently constructed Constraints. Internally it owns the same Rust robot-handle shape as Robot, but exposes only raw constraint-buffer operations. This keeps solver problem construction uniform: both Robot::constraints() and Constraints::ref() produce a ConstraintsRef.
constraints.append_s(std::vector<double>{0.0, 0.5, 1.0})
constraints.ref(),
};
Owning raw constraint-buffer facade.
Constraints & add_constraint_1st(Span< const double > amax, std::size_t idx_s)
TOPP2 problem descriptor.
Closed station-index interval used by TOPP/COPP problem descriptors.
Definition at line 244 of file robot.hpp.
◆ Constraints() [1/3]
| copp::Constraints::Constraints |
( |
std::size_t | dim, |
|
|
std::size_t | capacity = 0 ) |
|
explicit |
◆ Constraints() [2/3]
| copp::Constraints::Constraints |
( |
Constraints && | | ) |
|
|
noexcept |
◆ ~Constraints()
| copp::Constraints::~Constraints |
( |
| ) |
|
◆ Constraints() [3/3]
| copp::Constraints::Constraints |
( |
const Constraints & | | ) |
|
|
delete |
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ ref()
Borrow this owning object as a solver/constraint reference.
◆ dim()
| std::size_t copp::Constraints::dim |
( |
| ) |
const |
◆ len()
| std::size_t copp::Constraints::len |
( |
| ) |
const |
◆ size()
| std::size_t copp::Constraints::size |
( |
| ) |
const |
◆ capacity()
| std::size_t copp::Constraints::capacity |
( |
| ) |
const |
◆ is_empty()
| bool copp::Constraints::is_empty |
( |
| ) |
const |
◆ idx_s_range()
| std::pair< std::size_t, std::size_t > copp::Constraints::idx_s_range |
( |
| ) |
const |
◆ append_s()
◆ s_values()
| std::vector< double > copp::Constraints::s_values |
( |
std::size_t | idx_s_from, |
|
|
std::size_t | idx_s_to ) const |
◆ amax_values()
| std::vector< double > copp::Constraints::amax_values |
( |
std::size_t | idx_s_from, |
|
|
std::size_t | idx_s_to ) const |
◆ s_value()
| double copp::Constraints::s_value |
( |
std::size_t | idx_s | ) |
const |
◆ amax_value()
| double copp::Constraints::amax_value |
( |
std::size_t | idx_s | ) |
const |
◆ amax_substitute()
| Constraints & copp::Constraints::amax_substitute |
( |
Span< const double > | amax, |
|
|
std::size_t | idx_s ) |
◆ clear()
| Constraints & copp::Constraints::clear |
( |
bool | keep_idx_s = false | ) |
|
◆ pop_front_n()
| Constraints & copp::Constraints::pop_front_n |
( |
std::size_t | n_cols | ) |
|
◆ pop_back_n()
| Constraints & copp::Constraints::pop_back_n |
( |
std::size_t | n_cols | ) |
|
◆ pop_front_until()
| Constraints & copp::Constraints::pop_front_until |
( |
std::size_t | idx_s_cut | ) |
|
◆ pop_back_until()
| Constraints & copp::Constraints::pop_back_until |
( |
std::size_t | idx_s_cut | ) |
|
◆ add_constraint_1st() [1/2]
| Constraints & copp::Constraints::add_constraint_1st |
( |
Span< const double > | amax, |
|
|
std::size_t | idx_s ) |
◆ add_constraint_1st() [2/2]
◆ add_constraint_2nd()
◆ add_constraint_3rd()
The documentation for this class was generated from the following file: