ompl::PDF< _T > Class Template Reference

A container that supports probabilistic sampling over weighted data. More...

#include <ompl/datastructures/PDF.h>


class  Element
 A class that will hold data contained in the PDF. More...

Public Member Functions

 PDF ()=default
 Constructs an empty PDF.
 PDF (const std::vector< _T > &d, const std::vector< double > &weights)
 Constructs a PDF containing a given vector of data with given weights.
 ~PDF ()
 Destructor. Clears allocated memory.
const std::vector< Element * > & getElements ()
 Get the current set of stored elements.
Elementadd (const _T &d, const double w)
 Adds a piece of data with a given weight to the PDF. Returns a corresponding Element, which can be used to subsequently update or remove the data from the PDF.
_T & sample (double r) const
 Returns a piece of data from the PDF according to the input sampling value, which must be between 0 and 1.
void update (Element *elem, const double w)
 Updates the data in the given Element with a new weight value.
double getWeight (const Element *elem) const
 Returns the current weight of the given Element.
void remove (Element *elem)
 Removes the data in the given Element from the PDF. After calling this function, the Element object should no longer be used.
void clear ()
 Clears the PDF.
std::size_t size () const
 Returns the number of elements in the PDF.
const _T & operator[] (unsigned int i) const
 Returns indexed data from the PDF, according to order of insertion.
bool empty () const
 Returns whether the PDF contains no data.
void printTree (std::ostream &out=std::cout) const
 Prints the PDF tree to a given output stream. Used for debugging purposes.

Detailed Description

template<typename _T>
class ompl::PDF< _T >

A container that supports probabilistic sampling over weighted data.

Definition at line 48 of file PDF.h.

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