Project
Loading...
Searching...
No Matches
o2::soa::Join< Ts > Struct Template Reference

#include <ASoA.h>

Inherits o2::soa::Table< o2::aod::Hash<"JOIN"_h >, o2::aod::Hash<"JOIN/0"_h >, o2::aod::Hash<"JOIN"_h >, Ts... >.

Public Types

using base = Table< o2::aod::Hash<"JOIN"_h >, o2::aod::Hash<"JOIN/0"_h >, o2::aod::Hash<"JOIN"_h >, Ts... >
 
using self_t = Join< Ts... >
 
using table_t = base
 
using columns_t = typename table_t::columns_t
 
using persistent_columns_t = typename table_t::persistent_columns_t
 
using iterator = table_t::template iterator_template< DefaultIndexPolicy, self_t, Ts... >
 
using const_iterator = iterator
 
using unfiltered_iterator = iterator
 
using unfiltered_const_iterator = const_iterator
 
using filtered_iterator = table_t::template iterator_template< FilteredIndexPolicy, self_t, Ts... >
 
using filtered_const_iterator = filtered_iterator
 
- Public Types inherited from o2::soa::Table< o2::aod::Hash<"JOIN"_h >, o2::aod::Hash<"JOIN/0"_h >, o2::aod::Hash<"JOIN"_h >, Ts... >
using self_t = Table< L, D, O, Ts... >
 
using table_t = self_t
 
using columns_t = decltype(getColumns< ref, Ts... >())
 
using persistent_columns_t = decltype([]< typename... C >(framework::pack< C... > &&) -> framework::selected_pack< soa::is_persistent_column_t, C... > {}(columns_t{}))
 
using column_types = decltype([]< typename... C >(framework::pack< C... >) -> framework::pack< typename C::type... > {}(persistent_columns_t{}))
 
using external_index_columns_t = decltype([]< typename... C >(framework::pack< C... > &&) -> framework::selected_pack< soa::is_external_index_t, C... > {}(columns_t{}))
 
using internal_index_columns_t = decltype([]< typename... C >(framework::pack< C... > &&) -> framework::selected_pack< soa::is_self_index_t, C... > {}(columns_t{}))
 
using base_iterator = decltype(base_iter< D, O, IP >(columns_t{}))
 
using iterator_template = TableIteratorBase< IP, Parent, T... >
 
