32 std::deque<mrpt::containers::deepcopy_poly_ptr<CAction::Ptr>>
m_actions;
44 std::deque<mrpt::containers::deepcopy_poly_ptr<CAction::Ptr>>
::iterator;
117 const CAction&
get(
size_t index)
const;
128 template <
typename T>
132 size_t foundCount = 0;
134 &T::GetRuntimeClassIdStatic();
135 for (
const auto& it : *
this)
136 if (it->GetRuntimeClass()->derivedFrom(class_ID))
137 if (foundCount++ == ith)
138 return std::dynamic_pointer_cast<T>(it.get_ptr());
139 return typename T::Ptr();
iterator begin()
Returns a iterator to the first action: this is an example of usage:
bool getFirstMovementEstimationMean(mrpt::poses::CPose3D &out_pose_increment) const
Look for the first 2D or 3D "odometry" found in this collection of actions, and return the "mean" inc...
Wrapper to a std::shared_ptr<>, adding deep-copy semantics to copy ctor and copy operator, suitable for polymorphic classes with a clone() method.
const_iterator end() const
Returns a iterator pointing to the end of the list: this is an example of usage:
A structure that holds runtime class type information.
CActionRobotMovement2D::Ptr getMovementEstimationByType(CActionRobotMovement2D::TEstimationMethod method)
Returns the pose increment estimator in the collection having the specified type. ...
void eraseByIndex(size_t index)
Remove an action from the list by its index.
Declares a class for storing a collection of robot actions.
std::deque< mrpt::containers::deepcopy_poly_ptr< CAction::Ptr > >::iterator iterator
You can use CActionCollection::begin to get a iterator to the first element.
CActionRobotMovement2D::Ptr getBestMovementEstimation() const
Returns the best pose increment estimator in the collection, based on the determinant of its pose cha...
std::deque< mrpt::containers::deepcopy_poly_ptr< CAction::Ptr > > m_actions
The robot "actionss".
void clear()
Erase all actions from the list.
This namespace contains representation of robot actions and observations.
TEstimationMethod
A list of posible ways for estimating the content of a CActionRobotMovement2D object.
iterator erase(const iterator &it)
Removes the given action in the list, and return an iterator to the next element (or this->end() if i...
T::Ptr getActionByClass(size_t ith=0) const
Access to the i'th action of a given class, or a nullptr smart pointer if there is no action of that ...
Declares a class for storing a robot action.
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
iterator end()
Returns a iterator pointing to the end of the list: this is an example of usage:
The virtual base class which provides a unified interface for all persistent objects in MRPT...
Declares a class that represents a Probability Density function (PDF) of a 3D pose ...
size_t size()
Returns the actions count in the collection.
CActionCollection()=default
ctor
#define DEFINE_SERIALIZABLE(class_name, NS)
This declaration must be inserted in all CSerializable classes definition, within the class declarati...
std::deque< mrpt::containers::deepcopy_poly_ptr< CAction::Ptr > >::const_iterator const_iterator
You can use CActionCollection::begin to get a iterator to the first element.
const_iterator begin() const
Returns a iterator to the first action: this is an example of usage:
bool getFirstMovementEstimation(mrpt::poses::CPose3DPDFGaussian &out_pose_increment) const
Look for the first 2D or 3D "odometry" found in this collection of actions, and return the "mean" inc...
void insert(CAction &action)
Add a new object to the list.