5#ifndef __pinocchio_multibody_pool_geometry_hpp__
6#define __pinocchio_multibody_pool_geometry_hpp__
8#include "pinocchio/multibody/geometry.hpp"
9#include "pinocchio/multibody/pool/model.hpp"
13 template<
typename _Scalar,
int _Options,
template<
typename,
int>
class JointCollectionTpl>
28 typedef typename Base::ModelVector ModelVector;
29 typedef typename Base::DataVector DataVector;
33 typedef std::vector<GeometryModel, Eigen::aligned_allocator<GeometryModel>> GeometryModelVector;
34 typedef std::vector<GeometryData, Eigen::aligned_allocator<GeometryData>> GeometryDataVector;
83 PINOCCHIO_CHECK_INPUT_ARGUMENT(
85 "Index greater than the size of the geometry_models vector.");
92 PINOCCHIO_CHECK_INPUT_ARGUMENT(
94 "Index greater than the size of the geometry_models vector.");
101 PINOCCHIO_CHECK_INPUT_ARGUMENT(
103 "Index greater than the size of the geometry_datas vector.");
110 PINOCCHIO_CHECK_INPUT_ARGUMENT(
112 "Index greater than the size of the geometry_datas vector.");
148 PINOCCHIO_CHECK_INPUT_ARGUMENT(
150 "One of the given geometry index is greater than geometry_model.ngeoms.");
const GeometryModel & getGeometryModel(const size_t index) const
Returns the geometry_model at given index.
size_t size() const
Returns the size of the pool.
GeometryModelVector m_geometry_models
Vector of Geometry Model associated to the pool.
virtual void update(const GeometryData &geometry_data_to_copy)
Update the geometry datas with the new value.
GeometryData & getGeometryData(const size_t index)
Returns the geometry_data at given index.
GeometryDataVector & getGeometryDatas()
Returns the vector of Geometry Data.
const GeometryModelVector & getGeometryModels() const
Returns the vector of Geometry Model.
GeometryModel & getGeometryModel(const size_t index)
Returns the geometry_model at given index.
void sync(const GeometryModel &geometry_model, const std::vector< GeomIndex > &geometry_indexes)
Synchronize the internal geometry models with the input geometry for all given geometry indexes by cl...
GeometryPoolTpl(const Model &model, const GeometryModel &geometry_model, const size_t pool_size=(size_t) omp_get_max_threads())
Default constructor from a model and a pool size.
virtual void doResize(const size_t new_size)
 
GeometryPoolTpl(const GeometryPoolTpl &other)
Copy constructor from an other GeometryPoolTpl.
GeometryDataVector m_geometry_datas
Vector of Geometry Data associated to the pool.
const GeometryDataVector & getGeometryDatas() const
Returns the vector of Geometry Data.
virtual ~GeometryPoolTpl()
 
const GeometryData & getGeometryData(const size_t index) const
Returns the geometry_data at given index.
GeometryModelVector & getGeometryModels()
Returns the vector of Geometry Model.
size_t size() const
Returns the size of the pool.
void update(const Data &data)
Update all the datas with the input data value.
Main pinocchio namespace.