Logo ROOT  
Reference Guide
No Matches
RTensor.hxx File Reference
#include <vector>
#include <cstddef>
#include <stdexcept>
#include <sstream>
#include <memory>
#include <type_traits>
#include <algorithm>
#include <iterator>
Include dependency graph for RTensor.hxx:
This graph shows which files directly or indirectly include this file:


struct  TMVA::Experimental::Internal::and_types< Ts >
 Type checking for all types of a parameter pack, e.g., used in combination with std::is_convertible. More...
struct  TMVA::Experimental::Internal::and_types< T0, Ts... >
class  TMVA::Experimental::RTensor< V, C >::Iterator
class  TMVA::Experimental::RTensor< V, C >
 RTensor is a container with contiguous memory and shape information. More...


namespace  TMVA
 create variable transformations
namespace  TMVA::Experimental
namespace  TMVA::Experimental::Internal


enum class  TMVA::Experimental::MemoryLayout : uint8_t { TMVA::Experimental::RowMajor = 0x01 , TMVA::Experimental::ColumnMajor = 0x02 , TMVA::Experimental::RowMajor = 0x01 , TMVA::Experimental::ColumnMajor = 0x02 }
 Memory layout type. More...


template<typename U , typename V >
std::size_t TMVA::Experimental::Internal::ComputeGlobalIndex (const U &strides, const V &idx)
 Compute global index from indices.
template<typename T >
TMVA::Experimental::Internal::ComputeIndicesFromGlobalIndex (const T &shape, MemoryLayout layout, const typename T::value_type idx)
 Compute indices from global index.
template<typename T >
std::vector< std::size_t > TMVA::Experimental::Internal::ComputeStridesFromShape (const T &shape, MemoryLayout layout)
 Compute strides from shape vector.
template<typename T >
std::size_t TMVA::Experimental::Internal::GetSizeFromShape (const T &shape)
 Get size of tensor from shape vector.
template<typename T >
std::ostream & TMVA::Experimental::operator<< (std::ostream &os, RTensor< T > &x)
 Pretty printing.
template<typename T >
void TMVA::Experimental::Internal::RecursiveCopy (const T &here, T &there, const std::vector< std::size_t > &mins, const std::vector< std::size_t > &maxs, std::vector< std::size_t > idx, std::size_t active)
 Copy slice of a tensor recursively from here to there.