moveit2
The MoveIt Motion Planning Framework for ROS 2.
Loading...
Searching...
No Matches
online_signal_smoothing::OSQPDataWrapper Struct Reference

Wrapper struct to make memory management easier for using osqp's C API. On OSQP v0.6.x, the aggregated OSQPData struct is populated in the constructor and passed as a single pointer to osqp_setup. On OSQP v1.0+, that aggregate no longer exists — matrices/vectors are passed directly to osqp_setup — but this wrapper still owns the Eigen-backed memory for P, A, q, l, u so the solver's borrowed pointers stay alive across the object's lifetime. More...

Collaboration diagram for online_signal_smoothing::OSQPDataWrapper:

Public Member Functions

 OSQPDataWrapper (Eigen::SparseMatrix< double > &objective_sparse, Eigen::SparseMatrix< double > &constraints_sparse)
void updateA (OSQPWorkspace *work, Eigen::SparseMatrix< double > &constraints_sparse)
 Update the constraint matrix A without reallocating memory.

Public Attributes

CSCWrapper P
CSCWrapper A
Eigen::VectorXd q
Eigen::VectorXd l
Eigen::VectorXd u
OSQPData data {}

Detailed Description

Wrapper struct to make memory management easier for using osqp's C API. On OSQP v0.6.x, the aggregated OSQPData struct is populated in the constructor and passed as a single pointer to osqp_setup. On OSQP v1.0+, that aggregate no longer exists — matrices/vectors are passed directly to osqp_setup — but this wrapper still owns the Eigen-backed memory for P, A, q, l, u so the solver's borrowed pointers stay alive across the object's lifetime.

Definition at line 120 of file acceleration_filter.cpp.

Constructor & Destructor Documentation

◆ OSQPDataWrapper()

online_signal_smoothing::OSQPDataWrapper::OSQPDataWrapper ( Eigen::SparseMatrix< double > & objective_sparse,
Eigen::SparseMatrix< double > & constraints_sparse )
inline

Definition at line 122 of file acceleration_filter.cpp.

Member Function Documentation

◆ updateA()

void online_signal_smoothing::OSQPDataWrapper::updateA ( OSQPWorkspace * work,
Eigen::SparseMatrix< double > & constraints_sparse )
inline

Update the constraint matrix A without reallocating memory.

Definition at line 153 of file acceleration_filter.cpp.

Member Data Documentation

◆ A

CSCWrapper online_signal_smoothing::OSQPDataWrapper::A

Definition at line 162 of file acceleration_filter.cpp.

◆ data

OSQPData online_signal_smoothing::OSQPDataWrapper::data {}

Definition at line 167 of file acceleration_filter.cpp.

◆ l

Eigen::VectorXd online_signal_smoothing::OSQPDataWrapper::l

Definition at line 164 of file acceleration_filter.cpp.

◆ P

CSCWrapper online_signal_smoothing::OSQPDataWrapper::P

Definition at line 161 of file acceleration_filter.cpp.

◆ q

Eigen::VectorXd online_signal_smoothing::OSQPDataWrapper::q

Definition at line 163 of file acceleration_filter.cpp.

◆ u

Eigen::VectorXd online_signal_smoothing::OSQPDataWrapper::u

Definition at line 165 of file acceleration_filter.cpp.


The documentation for this struct was generated from the following file: