Aikido
aikido::constraint::uniform::RnBoxConstraintSampleGenerator< N > Class Template Reference

#include <aikido/constraint/uniform/detail/RnBoxConstraint-impl.hpp>

Inheritance diagram for aikido::constraint::uniform::RnBoxConstraintSampleGenerator< N >:
aikido::constraint::SampleGenerator

Public Types

using VectorNd = Eigen::Matrix< double, N, 1 >
 

Public Member Functions

statespace::ConstStateSpacePtr getStateSpace () const override
 Gets the StateSpace that this SampleGenerator samples from. More...
 
bool sample (statespace::StateSpace::State *_state) override
 Returns one sample from this constraint; returns true if succeeded. More...
 
int getNumSamples () const override
 Gets an upper bound on the number of samples remaining or NO_LIMIT. More...
 
bool canSample () const override
 Returns whether getNumSamples() > 0. More...
 
- Public Member Functions inherited from aikido::constraint::SampleGenerator
virtual ~SampleGenerator ()=default
 

Private Member Functions

 RnBoxConstraintSampleGenerator (std::shared_ptr< const statespace::R< N >> _space, std::unique_ptr< common::RNG > _rng, const VectorNd &_lowerLimits, const VectorNd &_upperLimits)
 

Private Attributes

std::shared_ptr< const statespace::R< N > > mSpace
 
std::unique_ptr< common::RNGmRng
 
std::vector< std::uniform_real_distribution< double > > mDistributions
 

Friends

class RBoxConstraint< N >
 

Additional Inherited Members

- Static Public Attributes inherited from aikido::constraint::SampleGenerator
static constexpr int NO_LIMIT = std::numeric_limits<int>::max()
 Value used to represent a potentially infinite number of samples. More...
 

Member Typedef Documentation

◆ VectorNd

template<int N>
using aikido::constraint::uniform::RnBoxConstraintSampleGenerator< N >::VectorNd = Eigen::Matrix<double, N, 1>

Constructor & Destructor Documentation

◆ RnBoxConstraintSampleGenerator()

template<int N>
aikido::constraint::uniform::RnBoxConstraintSampleGenerator< N >::RnBoxConstraintSampleGenerator ( std::shared_ptr< const statespace::R< N >>  _space,
std::unique_ptr< common::RNG _rng,
const VectorNd _lowerLimits,
const VectorNd _upperLimits 
)
private

Member Function Documentation

◆ canSample()

template<int N>
bool aikido::constraint::uniform::RnBoxConstraintSampleGenerator< N >::canSample ( ) const
overridevirtual

Returns whether getNumSamples() > 0.

Implements aikido::constraint::SampleGenerator.

◆ getNumSamples()

template<int N>
int aikido::constraint::uniform::RnBoxConstraintSampleGenerator< N >::getNumSamples ( ) const
overridevirtual

Gets an upper bound on the number of samples remaining or NO_LIMIT.

Implements aikido::constraint::SampleGenerator.

◆ getStateSpace()

template<int N>
statespace::ConstStateSpacePtr aikido::constraint::uniform::RnBoxConstraintSampleGenerator< N >::getStateSpace ( ) const
overridevirtual

Gets the StateSpace that this SampleGenerator samples from.

Implements aikido::constraint::SampleGenerator.

◆ sample()

template<int N>
bool aikido::constraint::uniform::RnBoxConstraintSampleGenerator< N >::sample ( statespace::StateSpace::State _state)
overridevirtual

Returns one sample from this constraint; returns true if succeeded.

Implements aikido::constraint::SampleGenerator.

Friends And Related Function Documentation

◆ RBoxConstraint< N >

template<int N>
friend class RBoxConstraint< N >
friend

Member Data Documentation

◆ mDistributions

template<int N>
std::vector<std::uniform_real_distribution<double> > aikido::constraint::uniform::RnBoxConstraintSampleGenerator< N >::mDistributions
private

◆ mRng

template<int N>
std::unique_ptr<common::RNG> aikido::constraint::uniform::RnBoxConstraintSampleGenerator< N >::mRng
private

◆ mSpace

template<int N>
std::shared_ptr<const statespace::R<N> > aikido::constraint::uniform::RnBoxConstraintSampleGenerator< N >::mSpace
private