using iterator_template_o = decltype([]() { if constexpr(sizeof...(Ts)==0) { return iterator_template< IP, Parent >{}
 
using iterator = iterator_template_o< DefaultIndexPolicy, table_t >
 
using filtered_iterator = iterator_template_o< FilteredIndexPolicy, table_t >
 
using unfiltered_iterator = iterator
 
using const_iterator = iterator
 
using unfiltered_const_iterator = unfiltered_iterator
 

Public Member Functions

 Join (std::vector< ArrowTableRef > &&tables)
 
template<typename... TA>
void bindExternalIndices (TA *... current)
 
iterator begin ()
 
const_iterator begin () const
 
auto sliceByCached (framework::expressions::BindingNode const &node, int value, o2::framework::SliceCache &cache) const
 
auto sliceByCachedUnsorted (framework::expressions::BindingNode const &node, int value, o2::framework::SliceCache &cache) const
 
template<typename T1 , typename Policy , bool OPT>
auto sliceBy (o2::framework::PresliceBase< T1, Policy, OPT > const &container, int value) const
 
iterator rawIteratorAt (uint64_t i) const
 
iterator iteratorAt (uint64_t i) const
 
auto rawSlice (uint64_t start, uint64_t end) const
 
auto emptySlice () const
 
- Public Member Functions inherited from o2::soa::Table< o2::aod::Hash<"JOIN"_h >, o2::aod::Hash<"JOIN/0"_h >, o2::aod::Hash<"JOIN"_h >, Ts... >
 Table (o2::soa::ArrowTableRef tableRef)
 
 Table (std::shared_ptr< arrow::Table > table)
 
 Table (std::vector< o2::soa::ArrowTableRef > &&tables)
 
 Table (std::vector< o2::soa::ArrowTableRef > &&tables)
 
 Table (std::vector< std::shared_ptr< arrow::Table > > &&tables)
 
 Table (std::vector< std::shared_ptr< arrow::Table > > &&tables)
 
arrow::ChunkedArray * getIndexToKey ()
 
auto & cached_begin ()
 
auto const & cached_begin () const
 
unfiltered_iterator begin ()
 
unfiltered_const_iterator begin () const
 
RowViewSentinel end ()
 
RowViewSentinel end () const
 
filtered_iterator filtered_begin (std::span< int64_t const > selection)
 
iterator iteratorAt (uint64_t i) const
 
unfiltered_iterator rawIteratorAt (uint64_t i) const
 
std::shared_ptr< arrow::Table > asArrowTable () const
 Return a type erased arrow table backing store for / the type safe table.
 
std::shared_ptr< arrow::Table > asArrowTableConstrained () const
 
ArrowTableRef asArrowTableRef () const
 
auto offset () const
 Return offset.
 
int64_t size () const
 Size of the table, in rows.
 
int64_t tableSize () const
 
void bindExternalIndices (TA *... current)
 
void bindExternalIndex (TA *current)
 
void bindInternalIndicesTo (I const *ptr)
 
void bindInternalIndicesExplicit (o2::soa::Binding binding)
 
void doBindInternalIndicesExplicit (framework::pack< Cs... >, o2::soa::Binding binding)
 
void bindExternalIndicesRaw (std::vector< o2::soa::Binding > &&ptrs)
 
void doCopyIndexBindings (framework::pack< Cs... >, T &dest) const
 
void copyIndexBindings (T &dest) const
 
auto select (framework::expressions::Filter const &f) const
 
auto sliceByCached (framework::expressions::BindingNode const &node, int value, o2::framework::SliceCache &cache) const
 
auto sliceByCachedUnsorted (framework::expressions::BindingNode const &node, int value, o2::framework::SliceCache &cache) const
 
auto sliceBy (o2::framework::PresliceBase< T1, Policy, OPT > const &container, int value) const
 
auto rawSlice (uint64_t start, uint64_t end) const
 
auto emptySlice () const
 

Static Public Member Functions

static constexpr void isJoin ()
 
template<typename T >
static consteval bool contains ()
 
- Static Public Member Functions inherited from o2::soa::Table< o2::aod::Hash<"JOIN"_h >, o2::aod::Hash<"JOIN/0"_h >, o2::aod::Hash<"JOIN"_h >, Ts... >
static constexpr void isSOATable ()
 
static consteval auto isIndexTargetOf ()
 
static consteval auto isIndexTargetOf ()
 
static consteval auto isIndexTargetOf ()
 
static consteval bool hasOriginal ()
 
static constexpr auto hashes ()
 

Static Public Attributes

static constexpr const uint32_t binding_origin = base::binding_origin
 
static constexpr const header::DataOrigin binding_origin_ = base::binding_origin_
 
static constexpr const auto originals = base::originals
 
static constexpr const auto originalLabels = base::originalLabels
 
- Static Public Attributes inherited from o2::soa::Table< o2::aod::Hash<"JOIN"_h >, o2::aod::Hash<"JOIN/0"_h >, o2::aod::Hash<"JOIN"_h >, Ts... >
static constexpr const auto ref
 
static constexpr const auto originals
 
static constexpr const auto originalLabels
 
static constexpr const uint32_t binding_origin
 
static constexpr header::DataOrigin binding_origin_
 

Additional Inherited Members

- Public Attributes inherited from o2::soa::Table< o2::aod::Hash<"JOIN"_h >, o2::aod::Hash<"JOIN/0"_h >, o2::aod::Hash<"JOIN"_h >, Ts... >
 else
 

Detailed Description

template<typename... Ts>
struct o2::soa::Join< Ts >

Definition at line 3413 of file ASoA.h.

Member Typedef Documentation

◆ base

template<typename... Ts>
using o2::soa::Join< Ts >::base = Table<o2::aod::Hash<"JOIN"_h>, o2::aod::Hash<"JOIN/0"_h>, o2::aod::Hash<"JOIN"_h>, Ts...>

Definition at line 3415 of file ASoA.h.

◆ columns_t

template<typename... Ts>
using o2::soa::Join< Ts >::columns_t = typename table_t::columns_t

Definition at line 3445 of file ASoA.h.

◆ const_iterator

template<typename... Ts>
using o2::soa::Join< Ts >::const_iterator = iterator

Definition at line 3448 of file ASoA.h.

◆ filtered_const_iterator

template<typename... Ts>
using o2::soa::Join< Ts >::filtered_const_iterator = filtered_iterator

Definition at line 3452 of file ASoA.h.

◆ filtered_iterator

template<typename... Ts>
using o2::soa::Join< Ts >::filtered_iterator = table_t::template iterator_template<FilteredIndexPolicy, self_t, Ts...>

Definition at line 3451 of file ASoA.h.

◆ iterator

template<typename... Ts>
using o2::soa::Join< Ts >::iterator = table_t::template iterator_template<DefaultIndexPolicy, self_t, Ts...>

Definition at line 3447 of file ASoA.h.

◆ persistent_columns_t

template<typename... Ts>
using o2::soa::Join< Ts >::persistent_columns_t = typename table_t::persistent_columns_t

Definition at line 3446 of file ASoA.h.

◆ self_t

template<typename... Ts>
using o2::soa::Join< Ts >::self_t = Join<Ts...>

Definition at line 3441 of file ASoA.h.

◆ table_t

template<typename... Ts>
using o2::soa::Join< Ts >::table_t = base

Definition at line 3442 of file ASoA.h.

◆ unfiltered_const_iterator

template<typename... Ts>
using o2::soa::Join< Ts >::unfiltered_const_iterator = const_iterator

Definition at line 3450 of file ASoA.h.

◆ unfiltered_iterator

template<typename... Ts>
using o2::soa::Join< Ts >::unfiltered_iterator = iterator

Definition at line 3449 of file ASoA.h.

Constructor & Destructor Documentation

◆ Join()

template<typename... Ts>
o2::soa::Join< Ts >::Join ( std::vector< ArrowTableRef > &&  tables)
inline

Definition at line 3417 of file ASoA.h.

Member Function Documentation

◆ begin() [1/2]

template<typename... Ts>
iterator o2::soa::Join< Ts >::begin ( )
inline

Definition at line 3454 of file ASoA.h.

◆ begin() [2/2]

template<typename... Ts>
const_iterator o2::soa::Join< Ts >::begin ( ) const
inline

Definition at line 3459 of file ASoA.h.

◆ bindExternalIndices()

template<typename... Ts>
template<typename... TA>
void o2::soa::Join< Ts >::bindExternalIndices ( TA *...  current)
inline

Definition at line 3431 of file ASoA.h.

◆ contains()

template<typename... Ts>
template<typename T >
static consteval bool o2::soa::Join< Ts >::contains ( )
inlinestatic

Definition at line 3503 of file ASoA.h.

◆ emptySlice()

template<typename... Ts>
auto o2::soa::Join< Ts >::emptySlice ( ) const
inline

Definition at line 3497 of file ASoA.h.

◆ isJoin()

template<typename... Ts>
static constexpr void o2::soa::Join< Ts >::isJoin ( )
inlinestaticconstexpr

Definition at line 3414 of file ASoA.h.

◆ iteratorAt()

template<typename... Ts>
iterator o2::soa::Join< Ts >::iteratorAt ( uint64_t  i) const
inline

Definition at line 3487 of file ASoA.h.

◆ rawIteratorAt()

template<typename... Ts>
iterator o2::soa::Join< Ts >::rawIteratorAt ( uint64_t  i) const
inline

Definition at line 3480 of file ASoA.h.

◆ rawSlice()

template<typename... Ts>
auto o2::soa::Join< Ts >::rawSlice ( uint64_t  start,
uint64_t  end 
) const
inline

Definition at line 3492 of file ASoA.h.

◆ sliceBy()

template<typename... Ts>
template<typename T1 , typename Policy , bool OPT>
auto o2::soa::Join< Ts >::sliceBy ( o2::framework::PresliceBase< T1, Policy, OPT > const &  container,
int  value 
) const
inline

Definition at line 3475 of file ASoA.h.

◆ sliceByCached()

template<typename... Ts>
auto o2::soa::Join< Ts >::sliceByCached ( framework::expressions::BindingNode const &  node,
int  value,
o2::framework::SliceCache cache 
) const
inline

Definition at line 3464 of file ASoA.h.

◆ sliceByCachedUnsorted()

template<typename... Ts>
auto o2::soa::Join< Ts >::sliceByCachedUnsorted ( framework::expressions::BindingNode const &  node,
int  value,
o2::framework::SliceCache cache 
) const
inline

Definition at line 3469 of file ASoA.h.

Member Data Documentation

◆ binding_origin

template<typename... Ts>
constexpr const uint32_t o2::soa::Join< Ts >::binding_origin = base::binding_origin
staticconstexpr

Definition at line 3427 of file ASoA.h.

◆ binding_origin_

template<typename... Ts>
constexpr const header::DataOrigin o2::soa::Join< Ts >::binding_origin_ = base::binding_origin_
staticconstexpr

Definition at line 3428 of file ASoA.h.

◆ originalLabels

template<typename... Ts>
constexpr const auto o2::soa::Join< Ts >::originalLabels = base::originalLabels
staticconstexpr

Definition at line 3444 of file ASoA.h.

◆ originals

template<typename... Ts>
constexpr const auto o2::soa::Join< Ts >::originals = base::originals
staticconstexpr

Definition at line 3443 of file ASoA.h.


The documentation for this struct was generated from the following file: