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

#include <AnalysisHelpers.h>

Public Types

using obj_t = T
 

Public Member Functions

 OutputObj (T &&t, OutputObjHandlingPolicy policy_=OutputObjHandlingPolicy::AnalysisObject, OutputObjSourceType sourceType_=OutputObjSourceType::OutputObjSource)
 
 OutputObj (std::string const &label_, OutputObjHandlingPolicy policy_=OutputObjHandlingPolicy::AnalysisObject, OutputObjSourceType sourceType_=OutputObjSourceType::OutputObjSource)
 
void setObject (T const &t)
 
void setObject (T &&t)
 
void setObject (T *t)
 
void setObject (std::shared_ptr< T > t)
 
void setHash (uint32_t hash)
 
OutputSpec const spec ()
 
T * operator-> ()
 
T & operator* ()
 
OutputRef ref (uint16_t index, uint16_t max)
 

Public Attributes

std::shared_ptr< T > object
 
std::string label
 
OutputObjHandlingPolicy policy
 
OutputObjSourceType sourceType
 
uint32_t mTaskHash
 
InputSpec spec
 
bool isdangling
 

Detailed Description

template<typename T>
struct o2::framework::OutputObj< T >

a task with rewritten origin, if running together with a task with the default, will have a different name and thus its output would be routed separately This helper class allows you to declare things which will be created by a given analysis task. Currently wrapped objects are limited to be TNamed descendants. Objects will be written to a ROOT file at the end of the workflow, in directories, corresponding to the task they were declared in. Each object has associated handling policy, which is used by the framework to determine the target file, e.g. analysis result, QA or control histogram, etc.

Definition at line 872 of file AnalysisHelpers.h.

Member Typedef Documentation

◆ obj_t

template<typename T >
using o2::framework::OutputObj< T >::obj_t = T

Definition at line 873 of file AnalysisHelpers.h.

Constructor & Destructor Documentation

◆ OutputObj() [1/2]

template<typename T >
o2::framework::OutputObj< T >::OutputObj ( T &&  t,
OutputObjHandlingPolicy  policy_ = OutputObjHandlingPolicy::AnalysisObject,
OutputObjSourceType  sourceType_ = OutputObjSourceType::OutputObjSource 
)
inline

Definition at line 875 of file AnalysisHelpers.h.

◆ OutputObj() [2/2]

template<typename T >
o2::framework::OutputObj< T >::OutputObj ( std::string const &  label_,
OutputObjHandlingPolicy  policy_ = OutputObjHandlingPolicy::AnalysisObject,
OutputObjSourceType  sourceType_ = OutputObjSourceType::OutputObjSource 
)
inline

Definition at line 884 of file AnalysisHelpers.h.

Member Function Documentation

◆ operator*()

template<typename T >
T & o2::framework::OutputObj< T >::operator* ( )
inline

Definition at line 941 of file AnalysisHelpers.h.

◆ operator->()

template<typename T >
T * o2::framework::OutputObj< T >::operator-> ( )
inline

Definition at line 936 of file AnalysisHelpers.h.

◆ ref()

template<typename T >
OutputRef o2::framework::OutputObj< T >::ref ( uint16_t  index,
uint16_t  max 
)
inline

Definition at line 946 of file AnalysisHelpers.h.

◆ setHash()

template<typename T >
void o2::framework::OutputObj< T >::setHash ( uint32_t  hash)
inline

Definition at line 917 of file AnalysisHelpers.h.

◆ setObject() [1/4]

template<typename T >
void o2::framework::OutputObj< T >::setObject ( std::shared_ptr< T >  t)
inline

Definition at line 911 of file AnalysisHelpers.h.

◆ setObject() [2/4]

template<typename T >
void o2::framework::OutputObj< T >::setObject ( T &&  t)
inline

Definition at line 899 of file AnalysisHelpers.h.

◆ setObject() [3/4]

template<typename T >
void o2::framework::OutputObj< T >::setObject ( T *  t)
inline

Definition at line 905 of file AnalysisHelpers.h.

◆ setObject() [4/4]

template<typename T >
void o2::framework::OutputObj< T >::setObject ( T const &  t)
inline

Definition at line 893 of file AnalysisHelpers.h.

◆ spec()

template<typename T >
OutputSpec const o2::framework::OutputObj< T >::spec ( )
inline
Returns
the associated OutputSpec

Definition at line 923 of file AnalysisHelpers.h.

Member Data Documentation

◆ isdangling

template<typename T >
bool o2::framework::OutputObj< T >::isdangling

Definition at line 148 of file WorkflowHelpers.h.

◆ label

template<typename T >
std::string o2::framework::OutputObj< T >::label

Definition at line 953 of file AnalysisHelpers.h.

◆ mTaskHash

template<typename T >
uint32_t o2::framework::OutputObj< T >::mTaskHash

Definition at line 956 of file AnalysisHelpers.h.

◆ object

template<typename T >
std::shared_ptr<T> o2::framework::OutputObj< T >::object

Definition at line 952 of file AnalysisHelpers.h.

◆ policy

template<typename T >
OutputObjHandlingPolicy o2::framework::OutputObj< T >::policy

Definition at line 954 of file AnalysisHelpers.h.

◆ sourceType

template<typename T >
OutputObjSourceType o2::framework::OutputObj< T >::sourceType

Definition at line 955 of file AnalysisHelpers.h.

◆ spec

template<typename T >
InputSpec o2::framework::OutputObj< T >::spec

Definition at line 147 of file WorkflowHelpers.h.


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