Project
Loading...
Searching...
No Matches
o2::framework::RootSerializedObject< T > Class Template Reference

#include <RootMessageContext.h>

Inherits o2::framework::MessageContext::ContextObject.

Public Types

using value_type = T
 

Public Member Functions

 RootSerializedObject ()=delete
 default constructor forbidden, object alwasy has to control messages
 
template<typename ContextType , typename... Args>
 RootSerializedObject (ContextType *context, fair::mq::MessagePtr &&headerMsg, RouteIndex routeIndex, Args &&... args)
 constructor taking header message by move and creating the object from variadic argument list
 
 ~RootSerializedObject () override=default
 
fair::mq::Parts finalize () final
 Finalize object and return parts by move This retrieves the actual message from the vector object and moves it to the parts.
 
 operator value_type & ()
 
value_typeget ()
 
- Public Member Functions inherited from o2::framework::MessageContext::ContextObject
 ContextObject ()=delete
 
 ContextObject (fair::mq::MessagePtr &&headerMsg, fair::mq::MessagePtr &&payloadMsg, RouteIndex routeIndex)
 
 ContextObject (fair::mq::MessagePtr &&headerMsg, RouteIndex routeIndex)
 
virtual ~ContextObject ()=default
 
RouteIndex route () const
 return the channel name
 
bool empty () const
 
o2::header::DataHeader const * header ()
 
o2::framework::DataProcessingHeader const * dataProcessingHeader ()
 
o2::header::Stack const * headerStack ()
 

Additional Inherited Members

- Protected Attributes inherited from o2::framework::MessageContext::ContextObject
fair::mq::Parts mParts
 
RouteIndex mRouteIndex {-1}
 

Detailed Description

template<typename T>
class o2::framework::RootSerializedObject< T >

RootSerializedObject keeps ownership to an object which can be Root-serialized TODO: this should maybe be a separate header file to avoid including TMessageSerializer in this header file, but we can always change this without affecting to much code.

Definition at line 50 of file RootMessageContext.h.

Member Typedef Documentation

◆ value_type

template<typename T >
using o2::framework::RootSerializedObject< T >::value_type = T

Definition at line 57 of file RootMessageContext.h.

Constructor & Destructor Documentation

◆ RootSerializedObject() [1/2]

template<typename T >
o2::framework::RootSerializedObject< T >::RootSerializedObject ( )
delete

default constructor forbidden, object alwasy has to control messages

◆ RootSerializedObject() [2/2]

template<typename T >
template<typename ContextType , typename... Args>
o2::framework::RootSerializedObject< T >::RootSerializedObject ( ContextType *  context,
fair::mq::MessagePtr &&  headerMsg,
RouteIndex  routeIndex,
Args &&...  args 
)
inline

constructor taking header message by move and creating the object from variadic argument list

Definition at line 62 of file RootMessageContext.h.

◆ ~RootSerializedObject()

template<typename T >
o2::framework::RootSerializedObject< T >::~RootSerializedObject ( )
overridedefault

Member Function Documentation

◆ finalize()

template<typename T >
fair::mq::Parts o2::framework::RootSerializedObject< T >::finalize ( )
inlinefinalvirtual

Finalize object and return parts by move This retrieves the actual message from the vector object and moves it to the parts.

Reimplemented from o2::framework::MessageContext::ContextObject.

Definition at line 72 of file RootMessageContext.h.

◆ get()

template<typename T >
value_type & o2::framework::RootSerializedObject< T >::get ( )
inline

Definition at line 88 of file RootMessageContext.h.

◆ operator value_type &()

template<typename T >
o2::framework::RootSerializedObject< T >::operator value_type & ( )
inline

Definition at line 83 of file RootMessageContext.h.


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