Go to the documentation of this file.
19 template <
typename Container>
21 template <
typename Container>
27 template <
typename Signature,
typename Traits_,
bool isLegacy>
30 template <
typename Out,
typename In,
typename Traits_>
34 static_assert( std::is_base_of_v<Algorithm, base_class>,
"BaseClass must inherit from Algorithm" );
46 if ( std::is_pointer_v<In> ) {
50 [](
auto&
h ) { h.setOptional( true ); } );
58 details::make_vector_of_handles<decltype( this->m_outputs )>( this, m_outputLocations );
59 if constexpr ( details::is_optional_v<Out> ) {
62 std::for_each( this->m_outputs.begin(), this->m_outputs.end(),
63 []( auto& h ) { h.setOptional( true ); } );
84 auto out = ( *this )( std::as_const( ins ) );
85 if (
out.size() != m_outputs.size() ) {
105 template <
typename T>
111 template <
typename T>
120 template <
typename Signature,
typename Traits_ = Traits::useDefaults>
PropertyBase base class allowing PropertyBase* collections to be "homogeneous".
T back_inserter(T... args)
void reserve(size_type size)
std::vector< DataObjID > to_DataObjID(const std::vector< std::string > &in)
details::template vector_of_const_< Container > vector_of_
Gaudi::tagged_bool< class ImmediatelyInvokeHandler_tag > ImmediatelyInvokeHandler
virtual const std::string & message() const
error message to be printed
Handles make_vector_of_handles(IDataHandleHolder *owner, const std::vector< DataObjID > &init)
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
virtual const StatusCode & code() const
StatusCode for Exception.
Gaudi::cpp17::detected_or_t< Base, detail2::BaseClass_t, Tr > BaseClass_t
constexpr static const auto FAILURE
Gaudi::cpp17::detected_or_t< DataObjectWriteHandle< T >, detail2::OutputHandle_t, Tr, T > OutputHandle_t
Implementation of property with value of concrete type.
auto put(const DataObjectHandle< Out1 > &out_handle, Out2 &&out)