Definition of a compound control sampler. This is useful to construct samplers for compound controls. More...
#include <ControlSampler.h>
Public Member Functions | |
virtual void | addSampler (const ControlSamplerPtr &sampler) |
Add a sampler as part of the new compound sampler. This sampler is used to sample part of the compound control. | |
CompoundControlSampler (const ControlSpace *space) | |
Constructor. | |
virtual void | sample (Control *control, const base::State *state) |
Sample a control, given it is applied to a specific state. The default implementation calls the previous definition of sample(). Providing a different implementation of this function is useful if, for example, the sampling of controls depends on the state of the system. When attempting to sample controls that keep a system stable, for example, knowing the state at which the control is applied is important. | |
virtual void | sample (Control *control) |
Sample a control. All other control sampling functions default to this one, unless a user-specified implementation is given. | |
virtual void | sampleNext (Control *control, const Control *previous, const base::State *state) |
Sample a control, given the previously applied control and that it is applied to a specific state. The default implementation calls the first definition of sample(). This is the function planners typically call. If implementations that require information about the state or about the previous control are provided, this function should be reimplemented as well, to call those functions. Providing an implementation that takes into account both the previous control and the state is also possible. | |
virtual void | sampleNext (Control *control, const Control *previous) |
Sample a control, given the previously applied control. The default implementation calls the first definition of sample(). For some systems it is possible that large changes in controls are not desirable. For example, switching from maximum acceleration to maximum deceleration is not desirable when driving a car. | |
virtual | ~CompoundControlSampler (void) |
Destructor. This frees the added samplers as well. | |
Protected Attributes | |
std::vector< ControlSamplerPtr > | samplers_ |
The instances of samplers used for compound sampler. | |
Private Attributes | |
unsigned int | samplerCount_ |
Number of sampler instances. |
Definition of a compound control sampler. This is useful to construct samplers for compound controls.
Definition at line 137 of file ControlSampler.h.
ompl::control::CompoundControlSampler::CompoundControlSampler | ( | const ControlSpace * | space | ) | [inline] |
Constructor.
Definition at line 142 of file ControlSampler.h.
virtual ompl::control::CompoundControlSampler::~CompoundControlSampler | ( | void | ) | [inline, virtual] |
Destructor. This frees the added samplers as well.
Definition at line 147 of file ControlSampler.h.
virtual void ompl::control::CompoundControlSampler::addSampler | ( | const ControlSamplerPtr & | sampler | ) | [virtual] |
Add a sampler as part of the new compound sampler. This sampler is used to sample part of the compound control.
virtual void ompl::control::CompoundControlSampler::sample | ( | Control * | control, | |
const base::State * | ||||
) | [virtual] |
Sample a control, given it is applied to a specific state. The default implementation calls the previous definition of sample(). Providing a different implementation of this function is useful if, for example, the sampling of controls depends on the state of the system. When attempting to sample controls that keep a system stable, for example, knowing the state at which the control is applied is important.
Reimplemented from ompl::control::ControlSampler.
virtual void ompl::control::CompoundControlSampler::sample | ( | Control * | control | ) | [virtual] |
Sample a control. All other control sampling functions default to this one, unless a user-specified implementation is given.
Implements ompl::control::ControlSampler.
virtual void ompl::control::CompoundControlSampler::sampleNext | ( | Control * | control, | |
const Control * | , | |||
const base::State * | ||||
) | [virtual] |
Sample a control, given the previously applied control and that it is applied to a specific state. The default implementation calls the first definition of sample(). This is the function planners typically call. If implementations that require information about the state or about the previous control are provided, this function should be reimplemented as well, to call those functions. Providing an implementation that takes into account both the previous control and the state is also possible.
Reimplemented from ompl::control::ControlSampler.
virtual void ompl::control::CompoundControlSampler::sampleNext | ( | Control * | control, | |
const Control * | ||||
) | [virtual] |
Sample a control, given the previously applied control. The default implementation calls the first definition of sample(). For some systems it is possible that large changes in controls are not desirable. For example, switching from maximum acceleration to maximum deceleration is not desirable when driving a car.
Reimplemented from ompl::control::ControlSampler.
unsigned int ompl::control::CompoundControlSampler::samplerCount_ [private] |
Number of sampler instances.
Definition at line 170 of file ControlSampler.h.
std::vector<ControlSamplerPtr> ompl::control::CompoundControlSampler::samplers_ [protected] |
The instances of samplers used for compound sampler.
Definition at line 165 of file ControlSampler.h.