![]() |
ROOT 6.14/05 Reference Guide |
#include <ROOT/RAdoptAllocator.hxx>
#include <ROOT/TypeTraits.hxx>
#include <algorithm>
#include <cmath>
#include <numeric>
#include <sstream>
#include <stdexcept>
#include <vector>
#include <utility>
Classes | |
struct | ROOT::VecOps::PromoteTypeImpl< T > |
struct | ROOT::VecOps::PromoteTypeImpl< T > |
struct | ROOT::VecOps::PromoteTypeImpl< double > |
struct | ROOT::VecOps::PromoteTypeImpl< float > |
struct | ROOT::VecOps::PromoteTypeImpl< long double > |
class | ROOT::VecOps::RVec< T > |
A "std::vector"-like collection of values implementing handy operation to analyse them. More... | |
Namespaces | |
ROOT | |
Namespace for new ROOT classes and functions. | |
ROOT::VecOps | |
Macros | |
#define | _VECOPS_USE_EXTERN_TEMPLATES true |
RVec Unary Arithmetic Operators | |
#define | TVEC_UNARY_OPERATOR(OP) |
RVec Binary Arithmetic Operators | |
#define | ERROR_MESSAGE(OP) "Cannot call operator " #OP " on vectors of different sizes." |
#define | TVEC_BINARY_OPERATOR(OP) |
RVec Assignment Arithmetic Operators | |
#define | TVEC_ASSIGNMENT_OPERATOR(OP) |
RVec Comparison and Logical Operators | |
#define | TVEC_LOGICAL_OPERATOR(OP) |
Functions | |
template<typename T , typename V > | |
auto | ROOT::VecOps::Dot (const RVec< T > &v0, const RVec< V > &v1) -> decltype(v0[0] *v1[0]) |
Inner product. More... | |
template<typename T , typename F > | |
RVec< T > | ROOT::VecOps::Filter (const RVec< T > &v, F &&f) |
Create a new collection with the elements passing the filter expressed by the predicate. More... | |
template<typename T , typename F > | |
auto | ROOT::VecOps::Map (const RVec< T > &v, F &&f) -> RVec< decltype(f(v[0]))> |
Create new collection applying a callable to the elements of the input collection. More... | |
template<typename T > | |
double | ROOT::VecOps::Mean (const RVec< T > &v) |
Get Mean. More... | |
template<class T > | |
std::ostream & | ROOT::VecOps::operator<< (std::ostream &os, const RVec< T > &v) |
Print a RVec at the prompt: More... | |
template<typename T > | |
double | ROOT::VecOps::StdDev (const RVec< T > &v) |
Get standard deviation. More... | |
template<typename T > | |
T | ROOT::VecOps::Sum (const RVec< T > &v) |
Sum elements. More... | |
template<typename T > | |
void | ROOT::VecOps::swap (RVec< T > &lhs, RVec< T > &rhs) |
template<typename T > | |
double | ROOT::VecOps::Var (const RVec< T > &v) |
Get variance. More... | |
RVec Standard Mathematical Functions | |
#define | TVEC_UNARY_FUNCTION(NAME, FUNC) |
#define | TVEC_BINARY_FUNCTION(NAME, FUNC) |
#define | TVEC_STD_UNARY_FUNCTION(F) TVEC_UNARY_FUNCTION(F, std::F) |
#define | TVEC_STD_BINARY_FUNCTION(F) TVEC_BINARY_FUNCTION(F, std::F) |
template<typename T > | |
using | ROOT::VecOps::PromoteType = typename PromoteTypeImpl< T >::Type |
template<typename U , typename V > | |
using | ROOT::VecOps::PromoteTypes = decltype(PromoteType< U >()+PromoteType< V >()) |
#define ERROR_MESSAGE | ( | OP | ) | "Cannot call operator " #OP " on vectors of different sizes." |
#define TVEC_ASSIGNMENT_OPERATOR | ( | OP | ) |
#define TVEC_BINARY_FUNCTION | ( | NAME, | |
FUNC | |||
) |
#define TVEC_STD_BINARY_FUNCTION | ( | F | ) | TVEC_BINARY_FUNCTION(F, std::F) |
#define TVEC_STD_UNARY_FUNCTION | ( | F | ) | TVEC_UNARY_FUNCTION(F, std::F) |
#define TVEC_UNARY_FUNCTION | ( | NAME, | |
FUNC | |||
) |