|
template<class InputIt , class OutputIt , class Pred , class Fct > |
void | Base::transform_if (InputIt first, InputIt last, OutputIt dest, Pred pred, Fct transform) |
|
template<class Cont , class OutputIt , class Pred , class Fct > |
void | Base::transform_if (Cont container, OutputIt dest, Pred pred, Fct transform) |
|
template<typename Container , typename OutputIt , typename BinaryFunction > |
void | Base::transform (Container container, OutputIt out, BinaryFunction function) |
|
template<typename Container , typename T , typename BinaryFunction > |
T | Base::accumulate (Container container, T init, BinaryFunction function) |
|
template<typename To , template< typename... > class Cont, typename FromPtr > |
const Cont< To * > & | Base::castToBaseContainer (const Cont< FromPtr > &v) |
|
template<typename To , template< typename... > class Cont, typename FromPtr > |
Cont< To * > & | Base::castToBaseContainer (Cont< FromPtr > &v) |
|
template<typename Val , typename Cont > |
bool | Base::allSubtype (const Cont &cont) |
|
template<typename BaseClass , template< typename... > class Cont, typename... Derivates> |
bool | Base::isAnyDerivedFrom (const Cont< BaseClass * > &container) |
| Tests if at least one element of the container is a subclass (dynamic castable) of at least one of the Derivates. E.g. we have a vector<Element*> elems and we want to know if any of the elements is a subclass of either one of those: App::CrossSectionElement, App::CrossPlaneElement, App::ElevationElement. We tests is like this: isAnyDerivedFrom<App::Element,vector,App::CrossSectionElement, App::CrossPlaneElement, App::ElevationElement>(elems). There is a couple of specializations in App/ContainerTool.h for more call convenience. More...
|
|