Vector.hh File Reference
#include <boost/range/algorithm/find.hpp>
#include <boost/range/algorithm/min_element.hpp>
#include <boost/range/algorithm_ext/push_back.hpp>
#include <boost/range/algorithm/transform.hpp>
#include <boost/range/adaptors.hpp>
Include dependency graph for Vector.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  boca::function_traits< Function_ >
 
struct  boca::function_traits< Result_(Class_::*)(Arguments_...) const >
 
struct  boca::function_traits< Result_(Class_::*)(Arguments_...) const >::arg< number >
 

Namespaces

 boca
 Boosted Collider Analysis.
 

Functions

template<typename Input_ , typename Function_ >
auto boca::Transform (Input_ const &inputs, Function_ function)
 
template<typename Result_ , typename Input_ , typename Function_ >
std::vector< Result_ > boca::TransformIf (Input_ const &inputs, Function_ const &function_1, Function_ const &function_2)
 
template<typename Elements_ , typename Function_ >
std::vector< Elements_ > boca::CopyIf (std::vector< Elements_ > const &inputs, Function_ function)
 
template<typename Element_ >
std::size_t boca::Position (std::vector< Element_ > const &vector, Element_ const &element)
 
template<typename Element_ , unsigned long size_>
std::size_t boca::Position (std::array< Element_, size_ > const &array, Element_ const &element)
 
template<typename Element_ >
bool boca::FindInVector (const std::vector< Element_ > vector, const Element_ element)
 
template<typename Multiplet_1_ , typename Multiplet_2_ >
Multiplet_1_ boca::ClosestJet (std::vector< Multiplet_1_ > const &multiplets, Multiplet_2_ const &multiplet)
 
template<typename Element_ >
std::vector< Element_ > boca::Combine (std::vector< Element_ > const &vector_1, std::vector< Element_ > const &vector_2)
 Combine two std::vector. More...
 
template<typename Element_ >
std::vector< Element_ > boca::Combine (std::vector< Element_ > const &vector_1, std::vector< Element_ > const &vector_2, std::vector< Element_ > const &vector_3)
 Combine three std::vector. More...
 
template<typename Element_ >
void boca::Insert (std::vector< Element_ > &vector_1, std::vector< Element_ > const &vector_2)
 Insert two std::vector. More...
 
template<typename Element_ >
void boca::Insert (std::vector< Element_ > &vector_1, std::vector< Element_ > const &vector_2, std::vector< Element_ > const &vector_3)
 Insert three std::vector. More...
 
template<typename Element_ , typename Function , typename Result = typename std::result_of<Function&(Element_, Element_)>::type>
auto boca::OrderedPairs (std::vector< Element_ > const &container, Function function)
 forms all \((n^2 - n)\) ordered pairs of vector elements, applies to them the function and returns a vector of its results More...
 
template<typename Element_ , typename Function_ , typename Result_ = typename std::result_of<Function_&(Element_, Element_)>::type>
auto boca::UnorderedPairs (std::vector< Element_ > const &container, Function_ function)
 forms all \((n^2 - n) / 2\) unordered pairs, applies to them the function and returns a vector of its results More...
 
template<typename Element_1_ , typename Element_2_ , typename Function_ , typename Result_ = typename std::result_of<Function_&(Element_1_, Element_2_)>::type>
auto boca::Pairs (std::vector< Element_1_ > const &container_1, std::vector< Element_2_ > const &container_2, Function_ function)
 forms all \(n \times m\) pairs of the elements in the two containers, applies the function and returns a vector of its elements More...
 
template<typename Element_1_ , typename Element_2_ , typename Function_ , typename Result_ = typename std::result_of<Function_&(Element_1_, Element_1_, Element_2_)>::type>
auto boca::Triples (std::vector< Element_1_ > const &container_1, std::vector< Element_2_ > const &container_2, Function_ function)
 forms all \((n^2 - n) / 2 \times m\) triples, applies to them the function and returns a vector of its results More...
 
template<typename Element_1_ , typename Element_2_ , typename Element_3_ , typename Function_ , typename Result_ = typename std::result_of<Function_&(Element_1_, Element_2_, Element_3_)>::type>
auto boca::Triples (std::vector< Element_1_ > const &container_1, std::vector< Element_2_ > const &container_2, std::vector< Element_3_ > const &container_3, Function_ function)
 forms all \((n^2 - n) / 2 \times m\) triples, applies to them the function and returns a vector of its results More...
 
template<typename Element_1_ , typename Element_2_ , typename Element_3_ , typename Function_1_ , typename Function_2_ , typename Result_1_ = typename std::result_of<Function_1_&(Element_1_, Element_2_)>::type, typename Result_2_ = typename std::result_of<Function_2_&(Result_1_, Element_3_)>::type>
auto boca::Triples (std::vector< Element_1_ > const &container_1, std::vector< Element_2_ > const &container_2, std::vector< Element_3_ > const &container_3, Function_1_ function_1, Function_2_ function_2)
 forms all \((n^2 - n) / 2 \times m\) triples, applies to them the function and returns a vector of its results More...