Project
Loading...
Searching...
No Matches
o2::framework::WritingCursor< T > Struct Template Reference

#include <AnalysisHelpers.h>

Inherited by o2::framework::Produces< aod::FooBars >, o2::framework::Produces< aod::Timestamps >, o2::framework::Produces< aod::Points >, o2::framework::Produces< o2::aod::SkimmedExampleTrack >, o2::framework::Produces< Collisions >, o2::framework::Produces< Particles >, o2::framework::Produces< XSections >, o2::framework::Produces< PdfInfos >, o2::framework::Produces< HeavyIons >, and o2::framework::Produces< T >.

Public Types

using persistent_table_t = decltype([]() { if constexpr(soa::is_iterator< T >) { return typename T::parent_t{nullptr}
 
using cursor_t = decltype(std::declval< TableBuilder >().cursor< persistent_table_t >())
 

Public Member Functions

template<typename... Ts>
requires (sizeof...(Ts) == framework::pack_size(typename persistent_table_t::persistent_columns_t{}))
void operator() (Ts &&... args)
 
int64_t lastIndex ()
 Last index inserted in the table.
 
bool resetCursor (LifetimeHolder< TableBuilder > builder)
 
void setLabel (const char *label)
 
void reserve (int64_t size)
 
void release ()
 

Static Public Member Functions

static OutputSpec updateOutputSpec (header::DataOrigin const &newOrigin=header::DataOrigin{"AOD"})
 

Public Attributes

 else { return T{nullptr}
 
OutputSpec outputSpec {soa::tableRef2OutputSpec<persistent_table_t::ref>()}
 
decltype(FFL(std::declval< cursor_t >())) cursor
 

Detailed Description

template<is_producable T>
struct o2::framework::WritingCursor< T >

Definition at line 502 of file AnalysisHelpers.h.

Member Typedef Documentation

◆ cursor_t

template<is_producable T>
using o2::framework::WritingCursor< T >::cursor_t = decltype(std::declval<TableBuilder>().cursor<persistent_table_t>())

Definition at line 505 of file AnalysisHelpers.h.

◆ persistent_table_t

template<is_producable T>
using o2::framework::WritingCursor< T >::persistent_table_t = decltype([]() { if constexpr (soa::is_iterator<T>) { return typename T::parent_t{nullptr}

Definition at line 504 of file AnalysisHelpers.h.

Member Function Documentation

◆ lastIndex()

template<is_producable T>
int64_t o2::framework::WritingCursor< T >::lastIndex ( )
inline

Last index inserted in the table.

Definition at line 521 of file AnalysisHelpers.h.

◆ operator()()

template<is_producable T>
template<typename... Ts>
requires (sizeof...(Ts) == framework::pack_size(typename persistent_table_t::persistent_columns_t{}))
void o2::framework::WritingCursor< T >::operator() ( Ts &&...  args)
inline

Definition at line 513 of file AnalysisHelpers.h.

◆ release()

template<is_producable T>
void o2::framework::WritingCursor< T >::release ( )
inline

Definition at line 553 of file AnalysisHelpers.h.

◆ reserve()

template<is_producable T>
void o2::framework::WritingCursor< T >::reserve ( int64_t  size)
inline

reserve size rows when filling, so that we do not spend time reallocating the buffers. Switches the internal cursor to UnsafeAppend (no capacity check), which is safe because we just reserved enough space.

Definition at line 546 of file AnalysisHelpers.h.

◆ resetCursor()

template<is_producable T>
bool o2::framework::WritingCursor< T >::resetCursor ( LifetimeHolder< TableBuilder builder)
inline

Definition at line 526 of file AnalysisHelpers.h.

◆ setLabel()

template<is_producable T>
void o2::framework::WritingCursor< T >::setLabel ( const char label)
inline

Definition at line 537 of file AnalysisHelpers.h.

◆ updateOutputSpec()

template<is_producable T>
static OutputSpec o2::framework::WritingCursor< T >::updateOutputSpec ( header::DataOrigin const &  newOrigin = header::DataOrigin{"AOD"})
inlinestatic

Definition at line 507 of file AnalysisHelpers.h.

Member Data Documentation

◆ cursor

template<is_producable T>
decltype(FFL(std::declval<cursor_t>())) o2::framework::WritingCursor< T >::cursor

Definition at line 571 of file AnalysisHelpers.h.

◆ else

template<is_producable T>
o2::framework::WritingCursor< T >::else { return T{nullptr}

Definition at line 504 of file AnalysisHelpers.h.

◆ outputSpec

template<is_producable T>
OutputSpec o2::framework::WritingCursor< T >::outputSpec {soa::tableRef2OutputSpec<persistent_table_t::ref>()}

Definition at line 506 of file AnalysisHelpers.h.


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