This class models a binary relation through the elements of any given set. More...
#include <mrpt/math/CBinaryRelation.h>

Public Types | |
| typedef U(* | SimpleFunctionByReturnValue )(T, T) |
| Simple function type, used to initialize chunks of the matrix. | |
| typedef U(* | FunctionByReturnValue )(const T &, const T &) |
| Function type which obtains the relation value by a return value. | |
| typedef void(* | FunctionByReferencePass )(const T &, const T &, U &) |
| Function type which obtains the relation value by reference pass. | |
| typedef std::set< T > ::const_iterator | const_iterator |
| Constant iterator through the set elements. | |
| typedef std::set< T > ::const_reverse_iterator | const_reverse_iterator |
| Constant reverse iterator through the set elements. | |
| typedef CMatrixRowAccessor< U > | AccessorForFirstElement |
| Accessor type to every value related to any element A, i.e., f(A,x). | |
| typedef CMatrixColumnAccessor< U > | AccessorForSecondElement |
| Accessor type to every value related to any element B, i.e., f(x,B). | |
| typedef CConstMatrixRowAccessor< U > | ConstAccessorForFirstElement |
| Const accessor type to every value related to any element A, i.e., f(A,x). | |
| typedef CConstMatrixColumnAccessor< U > | ConstAccessorForSecondElement |
| Const accessor type to every value related to any element B, i.e., f(x,B). | |
Public Member Functions | |
| CBinaryRelation (const std::set< T > &els) | |
| Default constructor, doesn't initialize the relation. | |
| template<typename FunctionType > | |
| CBinaryRelation (const std::set< T > &els, FunctionType fun) | |
| Constructor which initializes the relation using a given function. | |
| template<typename FunctionType > | |
| void | initializeWith (FunctionType fun) |
| Initialize the whole relation with a given function. | |
| template<typename FunctionType > | |
| void | initializeSymmetricallyWith (FunctionType fun) |
| Initialize the whole relation with a given function, assuming that the relation is symmetrical. | |
| void | setRelationValue (size_t e1, size_t e2, const U &newVal) |
| Manually set a relationship value, given the indices. | |
| const U & | getRelationValue (size_t e1, size_t e2) const |
| Get a relation value, given the indices. | |
| const U & | operator() (size_t e1, size_t e2) const |
| U & | getRelationValue (size_t e1, size_t e2) |
| Get a reference to a relation value given its indices, which allows both querying and setting the value. | |
| U & | operator() (size_t e1, size_t e2) |
| bool | setRelationValue (const T &t1, const T &t2, const U &newVal) |
| Manually set a relationship value, given the elements. | |
| U | getRelationValue (const T &t1, const T &t2) const |
| Get a relation value, given the elements. | |
| U & | getRelationValue (const T &t1, const T &t2) |
| Get a reference to a relation value given the elements, which allows both querying and setting. | |
| const_iterator | begin () const |
| Gets an iterator to the starting point of the elements set. | |
| const_iterator | end () const |
| Gets an iterator to the ending point of the elements set. | |
| const_reverse_iterator | rbegin () const |
| Gets a reverse iterator to the ending point of the elements set. | |
| const_reverse_iterator | rend () const |
| Gets a reverse iterator to the starting point of the elements set. | |
| T | operator[] (size_t i) const |
| Operator for direct access to a element given its index. | |
| AccessorForFirstElement | getRelationFrom (size_t i) |
| Gets an accessor for every value related to an element A given its index, i.e., every f(A,x). | |
| ConstAccessorForFirstElement | getRelationFrom (size_t i) const |
| Gets a constant accessor for every value related to an element A given its index, i.e., every f(A,x). | |
| AccessorForSecondElement | getRelationTo (size_t i) |
| Gets an accessor for every value related to an element B given its index, i.e., every f(x,B). | |
| ConstAccessorForSecondElement | getRelationTo (size_t i) const |
| Gets a constant accessor for every value related to an element B given its index, i.e., every f(x,B). | |
| AccessorForFirstElement | getRelationFrom (const T &t) |
| Gets an iterable accessor for every value related to an element A, i.e., every f(A,x). | |
| ConstAccessorForFirstElement | getRelationFrom (const T &t) const |
| Gets an iterable constant accessor for every value related to an element A, i.e., every f(A,x). | |
| void | getRelationFrom (size_t i, vector< U > &vec) |
| void | getRelationFrom (const T &t, vector< U > &vec) |
| AccessorForSecondElement | getRelationTo (const T &t) |
| Gets an iterable accessor for every value related to an element B, i.e., every f(x,B). | |
| ConstAccessorForSecondElement | getRelationTo (const T &t) const |
| Gets an iterable constant accessor for every value related to an alement B, i.e., every f(x,B). | |
| void | getRelationTo (size_t i, vector< U > &vec) |
| void | getRelationTo (const T &t, vector< U > &vec) |
| void | removeElementAt (size_t i) |
| Removes an element at a concrete position. | |
| bool | removeElement (const T &el) |
| Removes an element. | |
| size_t | removeElements (const set< T > &vals) |
| Removes a set of elements. | |
| void | removeElementsAt (const set< size_t > &poss) |
| std::pair< bool, size_t > | insertElement (const T &el) |
| Inserts an element. | |
| template<typename FunctionType > | |
| std::pair< bool, size_t > | insertElement (const T &el, FunctionType fun) |
| Inserts an element and initializes its relationship values, even if it was already present. | |
| size_t | insertElements (const std::set< T > &els) |
| Inserts a set of elements into the relation. | |
| template<typename FunctionType > | |
| size_t | insertElements (const std::set< T > &els, FunctionType fun) |
| Inserts a set of elements into the relation, initializing the actual relation with a given function. | |
| void | setElements (const std::set< T > &newEls) |
| Completely resets the relation, using a new set of elements. | |
| size_t | size () const |
| Returns the amount of elements present in the relation. | |
Private Types | |
| typedef detail::MatrixWrapper < U, UIsObject >::MatrixType | MatrixType |
| Matrix type used to store the actual relation. | |
Private Member Functions | |
| template<typename FunctionType > | |
| void | applyFunction (FunctionType fun, size_t e1, size_t e2, const T &T1, const T &T2) |
| Template used to make the function interface independent from the function type. | |
Private Attributes | |
| std::set< T > | elements |
| Actual set of elements. | |
| MatrixType | relation |
| Matrix storing the relation. | |
This class models a binary relation through the elements of any given set.
I.e. for each pair of elements (A,B) it assigns two values, f(A,B) and f(B,A). This class is useful when calling the base function is costly, since it acts like a proxy. It's also useful if the relationship values do not correspond with the return value of a function. Although it theoretically supports objects with non-trivial constructors or destructors (indicated by specifying "true" as the thrid parameter of the template instantiation), certain operations will cause memory leaks and may even cause undefined behaviour, so it's reccomended to use only basic types for the parameter U. The parameter T may be any complex object, however, like a smart pointer.
Definition at line 70 of file CBinaryRelation.h.
| typedef CMatrixRowAccessor<U> mrpt::math::CBinaryRelation< T, U, UIsObject >::AccessorForFirstElement |
Accessor type to every value related to any element A, i.e., f(A,x).
Definition at line 81 of file CBinaryRelation.h.
| typedef CMatrixColumnAccessor<U> mrpt::math::CBinaryRelation< T, U, UIsObject >::AccessorForSecondElement |
Accessor type to every value related to any element B, i.e., f(x,B).
Definition at line 82 of file CBinaryRelation.h.
| typedef std::set<T>::const_iterator mrpt::math::CBinaryRelation< T, U, UIsObject >::const_iterator |
Constant iterator through the set elements.
Definition at line 79 of file CBinaryRelation.h.
| typedef std::set<T>::const_reverse_iterator mrpt::math::CBinaryRelation< T, U, UIsObject >::const_reverse_iterator |
Constant reverse iterator through the set elements.
Definition at line 80 of file CBinaryRelation.h.
| typedef CConstMatrixRowAccessor<U> mrpt::math::CBinaryRelation< T, U, UIsObject >::ConstAccessorForFirstElement |
Const accessor type to every value related to any element A, i.e., f(A,x).
Definition at line 83 of file CBinaryRelation.h.
| typedef CConstMatrixColumnAccessor<U> mrpt::math::CBinaryRelation< T, U, UIsObject >::ConstAccessorForSecondElement |
Const accessor type to every value related to any element B, i.e., f(x,B).
Definition at line 84 of file CBinaryRelation.h.
| typedef void(* mrpt::math::CBinaryRelation< T, U, UIsObject >::FunctionByReferencePass)(const T &, const T &, U &) |
Function type which obtains the relation value by reference pass.
Definition at line 78 of file CBinaryRelation.h.
| typedef U(* mrpt::math::CBinaryRelation< T, U, UIsObject >::FunctionByReturnValue)(const T &, const T &) |
Function type which obtains the relation value by a return value.
Definition at line 77 of file CBinaryRelation.h.
typedef detail::MatrixWrapper<U,UIsObject>::MatrixType mrpt::math::CBinaryRelation< T, U, UIsObject >::MatrixType [private] |
Matrix type used to store the actual relation.
Definition at line 74 of file CBinaryRelation.h.
| typedef U(* mrpt::math::CBinaryRelation< T, U, UIsObject >::SimpleFunctionByReturnValue)(T, T) |
Simple function type, used to initialize chunks of the matrix.
Definition at line 76 of file CBinaryRelation.h.
| mrpt::math::CBinaryRelation< T, U, UIsObject >::CBinaryRelation | ( | const std::set< T > & | els | ) | [inline, explicit] |
Default constructor, doesn't initialize the relation.
Definition at line 101 of file CBinaryRelation.h.
| mrpt::math::CBinaryRelation< T, U, UIsObject >::CBinaryRelation | ( | const std::set< T > & | els, | |
| FunctionType | fun | |||
| ) | [inline] |
Constructor which initializes the relation using a given function.
Definition at line 105 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::initializeWith().
| void mrpt::math::CBinaryRelation< T, U, UIsObject >::applyFunction | ( | FunctionType | fun, | |
| size_t | e1, | |||
| size_t | e2, | |||
| const T & | T1, | |||
| const T & | T2 | |||
| ) | [inline, private] |
Template used to make the function interface independent from the function type.
(wrapper for the global method - needed to make this compile under GCC).
Definition at line 93 of file CBinaryRelation.h.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::initializeSymmetricallyWith(), mrpt::math::CBinaryRelation< T, U, UIsObject >::initializeWith(), mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElement(), and mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElements().
| const_iterator mrpt::math::CBinaryRelation< T, U, UIsObject >::begin | ( | ) | const [inline] |
Gets an iterator to the starting point of the elements set.
Definition at line 189 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::elements.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElements().
| const_iterator mrpt::math::CBinaryRelation< T, U, UIsObject >::end | ( | ) | const [inline] |
Gets an iterator to the ending point of the elements set.
Definition at line 195 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::elements.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElements().
| void mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationFrom | ( | const T & | t, | |
| vector< U > & | vec | |||
| ) | [inline] |
Definition at line 269 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationFrom().
| void mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationFrom | ( | size_t | i, | |
| vector< U > & | vec | |||
| ) | [inline] |
| ConstAccessorForFirstElement mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationFrom | ( | const T & | t | ) | const [inline] |
Gets an iterable constant accessor for every value related to an element A, i.e., every f(A,x).
A domain_error will be thrown if the element is not present.
Definition at line 256 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationFrom().
| AccessorForFirstElement mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationFrom | ( | const T & | t | ) | [inline] |
Gets an iterable accessor for every value related to an element A, i.e., every f(A,x).
A domain_error will be thrown if the element is not present.
Definition at line 246 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationFrom().
| ConstAccessorForFirstElement mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationFrom | ( | size_t | i | ) | const [inline] |
Gets a constant accessor for every value related to an element A given its index, i.e., every f(A,x).
This accessor is iterable.
Definition at line 228 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
| AccessorForFirstElement mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationFrom | ( | size_t | i | ) | [inline] |
Gets an accessor for every value related to an element A given its index, i.e., every f(A,x).
This accessor is iterable.
Definition at line 222 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationFrom().
| void mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationTo | ( | const T & | t, | |
| vector< U > & | vec | |||
| ) | [inline] |
Definition at line 301 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationTo().
| void mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationTo | ( | size_t | i, | |
| vector< U > & | vec | |||
| ) | [inline] |
| ConstAccessorForSecondElement mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationTo | ( | const T & | t | ) | const [inline] |
Gets an iterable constant accessor for every value related to an alement B, i.e., every f(x,B).
A domain_error will be thrown if the element is not present.
Definition at line 288 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationTo().
| AccessorForSecondElement mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationTo | ( | const T & | t | ) | [inline] |
Gets an iterable accessor for every value related to an element B, i.e., every f(x,B).
A domain_error will be thrown if the element is not present.
Definition at line 278 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationTo().
| ConstAccessorForSecondElement mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationTo | ( | size_t | i | ) | const [inline] |
Gets a constant accessor for every value related to an element B given its index, i.e., every f(x,B).
This accessor is fully iterable.
Definition at line 240 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
| AccessorForSecondElement mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationTo | ( | size_t | i | ) | [inline] |
Gets an accessor for every value related to an element B given its index, i.e., every f(x,B).
This accessor is iterable.
Definition at line 234 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationTo().
| U& mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationValue | ( | const T & | t1, | |
| const T & | t2 | |||
| ) | [inline] |
Get a reference to a relation value given the elements, which allows both querying and setting.
Throws domain_error if any of the elements is not present.
Definition at line 180 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationValue().
| U mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationValue | ( | const T & | t1, | |
| const T & | t2 | |||
| ) | const [inline] |
Get a relation value, given the elements.
Throws domain_error if any of the elements is not present.
Definition at line 170 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationValue().
| U& mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationValue | ( | size_t | e1, | |
| size_t | e2 | |||
| ) | [inline] |
Get a reference to a relation value given its indices, which allows both querying and setting the value.
Definition at line 151 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
| const U& mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationValue | ( | size_t | e1, | |
| size_t | e2 | |||
| ) | const [inline] |
Get a relation value, given the indices.
Definition at line 142 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
Referenced by mrpt::math::detail::applyFunction(), mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationValue(), and mrpt::math::CBinaryRelation< T, U, UIsObject >::operator()().
| void mrpt::math::CBinaryRelation< T, U, UIsObject >::initializeSymmetricallyWith | ( | FunctionType | fun | ) | [inline] |
Initialize the whole relation with a given function, assuming that the relation is symmetrical.
Definition at line 121 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::applyFunction(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
| void mrpt::math::CBinaryRelation< T, U, UIsObject >::initializeWith | ( | FunctionType | fun | ) | [inline] |
Initialize the whole relation with a given function.
Definition at line 111 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::applyFunction(), and mrpt::math::CBinaryRelation< T, U, UIsObject >::elements.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::CBinaryRelation().
| std::pair<bool,size_t> mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElement | ( | const T & | el, | |
| FunctionType | fun | |||
| ) | [inline] |
Inserts an element and initializes its relationship values, even if it was already present.
Definition at line 372 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::applyFunction(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElement(), and mrpt::math::CBinaryRelation< T, U, UIsObject >::operator[]().
| std::pair<bool,size_t> mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElement | ( | const T & | el | ) | [inline] |
Inserts an element.
If the element was present, returns false and its current position. If it wasn't, returns true and the position in which it was inserted.
Definition at line 359 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElement().
| size_t mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElements | ( | const std::set< T > & | els, | |
| FunctionType | fun | |||
| ) | [inline] |
Inserts a set of elements into the relation, initializing the actual relation with a given function.
Definition at line 411 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::applyFunction(), mrpt::math::CBinaryRelation< T, U, UIsObject >::begin(), mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, mrpt::math::CBinaryRelation< T, U, UIsObject >::end(), mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElements(), and mrpt::math::CBinaryRelation< T, U, UIsObject >::operator[]().
| size_t mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElements | ( | const std::set< T > & | els | ) | [inline] |
Inserts a set of elements into the relation.
Does not initialize the actual relation.
Definition at line 385 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElements().
| U& mrpt::math::CBinaryRelation< T, U, UIsObject >::operator() | ( | size_t | e1, | |
| size_t | e2 | |||
| ) | [inline] |
Definition at line 154 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationValue().
| const U& mrpt::math::CBinaryRelation< T, U, UIsObject >::operator() | ( | size_t | e1, | |
| size_t | e2 | |||
| ) | const [inline] |
Definition at line 145 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationValue().
| T mrpt::math::CBinaryRelation< T, U, UIsObject >::operator[] | ( | size_t | i | ) | const [inline] |
Operator for direct access to a element given its index.
Definition at line 213 of file CBinaryRelation.h.
References ASSERT_, and mrpt::math::CBinaryRelation< T, U, UIsObject >::elements.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElement(), and mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElements().
| const_reverse_iterator mrpt::math::CBinaryRelation< T, U, UIsObject >::rbegin | ( | ) | const [inline] |
Gets a reverse iterator to the ending point of the elements set.
Definition at line 201 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::elements.
| bool mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElement | ( | const T & | el | ) | [inline] |
Removes an element.
Returns false if the element was not present and thus could'nt be eliminated.
Definition at line 322 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElementAt().
| void mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElementAt | ( | size_t | i | ) | [inline] |
Removes an element at a concrete position.
Definition at line 310 of file CBinaryRelation.h.
References ASSERT_, mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElement().
| size_t mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElements | ( | const set< T > & | vals | ) | [inline] |
Removes a set of elements.
Returns the number of elements which were actually erased.
Definition at line 332 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElementsAt().
| void mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElementsAt | ( | const set< size_t > & | poss | ) | [inline] |
Definition at line 347 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElements().
| const_reverse_iterator mrpt::math::CBinaryRelation< T, U, UIsObject >::rend | ( | ) | const [inline] |
Gets a reverse iterator to the starting point of the elements set.
Definition at line 207 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::elements.
| void mrpt::math::CBinaryRelation< T, U, UIsObject >::setElements | ( | const std::set< T > & | newEls | ) | [inline] |
Completely resets the relation, using a new set of elements.
Does not initialize the relation.
Definition at line 441 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
| bool mrpt::math::CBinaryRelation< T, U, UIsObject >::setRelationValue | ( | const T & | t1, | |
| const T & | t2, | |||
| const U & | newVal | |||
| ) | [inline] |
Manually set a relationship value, given the elements.
Returns false if any of the elements is not present.
Definition at line 160 of file CBinaryRelation.h.
References mrpt::math::distance(), mrpt::math::CBinaryRelation< T, U, UIsObject >::elements, and mrpt::math::CBinaryRelation< T, U, UIsObject >::setRelationValue().
| void mrpt::math::CBinaryRelation< T, U, UIsObject >::setRelationValue | ( | size_t | e1, | |
| size_t | e2, | |||
| const U & | newVal | |||
| ) | [inline] |
Manually set a relationship value, given the indices.
Definition at line 136 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::relation.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::setRelationValue().
| size_t mrpt::math::CBinaryRelation< T, U, UIsObject >::size | ( | ) | const [inline] |
Returns the amount of elements present in the relation.
Definition at line 449 of file CBinaryRelation.h.
References mrpt::math::CBinaryRelation< T, U, UIsObject >::elements.
std::set<T> mrpt::math::CBinaryRelation< T, U, UIsObject >::elements [private] |
Actual set of elements.
Definition at line 86 of file CBinaryRelation.h.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::begin(), mrpt::math::CBinaryRelation< T, U, UIsObject >::end(), mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationFrom(), mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationTo(), mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationValue(), mrpt::math::CBinaryRelation< T, U, UIsObject >::initializeSymmetricallyWith(), mrpt::math::CBinaryRelation< T, U, UIsObject >::initializeWith(), mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElement(), mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElements(), mrpt::math::CBinaryRelation< T, U, UIsObject >::operator[](), mrpt::math::CBinaryRelation< T, U, UIsObject >::rbegin(), mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElement(), mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElementAt(), mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElements(), mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElementsAt(), mrpt::math::CBinaryRelation< T, U, UIsObject >::rend(), mrpt::math::CBinaryRelation< T, U, UIsObject >::setElements(), mrpt::math::CBinaryRelation< T, U, UIsObject >::setRelationValue(), and mrpt::math::CBinaryRelation< T, U, UIsObject >::size().
MatrixType mrpt::math::CBinaryRelation< T, U, UIsObject >::relation [private] |
Matrix storing the relation.
Definition at line 87 of file CBinaryRelation.h.
Referenced by mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationFrom(), mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationTo(), mrpt::math::CBinaryRelation< T, U, UIsObject >::getRelationValue(), mrpt::math::CBinaryRelation< T, U, UIsObject >::initializeSymmetricallyWith(), mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElement(), mrpt::math::CBinaryRelation< T, U, UIsObject >::insertElements(), mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElementAt(), mrpt::math::CBinaryRelation< T, U, UIsObject >::removeElementsAt(), mrpt::math::CBinaryRelation< T, U, UIsObject >::setElements(), and mrpt::math::CBinaryRelation< T, U, UIsObject >::setRelationValue().
| Page generated by Doxygen 1.6.1 for MRPT 0.9.0 SVN: at Mon Jun 7 06:47:58 UTC 2010 |